Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Commit 29fb7fb

Browse filesBrowse files
github: Use IAM Roles to push files on AWS S3
For security reasons long lived credentials are not considered secure. To overcome this issue we can configure Github Workflows to use AWS OpenID Connect instead: For further details: https://docs.github.com/en/actions/deployment/security-hardening-your-deployments/about-security-hardening-with-openid-connect
1 parent d2e5ccd commit 29fb7fb
Copy full SHA for 29fb7fb

File tree

1 file changed

+12
-0
lines changed
Filter options

1 file changed

+12
-0
lines changed

‎.github/workflows/release.yml

Copy file name to clipboardExpand all lines: .github/workflows/release.yml
+12Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -181,12 +181,17 @@ jobs:
181181

182182
create-release:
183183
runs-on: ubuntu-latest
184+
environment: production
184185
needs: [build, build-go]
186+
permissions:
187+
contents: write
188+
id-token: write # This is required for requesting the JWT
185189
env:
186190
TARGET: "/tools/"
187191
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
188192
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
189193
AWS_REGION: "us-east-1" # or https://github.com/aws/aws-cli/issues/5623
194+
PROJECT_NAME: rp2040tools
190195
steps:
191196
- name: Checkout rp2040tools repository # we need package_index.template
192197
uses: actions/checkout@v4
@@ -225,5 +230,12 @@ jobs:
225230
token: ${{ secrets.GITHUB_TOKEN }}
226231
artifacts: "release/*,package_index_draft.json"
227232

233+
- name: configure aws credentials
234+
uses: aws-actions/configure-aws-credentials@v4
235+
with:
236+
role-to-assume: ${{ secrets.AWS_ROLE_TO_ASSUME }}
237+
role-session-name: "github_${{ env.PROJECT_NAME }}"
238+
aws-region: ${{ env.AWS_REGION }}
239+
228240
- name: Upload release files on Arduino downloads servers
229241
run: aws s3 sync release/ s3://${{ secrets.DOWNLOADS_BUCKET }}${{ env.TARGET }}

0 commit comments

Comments
0 (0)
Morty Proxy This is a proxified and sanitized view of the page, visit original site.