From d522ff1c081b9cbfad82d12903156c507476e9f4 Mon Sep 17 00:00:00 2001 From: Michael Lyons Date: Thu, 14 Mar 2024 13:28:30 -0400 Subject: [PATCH 1/2] =?UTF-8?q?chore:=20=F0=9F=A4=96=20fix=20release=20act?= =?UTF-8?q?ion?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Don't try to push to NPM since we aren't a javascript project --- .github/workflows/release.yml | 10 ++++------ .releaserc | 11 +++++++++++ 2 files changed, 15 insertions(+), 6 deletions(-) create mode 100644 .releaserc diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index d163035..9863170 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -1,4 +1,4 @@ -name: Build and Release +name: Release on: push: @@ -14,8 +14,8 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 - - uses: actions/setup-node@v3 + - uses: actions/checkout@v4 + - uses: actions/setup-node@v4 with: node-version: 20 @@ -23,6 +23,4 @@ jobs: - name: Release env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - run: | - yarn add @semantic-release/github --dev - npx semantic-release + - run: npx semantic-release diff --git a/.releaserc b/.releaserc new file mode 100644 index 0000000..b7e154b --- /dev/null +++ b/.releaserc @@ -0,0 +1,11 @@ +branches: + - master + - name: alpha + prerelease: true +debug: true +ci: true +dryRun: false +plugins: + - "@semantic-release/commit-analyzer" + - "@semantic-release/release-notes-generator" + - "@semantic-release/github" From 82aad5c8ff7c3a9f3aa4e728b25838b257e16f07 Mon Sep 17 00:00:00 2001 From: Michael Lyons Date: Tue, 19 Mar 2024 12:32:21 -0400 Subject: [PATCH 2/2] =?UTF-8?q?docs:=20=E2=9C=8F=EF=B8=8F=20doc=20format?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 70 +++++++++++++++++++++++++++---------------------------- 1 file changed, 35 insertions(+), 35 deletions(-) diff --git a/README.md b/README.md index 25c0dbf..629e4b9 100644 --- a/README.md +++ b/README.md @@ -4,60 +4,60 @@ Sometimes AWS fails to release an allocated IP address when tearing down the ass An exception is made for ENIs attached to DataSync tasks since DataSync only establishes ENIs at task creation time. -This includes a 24 hour cloudwatch alarm to trigger the lambda regularly in an effort to keep the account clean and make the resources available for another consumer. +This includes a 24 hour cloudwatch alarm to trigger the lambda regularly in an effort to keep the account clean and make the resources available for another consumer. ## Requirements -| Name | Version | -|------|---------| -| [terraform](#requirement\_terraform) | >= 0.14 | -| [archive](#requirement\_archive) | ~> 2.2 | -| [aws](#requirement\_aws) | > 4.0 | -| [random](#requirement\_random) | >= 3.1.0 | +| Name | Version | +| ------------------------------------------------------------------------- | -------- | +| [terraform](#requirement\_terraform) | >= 0.14 | +| [archive](#requirement\_archive) | ~> 2.2 | +| [aws](#requirement\_aws) | > 4.0 | +| [random](#requirement\_random) | >= 3.1.0 | ## Providers -| Name | Version | -|------|---------| -| [archive](#provider\_archive) | ~> 2.2 | -| [aws](#provider\_aws) | > 4.0 | +| Name | Version | +| ------------------------------------------------------------- | ------- | +| [archive](#provider\_archive) | ~> 2.2 | +| [aws](#provider\_aws) | > 4.0 | ## Modules -| Name | Source | Version | -|------|--------|---------| -| [iam](#module\_iam) | ./iam | n/a | +| Name | Source | Version | +| --------------------------------------------- | ------ | ------- | +| [iam](#module\_iam) | ./iam | n/a | ## Resources -| Name | Type | -|------|------| -| [aws_cloudwatch_event_rule.ip_address_release_lambda_interval](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/cloudwatch_event_rule) | resource | -| [aws_cloudwatch_event_target.ip_address_release_lambda_attach](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/cloudwatch_event_target) | resource | -| [aws_lambda_function.ip_address_release_lambda](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lambda_function) | resource | -| [aws_lambda_permission.event_permission](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lambda_permission) | resource | -| [archive_file.lambda_source](https://registry.terraform.io/providers/hashicorp/archive/latest/docs/data-sources/file) | data source | +| Name | Type | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------- | +| [aws_cloudwatch_event_rule.ip_address_release_lambda_interval](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/cloudwatch_event_rule) | resource | +| [aws_cloudwatch_event_target.ip_address_release_lambda_attach](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/cloudwatch_event_target) | resource | +| [aws_lambda_function.ip_address_release_lambda](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lambda_function) | resource | +| [aws_lambda_permission.event_permission](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lambda_permission) | resource | +| [archive_file.lambda_source](https://registry.terraform.io/providers/hashicorp/archive/latest/docs/data-sources/file) | data source | ## Inputs -| Name | Description | Type | Default | Required | -|------|-------------|------|---------|:--------:| -| [account\_name](#input\_account\_name) | The account name for use in alarm description. | `string` | n/a | yes | -| [iam\_role\_arn](#input\_iam\_role\_arn) | The ARN of the IAM Role to use (creates a new one if set to `null`) | `string` | `null` | no | -| [internet\_egress\_security\_group\_id](#input\_internet\_egress\_security\_group\_id) | security group id that allows internet outbound calls to port 443 | `string` | n/a | yes | -| [kms\_key\_arn](#input\_kms\_key\_arn) | ARN of the key to give to Lambda for access | `string` | n/a | yes | -| [lambda\_runtime](#input\_lambda\_runtime) | Python runtime to use for this lambda | `string` | `"python3.9"` | no | -| [permissions\_boundary\_arn](#input\_permissions\_boundary\_arn) | The ARN of the policy that is used to set the permissions boundary for the IAM roles. | `string` | `null` | no | -| [prefix](#input\_prefix) | prefix name, can be a team or product name. E.g., 'SRE' | `string` | n/a | yes | -| [subnet\_ids](#input\_subnet\_ids) | Subnets that Lambda will be created with in the VPC | `list(string)` | n/a | yes | -| [timeout](#input\_timeout) | Timeout value for the lambda | `number` | `300` | no | -| [vpc\_id](#input\_vpc\_id) | VPC ID to attach the IP Address Release lambda to. | `string` | n/a | yes | +| Name | Description | Type | Default | Required | +| --------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | -------------- | ------------- | :------: | +| [account\_name](#input\_account\_name) | The account name for use in alarm description. | `string` | n/a | yes | +| [iam\_role\_arn](#input\_iam\_role\_arn) | The ARN of the IAM Role to use (creates a new one if set to `null`) | `string` | `null` | no | +| [internet\_egress\_security\_group\_id](#input\_internet\_egress\_security\_group\_id) | security group id that allows internet outbound calls to port 443 | `string` | n/a | yes | +| [kms\_key\_arn](#input\_kms\_key\_arn) | ARN of the key to give to Lambda for access | `string` | n/a | yes | +| [lambda\_runtime](#input\_lambda\_runtime) | Python runtime to use for this lambda | `string` | `"python3.9"` | no | +| [permissions\_boundary\_arn](#input\_permissions\_boundary\_arn) | The ARN of the policy that is used to set the permissions boundary for the IAM roles. | `string` | `null` | no | +| [prefix](#input\_prefix) | prefix name, can be a team or product name. E.g., 'SRE' | `string` | n/a | yes | +| [subnet\_ids](#input\_subnet\_ids) | Subnets that Lambda will be created with in the VPC | `list(string)` | n/a | yes | +| [timeout](#input\_timeout) | Timeout value for the lambda | `number` | `300` | no | +| [vpc\_id](#input\_vpc\_id) | VPC ID to attach the IP Address Release lambda to. | `string` | n/a | yes | ## Outputs -| Name | Description | -|------|-------------| +| Name | Description | +| ---------------------------------------------------------------------------- | ------------------------------------------- | | [iam\_role\_arn](#output\_iam\_role\_arn) | The IAM Role created, or the one passed in. |