18
18
id-token : write
19
19
contents : read
20
20
steps :
21
+ - name : Fetch secrets from ESC
22
+ id : esc-secrets
23
+ uses : pulumi/esc-action@v1
21
24
- uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
22
25
23
26
- name : Set up the environment
26
29
with :
27
30
aws-access-key-id : ${{ secrets.AWS_ACCESS_KEY_ID }}
28
31
aws-secret-access-key : ${{ secrets.AWS_SECRET_ACCESS_KEY }}
29
- aws-role-to-assume : ${{ secrets.AWS_CI_ROLE_ARN }}
32
+ aws-role-to-assume : ${{ steps.esc- secrets.outputs .AWS_CI_ROLE_ARN }}
30
33
github-token : ${{ secrets.GITHUB_TOKEN }}
31
34
32
35
- name : Lint
40
43
id-token : write
41
44
contents : read
42
45
steps :
46
+ - name : Fetch secrets from ESC
47
+ id : esc-secrets
48
+ uses : pulumi/esc-action@v1
43
49
- uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
44
50
45
51
- name : Set up the environment
48
54
with :
49
55
aws-access-key-id : ${{ secrets.AWS_ACCESS_KEY_ID }}
50
56
aws-secret-access-key : ${{ secrets.AWS_SECRET_ACCESS_KEY }}
51
- aws-role-to-assume : ${{ secrets.AWS_CI_ROLE_ARN }}
57
+ aws-role-to-assume : ${{ steps.esc- secrets.outputs .AWS_CI_ROLE_ARN }}
52
58
github-token : ${{ secrets.GITHUB_TOKEN }}
53
59
54
60
- name : unit tests
70
76
- name : Set up Python
71
77
uses : actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5
72
78
with :
73
- python-version : 3.9 # Adjust the version as needed
79
+ python-version : 3.9 # Adjust the version as needed
74
80
75
81
# Step 3: Install Make (already installed on Ubuntu, but explicit just in case)
76
82
- name : Ensure Make is Installed
90
96
id-token : write
91
97
contents : read
92
98
steps :
99
+ - name : Fetch secrets from ESC
100
+ id : esc-secrets
101
+ uses : pulumi/esc-action@v1
93
102
- uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
94
103
95
104
- name : Set up the environment
98
107
with :
99
108
aws-access-key-id : ${{ secrets.AWS_ACCESS_KEY_ID }}
100
109
aws-secret-access-key : ${{ secrets.AWS_SECRET_ACCESS_KEY }}
101
- aws-role-to-assume : ${{ secrets.AWS_CI_ROLE_ARN }}
110
+ aws-role-to-assume : ${{ steps.esc- secrets.outputs .AWS_CI_ROLE_ARN }}
102
111
github-token : ${{ secrets.GITHUB_TOKEN }}
103
112
104
113
- name : unit tests
@@ -114,6 +123,9 @@ jobs:
114
123
id-token : write
115
124
contents : read
116
125
steps :
126
+ - name : Fetch secrets from ESC
127
+ id : esc-secrets
128
+ uses : pulumi/esc-action@v1
117
129
- uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
118
130
119
131
- name : Set up the environment
@@ -122,7 +134,7 @@ jobs:
122
134
with :
123
135
aws-access-key-id : ${{ secrets.AWS_ACCESS_KEY_ID }}
124
136
aws-secret-access-key : ${{ secrets.AWS_SECRET_ACCESS_KEY }}
125
- aws-role-to-assume : ${{ secrets.AWS_CI_ROLE_ARN }}
137
+ aws-role-to-assume : ${{ steps.esc- secrets.outputs .AWS_CI_ROLE_ARN }}
126
138
github-token : ${{ secrets.GITHUB_TOKEN }}
127
139
128
140
- name : unit tests
@@ -136,6 +148,9 @@ jobs:
136
148
id-token : write
137
149
contents : read
138
150
steps :
151
+ - name : Fetch secrets from ESC
152
+ id : esc-secrets
153
+ uses : pulumi/esc-action@v1
139
154
- uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
140
155
141
156
- name : Set up the environment
@@ -144,7 +159,7 @@ jobs:
144
159
with :
145
160
aws-access-key-id : ${{ secrets.AWS_ACCESS_KEY_ID }}
146
161
aws-secret-access-key : ${{ secrets.AWS_SECRET_ACCESS_KEY }}
147
- aws-role-to-assume : ${{ secrets.AWS_CI_ROLE_ARN }}
162
+ aws-role-to-assume : ${{ steps.esc- secrets.outputs .AWS_CI_ROLE_ARN }}
148
163
github-token : ${{ secrets.GITHUB_TOKEN }}
149
164
150
165
- name : unit tests
@@ -169,13 +184,16 @@ jobs:
169
184
170
185
steps :
171
186
# Run as first step so we don't delete things that have just been installed
187
+ - name : Fetch secrets from ESC
188
+ id : esc-secrets
189
+ uses : pulumi/esc-action@v1
172
190
- name : Free Disk Space (Ubuntu)
173
191
uses : jlumbroso/free-disk-space@54081f138730dfa15788a46383842cd2f914a1be # v1.3.1
174
192
with :
175
193
tool-cache : false
176
194
swap-storage : false
177
195
dotnet : false
178
-
196
+
179
197
- uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
180
198
181
199
- name : Set up the environment
@@ -184,7 +202,7 @@ jobs:
184
202
with :
185
203
aws-access-key-id : ${{ secrets.AWS_ACCESS_KEY_ID }}
186
204
aws-secret-access-key : ${{ secrets.AWS_SECRET_ACCESS_KEY }}
187
- aws-role-to-assume : ${{ secrets.AWS_CI_ROLE_ARN }}
205
+ aws-role-to-assume : ${{ steps.esc- secrets.outputs .AWS_CI_ROLE_ARN }}
188
206
github-token : ${{ secrets.GITHUB_TOKEN }}
189
207
190
208
- name : Run tests
@@ -194,20 +212,20 @@ jobs:
194
212
AWS_SECRET_ACCESS_KEY : ${{ steps.setup.outputs.aws-secret-access-key }}
195
213
AWS_SESSION_TOKEN : ${{ steps.setup.outputs.aws-session-token }}
196
214
AWS_REGION : ${{ steps.setup.outputs.aws-region }}
197
- ARM_CLIENT_ID : ${{ secrets.ARM_CLIENT_ID }}
198
- ARM_CLIENT_SECRET : ${{ secrets.ARM_CLIENT_SECRET }}
215
+ ARM_CLIENT_ID : ${{ steps.esc- secrets.outputs .ARM_CLIENT_ID }}
216
+ ARM_CLIENT_SECRET : ${{ steps.esc- secrets.outputs .ARM_CLIENT_SECRET }}
199
217
ARM_ENVIRONMENT : public
200
218
ARM_LOCATION : westus
201
- ARM_SUBSCRIPTION_ID : ${{ secrets.ARM_SUBSCRIPTION_ID }}
202
- ARM_TENANT_ID : ${{ secrets.ARM_TENANT_ID }}
219
+ ARM_SUBSCRIPTION_ID : ${{ steps.esc- secrets.outputs .ARM_SUBSCRIPTION_ID }}
220
+ ARM_TENANT_ID : ${{ steps.esc- secrets.outputs .ARM_TENANT_ID }}
203
221
GOOGLE_PROJECT : ${{ steps.setup.outputs.google-project-name }}
204
222
GOOGLE_REGION : ${{ steps.setup.outputs.google-region }}
205
223
GOOGLE_ZONE : ${{ steps.setup.outputs.google-zone }}
206
- DIGITALOCEAN_TOKEN : ${{ secrets.DIGITALOCEAN_TOKEN }}
207
- PACKET_AUTH_TOKEN : ${{ secrets.PACKET_AUTH_TOKEN }}
208
- PULUMI_ACCESS_TOKEN : ${{ secrets.PULUMI_ACCESS_TOKEN }}
224
+ DIGITALOCEAN_TOKEN : ${{ steps.esc- secrets.outputs .DIGITALOCEAN_TOKEN }}
225
+ PACKET_AUTH_TOKEN : ${{ steps.esc- secrets.outputs .PACKET_AUTH_TOKEN }}
226
+ PULUMI_ACCESS_TOKEN : ${{ steps.esc- secrets.outputs .PULUMI_ACCESS_TOKEN }}
209
227
PULUMI_API : https://api.pulumi-staging.io
210
- SLACK_WEBHOOK_URL : ${{ secrets.SLACK_WEBHOOK_URL }}
228
+ SLACK_WEBHOOK_URL : ${{ steps.esc- secrets.outputs .SLACK_WEBHOOK_URL }}
211
229
212
230
strategy :
213
231
fail-fast : false
@@ -236,6 +254,9 @@ jobs:
236
254
contents : read
237
255
238
256
steps :
257
+ - name : Fetch secrets from ESC
258
+ id : esc-secrets
259
+ uses : pulumi/esc-action@v1
239
260
- uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4
240
261
241
262
- name : Set up the environment
@@ -244,7 +265,7 @@ jobs:
244
265
with :
245
266
aws-access-key-id : ${{ secrets.AWS_ACCESS_KEY_ID }}
246
267
aws-secret-access-key : ${{ secrets.AWS_SECRET_ACCESS_KEY }}
247
- aws-role-to-assume : ${{ secrets.AWS_CI_ROLE_ARN }}
268
+ aws-role-to-assume : ${{ steps.esc- secrets.outputs .AWS_CI_ROLE_ARN }}
248
269
github-token : ${{ secrets.GITHUB_TOKEN }}
249
270
250
271
- name : Set up Minikube
@@ -281,6 +302,13 @@ jobs:
281
302
AWS_SECRET_ACCESS_KEY : ${{ steps.setup.outputs.aws-secret-access-key }}
282
303
AWS_SESSION_TOKEN : ${{ steps.setup.outputs.aws-session-token }}
283
304
AWS_REGION : ${{ steps.setup.outputs.aws-region }}
284
- PULUMI_ACCESS_TOKEN : ${{ secrets.PULUMI_ACCESS_TOKEN }}
305
+ PULUMI_ACCESS_TOKEN : ${{ steps.esc- secrets.outputs .PULUMI_ACCESS_TOKEN }}
285
306
PULUMI_API : https://api.pulumi-staging.io
286
307
INFRA_STACK_NAME : ${{ github.sha }}-${{ github.run_number }}
308
+ env :
309
+ ESC_ACTION_OIDC_AUTH : true
310
+ ESC_ACTION_OIDC_ORGANIZATION : pulumi
311
+ ESC_ACTION_OIDC_REQUESTED_TOKEN_TYPE : urn:pulumi:token-type:access_token:organization
312
+ ESC_ACTION_ENVIRONMENT : imports/github-secrets
313
+ ESC_ACTION_EXPORT_ENVIRONMENT_VARIABLES : false
314
+ permissions : write-all # Equivalent to default permissions plus id-token: write
0 commit comments