From 96f7d899c4e4f897156ac422f0b29a3ccab0a87c Mon Sep 17 00:00:00 2001 From: Simon Thulbourn Date: Wed, 11 Jun 2025 09:05:21 +0000 Subject: [PATCH 1/4] fix(ci): add audience param to aws-action/configure-aws-credentials --- .github/workflows/layers_partition_verify.yml | 4 ++++ .github/workflows/layers_partitions.yml | 4 ++++ 2 files changed, 8 insertions(+) diff --git a/.github/workflows/layers_partition_verify.yml b/.github/workflows/layers_partition_verify.yml index f258c9490..dac9da885 100644 --- a/.github/workflows/layers_partition_verify.yml +++ b/.github/workflows/layers_partition_verify.yml @@ -52,6 +52,7 @@ jobs: outputs: regions: ${{ format('{0}{1}', steps.regions_china.outputs.regions, steps.regions_govcloud.outputs.regions) }} parition: ${{ format('{0}{1}', steps.regions_china.outputs.partition, steps.regions_govcloud.outputs.parition) }} + aud: ${{ format('{0}{1}', steps.regions_china.outputs.aud, steps.regions_govcloud.outputs.aud) }} steps: - id: regions_china name: Parition (China) @@ -59,12 +60,14 @@ jobs: run: | echo regions='["cn-north-1", "cn-northwest-1"]'>> "$GITHUB_OUTPUT" echo partition='aws-cn'>> "$GITHUB_OUTPUT" + echo aud='sts.amazonaws.com.cn'>> "$GITHUB_OUTPUT" - id: regions_govcloud name: Partition (GovCloud) if: ${{ inputs.partition == 'GovCloud' }} run: | echo regions='["us-gov-east-1", "us-gov-west-1"]'>> "$GITHUB_OUTPUT" echo partition='aws-us-gov'>> "$GITHUB_OUTPUT" + echo aud='sts.amazonaws.com'>> "$GITHUB_OUTPUT" commercial: runs-on: ubuntu-latest permissions: @@ -118,6 +121,7 @@ jobs: role-to-assume: ${{ secrets[format('IAM_ROLE_{0}', steps.transform.outputs.CONVERTED_REGION)] }} aws-region: ${{ matrix.region}} mask-aws-account-id: true + audience: ${{ needs.setup.outputs.aud }} - id: partition_version name: Partition Layer Version run: | diff --git a/.github/workflows/layers_partitions.yml b/.github/workflows/layers_partitions.yml index e4860062b..151702be7 100644 --- a/.github/workflows/layers_partitions.yml +++ b/.github/workflows/layers_partitions.yml @@ -49,6 +49,7 @@ jobs: outputs: regions: ${{ format('{0}{1}', steps.regions_china.outputs.regions, steps.regions_govcloud.outputs.regions) }} parition: ${{ format('{0}{1}', steps.regions_china.outputs.partition, steps.regions_govcloud.outputs.parition) }} + aud: ${{ format('{0}{1}', steps.regions_china.outputs.aud, steps.regions_govcloud.outputs.aud) }} steps: - id: regions_china name: Parition (China) @@ -56,12 +57,14 @@ jobs: run: | echo regions='["cn-north-1", "cn-northwest-1"]'>> "$GITHUB_OUTPUT" echo partition='aws-cn'>> "$GITHUB_OUTPUT" + echo aud='sts.amazonaws.com.cn'>> "$GITHUB_OUTPUT" - id: regions_govcloud name: Partition (GovCloud) if: ${{ inputs.partition == 'GovCloud' }} run: | echo regions='["us-gov-east-1", "us-gov-west-1"]'>> "$GITHUB_OUTPUT" echo partition='aws-us-gov'>> "$GITHUB_OUTPUT" + echo aud='sts.amazonaws.com'>> "$GITHUB_OUTPUT" download: runs-on: ubuntu-latest permissions: @@ -130,6 +133,7 @@ jobs: role-to-assume: ${{ secrets[format('IAM_ROLE_{0}', steps.transform.outputs.CONVERTED_REGION)] }} aws-region: ${{ matrix.region}} mask-aws-account-id: true + audience: ${{ needs.setup.outputs.aud }} - name: Create Layer id: create-layer run: | From a0a2c0ae45e9d7d6b993b869c5c846b5e0cbe0fd Mon Sep 17 00:00:00 2001 From: Simon Thulbourn Date: Wed, 11 Jun 2025 12:58:54 +0000 Subject: [PATCH 2/4] remove region --- .github/workflows/layers_partitions.yml | 2 +- docs/getting-started/lambda-layers.md | 74 +++++++++++++------------ 2 files changed, 39 insertions(+), 37 deletions(-) diff --git a/.github/workflows/layers_partitions.yml b/.github/workflows/layers_partitions.yml index 151702be7..2fe2c46bf 100644 --- a/.github/workflows/layers_partitions.yml +++ b/.github/workflows/layers_partitions.yml @@ -55,7 +55,7 @@ jobs: name: Parition (China) if: ${{ inputs.partition == 'China' }} run: | - echo regions='["cn-north-1", "cn-northwest-1"]'>> "$GITHUB_OUTPUT" + echo regions='["cn-north-1"]'>> "$GITHUB_OUTPUT" echo partition='aws-cn'>> "$GITHUB_OUTPUT" echo aud='sts.amazonaws.com.cn'>> "$GITHUB_OUTPUT" - id: regions_govcloud diff --git a/docs/getting-started/lambda-layers.md b/docs/getting-started/lambda-layers.md index 6aec4aa1b..01afcf130 100644 --- a/docs/getting-started/lambda-layers.md +++ b/docs/getting-started/lambda-layers.md @@ -17,42 +17,44 @@ We publish the Lambda Layer for Powertools for AWS Lambda in all commercial regi Open an [issue](https://github.com/aws-powertools/powertools-lambda-typescript/issues/new?template=feature_request.yml&title=Feature%20request%3A%20missing%20Lambda%20layer%20region) in our GitHub repository to request it. -| Region | Layer ARN | -| ---------------- | --------------------------------------------------------------------------------------------------------- | -| `us-east-1` | [arn:aws:lambda:us-east-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | -| `us-east-2` | [arn:aws:lambda:us-east-2:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | -| `us-west-1` | [arn:aws:lambda:us-west-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | -| `us-west-2` | [arn:aws:lambda:us-west-2:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | -| `ap-south-1` | [arn:aws:lambda:ap-south-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | -| `ap-south-2` | [arn:aws:lambda:ap-south-2:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | -| `ap-east-1` | [arn:aws:lambda:ap-east-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | -| `ap-northeast-1` | [arn:aws:lambda:ap-northeast-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | -| `ap-northeast-2` | [arn:aws:lambda:ap-northeast-2:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | -| `ap-northeast-3` | [arn:aws:lambda:ap-northeast-3:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | -| `ap-southeast-1` | [arn:aws:lambda:ap-southeast-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | -| `ap-southeast-2` | [arn:aws:lambda:ap-southeast-2:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | -| `ap-southeast-3` | [arn:aws:lambda:ap-southeast-3:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | -| `ap-southeast-4` | [arn:aws:lambda:ap-southeast-4:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | -| `ap-southeast-5` | [arn:aws:lambda:ap-southeast-5:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | -| `ap-southeast-7` | [arn:aws:lambda:ap-southeast-7:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | -| `eu-central-1` | [arn:aws:lambda:eu-central-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | -| `eu-central-2` | [arn:aws:lambda:eu-central-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | -| `eu-west-1` | [arn:aws:lambda:eu-west-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | -| `eu-west-2` | [arn:aws:lambda:eu-west-2:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | -| `eu-west-3` | [arn:aws:lambda:eu-west-3:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | -| `eu-north-1` | [arn:aws:lambda:eu-north-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | -| `eu-south-1` | [arn:aws:lambda:eu-south-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | -| `eu-south-2` | [arn:aws:lambda:eu-south-2:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | -| `ca-central-1` | [arn:aws:lambda:ca-central-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | -| `ca-west-1` | [arn:aws:lambda:ca-west-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | -| `sa-east-1` | [arn:aws:lambda:sa-east-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | -| `af-south-1` | [arn:aws:lambda:af-south-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | -| `me-south-1` | [arn:aws:lambda:me-south-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | -| `me-central-1` | [arn:aws:lambda:me-central-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | -| `il-central-1` | [arn:aws:lambda:il-central-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | -| `mx-central-1` | [arn:aws:lambda:mx-central-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | -| `us-gov-west-1` | [arn:aws-us-gov:lambda:us-gov-west-1:165093116878:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | -| `us-gov-east-1` | [arn:aws-us-gov:lambda:us-gov-east-1:165087284144:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| Region | Layer ARN | +| ---------------- | ---------------------------------------------------------------------------------------------------------- | +| `us-east-1` | [arn:aws:lambda:us-east-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| `us-east-2` | [arn:aws:lambda:us-east-2:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| `us-west-1` | [arn:aws:lambda:us-west-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| `us-west-2` | [arn:aws:lambda:us-west-2:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| `ap-south-1` | [arn:aws:lambda:ap-south-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| `ap-south-2` | [arn:aws:lambda:ap-south-2:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| `ap-east-1` | [arn:aws:lambda:ap-east-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| `ap-northeast-1` | [arn:aws:lambda:ap-northeast-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| `ap-northeast-2` | [arn:aws:lambda:ap-northeast-2:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| `ap-northeast-3` | [arn:aws:lambda:ap-northeast-3:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| `ap-southeast-1` | [arn:aws:lambda:ap-southeast-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| `ap-southeast-2` | [arn:aws:lambda:ap-southeast-2:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| `ap-southeast-3` | [arn:aws:lambda:ap-southeast-3:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| `ap-southeast-4` | [arn:aws:lambda:ap-southeast-4:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| `ap-southeast-5` | [arn:aws:lambda:ap-southeast-5:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| `ap-southeast-7` | [arn:aws:lambda:ap-southeast-7:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| `eu-central-1` | [arn:aws:lambda:eu-central-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| `eu-central-2` | [arn:aws:lambda:eu-central-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| `eu-west-1` | [arn:aws:lambda:eu-west-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| `eu-west-2` | [arn:aws:lambda:eu-west-2:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| `eu-west-3` | [arn:aws:lambda:eu-west-3:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| `eu-north-1` | [arn:aws:lambda:eu-north-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| `eu-south-1` | [arn:aws:lambda:eu-south-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| `eu-south-2` | [arn:aws:lambda:eu-south-2:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| `ca-central-1` | [arn:aws:lambda:ca-central-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| `ca-west-1` | [arn:aws:lambda:ca-west-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| `sa-east-1` | [arn:aws:lambda:sa-east-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| `af-south-1` | [arn:aws:lambda:af-south-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| `me-south-1` | [arn:aws:lambda:me-south-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| `me-central-1` | [arn:aws:lambda:me-central-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| `il-central-1` | [arn:aws:lambda:il-central-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| `mx-central-1` | [arn:aws:lambda:mx-central-1:094274105915:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| `us-gov-west-1` | [arn:aws-us-gov:lambda:us-gov-west-1:165093116878:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| `us-gov-east-1` | [arn:aws-us-gov:lambda:us-gov-east-1:165087284144:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| `cn-north-1` | [arn:aws-aws-cn:lambda:cn-north-1:498634801083:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | +| `cn-northwest-1` | [arn:aws-aws-cn:lambda:cn-northwest-1:499712207924:layer:AWSLambdaPowertoolsTypeScriptV2:28](#){: .copyMe} | ### Lookup Layer ARN via AWS SSM Parameter Store From 7f9be5ade96f669d2449c59d3ea41193599b283d Mon Sep 17 00:00:00 2001 From: Simon Thulbourn Date: Wed, 11 Jun 2025 13:00:04 +0000 Subject: [PATCH 3/4] add region back --- .github/workflows/layers_partitions.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/layers_partitions.yml b/.github/workflows/layers_partitions.yml index 2fe2c46bf..151702be7 100644 --- a/.github/workflows/layers_partitions.yml +++ b/.github/workflows/layers_partitions.yml @@ -55,7 +55,7 @@ jobs: name: Parition (China) if: ${{ inputs.partition == 'China' }} run: | - echo regions='["cn-north-1"]'>> "$GITHUB_OUTPUT" + echo regions='["cn-north-1", "cn-northwest-1"]'>> "$GITHUB_OUTPUT" echo partition='aws-cn'>> "$GITHUB_OUTPUT" echo aud='sts.amazonaws.com.cn'>> "$GITHUB_OUTPUT" - id: regions_govcloud From 0e9b3afdda2287d2fed3e7ffc9f864ce5cae82cc Mon Sep 17 00:00:00 2001 From: Simon Thulbourn Date: Fri, 13 Jun 2025 09:38:28 +0000 Subject: [PATCH 4/4] remove cn-northwest-1 due to issues with deployment --- .github/workflows/layers_partition_verify.yml | 2 +- .github/workflows/layers_partitions.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/layers_partition_verify.yml b/.github/workflows/layers_partition_verify.yml index dac9da885..f27c676d1 100644 --- a/.github/workflows/layers_partition_verify.yml +++ b/.github/workflows/layers_partition_verify.yml @@ -58,7 +58,7 @@ jobs: name: Parition (China) if: ${{ inputs.partition == 'China' }} run: | - echo regions='["cn-north-1", "cn-northwest-1"]'>> "$GITHUB_OUTPUT" + echo regions='["cn-north-1"]'>> "$GITHUB_OUTPUT" echo partition='aws-cn'>> "$GITHUB_OUTPUT" echo aud='sts.amazonaws.com.cn'>> "$GITHUB_OUTPUT" - id: regions_govcloud diff --git a/.github/workflows/layers_partitions.yml b/.github/workflows/layers_partitions.yml index 151702be7..2fe2c46bf 100644 --- a/.github/workflows/layers_partitions.yml +++ b/.github/workflows/layers_partitions.yml @@ -55,7 +55,7 @@ jobs: name: Parition (China) if: ${{ inputs.partition == 'China' }} run: | - echo regions='["cn-north-1", "cn-northwest-1"]'>> "$GITHUB_OUTPUT" + echo regions='["cn-north-1"]'>> "$GITHUB_OUTPUT" echo partition='aws-cn'>> "$GITHUB_OUTPUT" echo aud='sts.amazonaws.com.cn'>> "$GITHUB_OUTPUT" - id: regions_govcloud