2424
2525env :
2626 PULUMI_API : https://api.pulumi-staging.io
27- PULUMI_ACCESS_TOKEN : ${{ secrets.PULUMI_ACCESS_TOKEN }}
2827 AWS_REGION : us-west-2
2928 GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
3029 GOOGLE_CI_SERVICE_ACCOUNT_EMAIL :
[email protected] 3130 GOOGLE_CI_WORKLOAD_IDENTITY_POOL : pulumi-ci
3231 GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER : pulumi-ci
3332 GOOGLE_PROJECT_NUMBER : 895284651812
3433 GOLANGCI_LINT_VERSION : v1.64.4
34+ ESC_ACTION_OIDC_AUTH : true
35+ ESC_ACTION_OIDC_ORGANIZATION : pulumi
36+ ESC_ACTION_OIDC_REQUESTED_TOKEN_TYPE : urn:pulumi:token-type:access_token:organization
37+ ESC_ACTION_ENVIRONMENT : imports/github-secrets
38+ ESC_ACTION_EXPORT_ENVIRONMENT_VARIABLES : PULUMI_ACCESS_TOKEN=PULUMI_ACCESS_TOKEN
3539
3640jobs :
3741
4145 outputs :
4246 gotcloudcreds : ${{ steps.gotcloudcreds.outputs.gotcloudcreds }}
4347 steps :
48+ - name : Fetch secrets from ESC
49+ id : esc-secrets
50+ uses : pulumi/esc-action@v1
4451 - uses : actions/checkout@v3
4552 with :
4653 submodules : recursive
93100 uses : codecov/codecov-action@v5
94101 with :
95102 directory : sdk/java/pulumi/build/reports/jacoco/allTests
96- token : ${{ secrets.CODECOV_TOKEN }}
103+ token : ${{ steps.esc- secrets.outputs .CODECOV_TOKEN }}
97104 - run : make build_go
98105 - run : make bin/pulumi-java-gen
99106 - run : make bin/pulumi-language-java
@@ -133,6 +140,9 @@ jobs:
133140 strategy :
134141 fail-fast : false
135142 steps :
143+ - name : Fetch secrets from ESC
144+ id : esc-secrets
145+ uses : pulumi/esc-action@v1
136146 - uses : actions/checkout@v3
137147 with :
138148 submodules : recursive
@@ -219,6 +229,9 @@ jobs:
219229 contents : read
220230 id-token : write
221231 steps :
232+ - name : Fetch secrets from ESC
233+ id : esc-secrets
234+ uses : pulumi/esc-action@v1
222235 - uses : actions/checkout@v3
223236 with :
224237 submodules : recursive
@@ -274,33 +287,33 @@ jobs:
274287 aws-secret-access-key : ${{ secrets.AWS_SECRET_ACCESS_KEY }}
275288 role-duration-seconds : 3600
276289 role-session-name : ${{ env.PROVIDER }}@githubActions
277- role-to-assume : ${{ secrets.AWS_CI_ROLE_ARN }}
290+ role-to-assume : ${{ steps.esc- secrets.outputs .AWS_CI_ROLE_ARN }}
278291 - name : Authenticate to Google Cloud
279292 uses : google-github-actions/auth@v2
280293 with :
281- workload_identity_provider : projects/${{ env.GOOGLE_PROJECT_NUMBER
282- }}/locations/global/workloadIdentityPools/${{
283- env.GOOGLE_CI_WORKLOAD_IDENTITY_POOL }}/providers/${{
284- env.GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER }}
294+ workload_identity_provider : projects/${{ env.GOOGLE_PROJECT_NUMBER }}/locations/global/workloadIdentityPools/${{ env.GOOGLE_CI_WORKLOAD_IDENTITY_POOL }}/providers/${{ env.GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER }}
285295 service_account : ${{ env.GOOGLE_CI_SERVICE_ACCOUNT_EMAIL }}
286296 - name : Setup gcloud auth
287297 uses : google-github-actions/setup-gcloud@v2
288298 with :
289299 install_components : gke-gcloud-auth-plugin
290300 - name : Run ${{ matrix.example }} example
291301 env :
292- PULUMI_ACCESS_TOKEN : ${{ secrets.PULUMI_ACCESS_TOKEN }}
293- ARM_CLIENT_ID : ${{ secrets.ARM_CLIENT_ID }}
294- ARM_CLIENT_SECRET : ${{ secrets.ARM_CLIENT_SECRET }}
295- ARM_SUBSCRIPTION_ID : ${{ secrets.ARM_SUBSCRIPTION_ID }}
296- ARM_TENANT_ID : ${{ secrets.ARM_TENANT_ID }}
302+ PULUMI_ACCESS_TOKEN : ${{ steps.esc- secrets.outputs .PULUMI_ACCESS_TOKEN }}
303+ ARM_CLIENT_ID : ${{ steps.esc- secrets.outputs .ARM_CLIENT_ID }}
304+ ARM_CLIENT_SECRET : ${{ steps.esc- secrets.outputs .ARM_CLIENT_SECRET }}
305+ ARM_SUBSCRIPTION_ID : ${{ steps.esc- secrets.outputs .ARM_SUBSCRIPTION_ID }}
306+ ARM_TENANT_ID : ${{ steps.esc- secrets.outputs .ARM_TENANT_ID }}
297307 run : make test_example.${{ matrix.example }}
298308
299309 go-lint :
300310 runs-on : ubuntu-latest
301311 timeout-minutes : 10
302312 name : Lint pkg
303313 steps :
314+ - name : Fetch secrets from ESC
315+ id : esc-secrets
316+ uses : pulumi/esc-action@v1
304317 - name : Checkout Repo
305318 uses : actions/checkout@v3
306319 with :
@@ -338,6 +351,9 @@ jobs:
338351 - provider-maven
339352 - provider-gradle
340353 steps :
354+ - name : Fetch secrets from ESC
355+ id : esc-secrets
356+ uses : pulumi/esc-action@v1
341357 - uses : actions/checkout@v3
342358 with :
343359 submodules : recursive
@@ -386,7 +402,7 @@ jobs:
386402 path : ~/.m2/repository/com/pulumi
387403 - name : Run ${{ matrix.integration }} integration
388404 env :
389- PULUMI_ACCESS_TOKEN : ${{ secrets.PULUMI_ACCESS_TOKEN }}
405+ PULUMI_ACCESS_TOKEN : ${{ steps.esc- secrets.outputs .PULUMI_ACCESS_TOKEN }}
390406 run : make test_integration.${{ matrix.integration }}
391407
392408 test_templates :
@@ -398,6 +414,9 @@ jobs:
398414 contents : read
399415 id-token : write
400416 steps :
417+ - name : Fetch secrets from ESC
418+ id : esc-secrets
419+ uses : pulumi/esc-action@v1
401420 - uses : actions/checkout@v3
402421 with :
403422 submodules : recursive
@@ -449,25 +468,22 @@ jobs:
449468 aws-secret-access-key : ${{ secrets.AWS_SECRET_ACCESS_KEY }}
450469 role-duration-seconds : 3600
451470 role-session-name : ${{ env.PROVIDER }}@githubActions
452- role-to-assume : ${{ secrets.AWS_CI_ROLE_ARN }}
471+ role-to-assume : ${{ steps.esc- secrets.outputs .AWS_CI_ROLE_ARN }}
453472 - name : Authenticate to Google Cloud
454473 uses : google-github-actions/auth@v2
455474 with :
456- workload_identity_provider : projects/${{ env.GOOGLE_PROJECT_NUMBER
457- }}/locations/global/workloadIdentityPools/${{
458- env.GOOGLE_CI_WORKLOAD_IDENTITY_POOL }}/providers/${{
459- env.GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER }}
475+ workload_identity_provider : projects/${{ env.GOOGLE_PROJECT_NUMBER }}/locations/global/workloadIdentityPools/${{ env.GOOGLE_CI_WORKLOAD_IDENTITY_POOL }}/providers/${{ env.GOOGLE_CI_WORKLOAD_IDENTITY_PROVIDER }}
460476 service_account : ${{ env.GOOGLE_CI_SERVICE_ACCOUNT_EMAIL }}
461477 - name : Setup gcloud auth
462478 uses : google-github-actions/setup-gcloud@v2
463479 with :
464480 install_components : gke-gcloud-auth-plugin
465481 - env :
466- PULUMI_ACCESS_TOKEN : ${{ secrets.PULUMI_ACCESS_TOKEN }}
467- ARM_CLIENT_ID : ${{ secrets.ARM_CLIENT_ID }}
468- ARM_CLIENT_SECRET : ${{ secrets.ARM_CLIENT_SECRET }}
469- ARM_SUBSCRIPTION_ID : ${{ secrets.ARM_SUBSCRIPTION_ID }}
470- ARM_TENANT_ID : ${{ secrets.ARM_TENANT_ID }}
482+ PULUMI_ACCESS_TOKEN : ${{ steps.esc- secrets.outputs .PULUMI_ACCESS_TOKEN }}
483+ ARM_CLIENT_ID : ${{ steps.esc- secrets.outputs .ARM_CLIENT_ID }}
484+ ARM_CLIENT_SECRET : ${{ steps.esc- secrets.outputs .ARM_CLIENT_SECRET }}
485+ ARM_SUBSCRIPTION_ID : ${{ steps.esc- secrets.outputs .ARM_SUBSCRIPTION_ID }}
486+ ARM_TENANT_ID : ${{ steps.esc- secrets.outputs .ARM_TENANT_ID }}
471487 run : make test_templates
472488
473489 ci-ok :
@@ -476,8 +492,12 @@ jobs:
476492 if : always()
477493 runs-on : ubuntu-latest
478494 steps :
495+ - name : Fetch secrets from ESC
496+ id : esc-secrets
497+ uses : pulumi/esc-action@v1
479498 - name : CI failed
480499 if : ${{ needs.go-tests.result != 'success' || needs.examples.result != 'success' || needs.go-lint.result != 'success' || needs.test_integrations.result != 'success' || needs.test_templates.result != 'success' }}
481500 run : exit 1
482501 - name : CI succeeded
483502 run : exit 0
503+ permissions : write-all # Equivalent to default permissions plus id-token: write
0 commit comments