Skip to content

Commit 615fe38

Browse files
committed
Use ESC secrets
1 parent f01d73c commit 615fe38

File tree

5 files changed

+73
-18
lines changed

5 files changed

+73
-18
lines changed

.github/workflows/command-dispatch.yml

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,13 +8,23 @@ jobs:
88
command-dispatch-for-testing:
99
runs-on: ubuntu-latest
1010
steps:
11+
- name: Fetch secrets from ESC
12+
id: esc-secrets
13+
uses: pulumi/esc-action@v1
1114
- uses: actions/checkout@v2
1215
- name: Run Build
1316
uses: peter-evans/slash-command-dispatch@v2
1417
with:
15-
token: ${{ secrets.PULUMI_BOT_TOKEN }}
18+
token: ${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}
1619
reaction-token: ${{ secrets.GITHUB_TOKEN }}
1720
commands: run-acceptance-tests
1821
permission: write
1922
issue-type: pull-request
2023
repository: pulumi/pulumi-kubernetes-operator
24+
env:
25+
ESC_ACTION_OIDC_AUTH: true
26+
ESC_ACTION_OIDC_ORGANIZATION: pulumi
27+
ESC_ACTION_OIDC_REQUESTED_TOKEN_TYPE: urn:pulumi:token-type:access_token:organization
28+
ESC_ACTION_ENVIRONMENT: imports/github-secrets
29+
ESC_ACTION_EXPORT_ENVIRONMENT_VARIABLES: false
30+
permissions: write-all # Equivalent to default permissions plus id-token: write

.github/workflows/release.yaml

Lines changed: 17 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,25 +3,33 @@ name: Pulumi Kubernetes Operator Release
33
on:
44
push:
55
tags:
6-
- v*.*.* # e.g. v2.0.0
7-
- v*.*-*.* # e.g. v2.0-beta.0
8-
- v*.*.*-*.* # e.g. v2.0.0-beta.1
6+
- v*.*.* # e.g. v2.0.0
7+
- v*.*-*.* # e.g. v2.0-beta.0
8+
- v*.*.*-*.* # e.g. v2.0.0-beta.1
99
env:
10-
PULUMI_ACCESS_TOKEN: ${{ secrets.PULUMI_ACCESS_TOKEN }}
1110
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
1211
VERSION: ${{ github.ref_name }}
12+
ESC_ACTION_OIDC_AUTH: true
13+
ESC_ACTION_OIDC_ORGANIZATION: pulumi
14+
ESC_ACTION_OIDC_REQUESTED_TOKEN_TYPE: urn:pulumi:token-type:access_token:organization
15+
ESC_ACTION_ENVIRONMENT: imports/github-secrets
16+
ESC_ACTION_EXPORT_ENVIRONMENT_VARIABLES: PULUMI_ACCESS_TOKEN=PULUMI_ACCESS_TOKEN
1317
permissions:
1418
contents: write
19+
id-token: write
1520
jobs:
1621
docker:
1722
name: Build & Push Docker Images
1823
runs-on: ubuntu-latest
1924
steps:
25+
- name: Fetch secrets from ESC
26+
id: esc-secrets
27+
uses: pulumi/esc-action@v1
2028
- name: Login to Docker Hub
2129
uses: docker/login-action@v3
2230
with:
23-
username: ${{ secrets.DOCKER_USERNAME }}
24-
password: ${{ secrets.DOCKER_PASSWORD }}
31+
username: ${{ steps.esc-secrets.outputs.DOCKER_USERNAME }}
32+
password: ${{ steps.esc-secrets.outputs.DOCKER_PASSWORD }}
2533
- name: Set up QEMU
2634
uses: docker/setup-qemu-action@v3
2735
- name: Set up Docker Buildx
@@ -46,6 +54,9 @@ jobs:
4654
needs: [docker]
4755
runs-on: ubuntu-latest
4856
steps:
57+
- name: Fetch secrets from ESC
58+
id: esc-secrets
59+
uses: pulumi/esc-action@v1
4960
- name: Checkout
5061
uses: actions/checkout@v4
5162
- name: Create a GH release

.github/workflows/run-acceptance-tests.yaml

Lines changed: 24 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -8,15 +8,21 @@ on:
88
branches:
99
- master
1010
env:
11-
PULUMI_ACCESS_TOKEN: ${{ secrets.PULUMI_ACCESS_TOKEN }}
1211
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
13-
PULUMI_BOT_TOKEN: ${{ secrets.PULUMI_BOT_TOKEN }}
1412
VERSION: v0.0-${{ github.sha }}
13+
ESC_ACTION_OIDC_AUTH: true
14+
ESC_ACTION_OIDC_ORGANIZATION: pulumi
15+
ESC_ACTION_OIDC_REQUESTED_TOKEN_TYPE: urn:pulumi:token-type:access_token:organization
16+
ESC_ACTION_ENVIRONMENT: imports/github-secrets
17+
ESC_ACTION_EXPORT_ENVIRONMENT_VARIABLES: PULUMI_BOT_TOKEN=PULUMI_BOT_TOKEN,PULUMI_ACCESS_TOKEN=PULUMI_ACCESS_TOKEN
1518
jobs:
1619
build:
1720
runs-on: ubuntu-latest
1821
name: Build
1922
steps:
23+
- name: Fetch secrets from ESC
24+
id: esc-secrets
25+
uses: pulumi/esc-action@v1
2026
- name: Check out code
2127
uses: actions/checkout@v4
2228
with:
@@ -28,8 +34,8 @@ jobs:
2834
- name: Login to Docker Hub
2935
uses: docker/login-action@v3
3036
with:
31-
username: ${{ secrets.DOCKER_USERNAME }}
32-
password: ${{ secrets.DOCKER_PASSWORD }}
37+
username: ${{ steps.esc-secrets.outputs.DOCKER_USERNAME }}
38+
password: ${{ steps.esc-secrets.outputs.DOCKER_PASSWORD }}
3339
- name: Set up Docker Buildx
3440
uses: docker/setup-buildx-action@v3
3541
- name: Build
@@ -42,11 +48,15 @@ jobs:
4248
pulumi/pulumi-kubernetes-operator:${{ env.VERSION }}
4349
build-args: |
4450
VERSION=${{ env.VERSION }}
45-
51+
52+
4653
lint:
4754
runs-on: ubuntu-latest
4855
name: Lint
4956
steps:
57+
- name: Fetch secrets from ESC
58+
id: esc-secrets
59+
uses: pulumi/esc-action@v1
5060
- name: Check out code
5161
uses: actions/checkout@v4
5262
with:
@@ -62,6 +72,9 @@ jobs:
6272
runs-on: ubuntu-latest
6373
name: Unit tests
6474
steps:
75+
- name: Fetch secrets from ESC
76+
id: esc-secrets
77+
uses: pulumi/esc-action@v1
6578
- name: Check out code
6679
uses: actions/checkout@v4
6780
with:
@@ -83,12 +96,15 @@ jobs:
8396
with:
8497
files: agent/coverage.out,operator/coverage.out
8598
env:
86-
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
99+
CODECOV_TOKEN: ${{ steps.esc-secrets.outputs.CODECOV_TOKEN }}
87100

88101
e2e-tests:
89102
runs-on: ubuntu-latest
90103
name: E2E tests
91104
steps:
105+
- name: Fetch secrets from ESC
106+
id: esc-secrets
107+
uses: pulumi/esc-action@v1
92108
- name: Setup cluster
93109
uses: helm/kind-action@v1
94110
with:
@@ -108,4 +124,5 @@ jobs:
108124
uses: stateful/vscode-server-action@v1
109125
if: failure()
110126
with:
111-
timeout: '360000' # milliseconds
127+
timeout: '360000' # milliseconds
128+
permissions: write-all # Equivalent to default permissions plus id-token: write

.github/workflows/sync-images.yaml

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,20 @@ env:
2222
DOCKER_USERNAME: pulumi
2323
OPERATOR_VERSION: ${{ inputs.operator_version || github.event.client_payload.ref }}
2424
OPERATOR_IMAGE_NAME: pulumi-kubernetes-operator
25+
ESC_ACTION_OIDC_AUTH: true
26+
ESC_ACTION_OIDC_ORGANIZATION: pulumi
27+
ESC_ACTION_OIDC_REQUESTED_TOKEN_TYPE: urn:pulumi:token-type:access_token:organization
28+
ESC_ACTION_ENVIRONMENT: imports/github-secrets
29+
ESC_ACTION_EXPORT_ENVIRONMENT_VARIABLES: false
2530

2631
jobs:
2732
sync-to-ecr:
2833
name: Pulumi Kubernetes Operator image
2934
runs-on: ubuntu-latest
3035
steps:
36+
- name: Fetch secrets from ESC
37+
id: esc-secrets
38+
uses: pulumi/esc-action@v1
3139
- name: Configure AWS Credentials
3240
uses: aws-actions/configure-aws-credentials@e3dd6a429d7300a6a4c196c26e071d42e0343502 # v4
3341
with:
@@ -37,7 +45,7 @@ jobs:
3745
role-duration-seconds: 3600
3846
role-external-id: upload-pulumi-release
3947
role-session-name: pulumi@githubActions
40-
role-to-assume: ${{ secrets.AWS_UPLOAD_ROLE_ARN }}
48+
role-to-assume: ${{ steps.esc-secrets.outputs.AWS_UPLOAD_ROLE_ARN }}
4149
- name: Login to GitHub Container Registry
4250
uses: docker/login-action@9780b0c442fbb1117ed29e0efdff1e18412f7567 # v3
4351
with:
@@ -59,4 +67,5 @@ jobs:
5967
- name: Output build summary
6068
run: |
6169
SUMMARY=$'# Image Syncing Summary\nSource Image: `pulumi/${{ env.OPERATOR_IMAGE_NAME }}:${{ env.OPERATOR_VERSION }}`\n\nDestination Images:\n- `public.ecr.aws/${{ env.DOCKER_USERNAME }}/${{ env.OPERATOR_IMAGE_NAME }}:${{ env.OPERATOR_VERSION }}`\n- `ghcr.io/${{ env.DOCKER_USERNAME }}/${{ env.OPERATOR_IMAGE_NAME }}:${{ env.OPERATOR_VERSION }}`'
62-
echo "$SUMMARY" >> $GITHUB_STEP_SUMMARY
70+
echo "$SUMMARY" >> $GITHUB_STEP_SUMMARY
71+
permissions: write-all # Equivalent to default permissions plus id-token: write

.github/workflows/weekly-pulumi-update.yml

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,11 @@ name: weekly-pulumi-update
55
workflow_dispatch: {}
66

77
env:
8-
GITHUB_TOKEN: ${{ secrets.PULUMI_BOT_TOKEN }}
8+
ESC_ACTION_OIDC_AUTH: true
9+
ESC_ACTION_OIDC_ORGANIZATION: pulumi
10+
ESC_ACTION_OIDC_REQUESTED_TOKEN_TYPE: urn:pulumi:token-type:access_token:organization
11+
ESC_ACTION_ENVIRONMENT: imports/github-secrets
12+
ESC_ACTION_EXPORT_ENVIRONMENT_VARIABLES: GITHUB_TOKEN=PULUMI_BOT_TOKEN
913

1014
jobs:
1115
update-go-mod:
@@ -15,6 +19,9 @@ jobs:
1519
matrix:
1620
goversion: [1.23.x]
1721
steps:
22+
- name: Fetch secrets from ESC
23+
id: esc-secrets
24+
uses: pulumi/esc-action@v1
1825
- name: Checkout Repo
1926
uses: actions/checkout@v2
2027
- name: Unshallow clone for tags
@@ -63,4 +70,5 @@ jobs:
6370
pr_title: "Automated pulumi/pulumi upgrade"
6471
pr_label: "automation/merge"
6572
pr_allow_empty: true
66-
github_token: ${{ secrets.PULUMI_BOT_TOKEN }}
73+
github_token: ${{ steps.esc-secrets.outputs.PULUMI_BOT_TOKEN }}
74+
permissions: write-all # Equivalent to default permissions plus id-token: write

0 commit comments

Comments
 (0)