88 DIST_DIR : dist
99 # The project's folder on Arduino's download server for uploading builds
1010 AWS_PLUGIN_TARGET : /arduino-lint/
11+ AWS_REGION : " us-east-1"
1112 ARTIFACT_PREFIX : dist-
1213
1314# See: https://docs.github.com/actions/writing-workflows/choosing-when-your-workflow-runs/events-that-trigger-workflows
@@ -183,8 +184,10 @@ jobs:
183184
184185 publish-nightly :
185186 runs-on : ubuntu-latest
187+ environment : production
186188 needs : notarize-macos
187- permissions : {}
189+ permissions :
190+ id-token : write # This is required for requesting the JWT
188191
189192 steps :
190193 - name : Download artifact
@@ -200,15 +203,15 @@ jobs:
200203 TAG="nightly-$(date -u +"%Y%m%d")"
201204 sha256sum ${{ env.PROJECT_NAME }}_${TAG}* > ${TAG}-checksums.txt
202205
206+ - name : configure aws credentials
207+ uses : aws-actions/configure-aws-credentials@v4
208+ with :
209+ role-to-assume : ${{ secrets.AWS_ROLE_TO_ASSUME }}
210+ role-session-name : " github_${{ env.PROJECT_NAME }}"
211+ aws-region : ${{ env.AWS_REGION }}
212+
203213 - name : Upload release files on Arduino downloads servers
204- uses : docker://plugins/s3
205- env :
206- PLUGIN_SOURCE : " ${{ env.DIST_DIR }}/*"
207- PLUGIN_TARGET : " ${{ env.AWS_PLUGIN_TARGET }}nightly"
208- PLUGIN_STRIP_PREFIX : " ${{ env.DIST_DIR }}/"
209- PLUGIN_BUCKET : ${{ secrets.DOWNLOADS_BUCKET }}
210- AWS_ACCESS_KEY_ID : ${{ secrets.AWS_ACCESS_KEY_ID }}
211- AWS_SECRET_ACCESS_KEY : ${{ secrets.AWS_SECRET_ACCESS_KEY }}
214+ run : aws s3 sync ${{ env.DIST_DIR }} s3://${{ secrets.DOWNLOADS_BUCKET }}${{ env.AWS_PLUGIN_TARGET }}nightly
212215
213216 report :
214217 runs-on : ubuntu-latest
0 commit comments