1
- name : Release npm package and container image
1
+ name : Release npm package and container images
2
2
3
3
on :
4
4
push :
@@ -132,12 +132,12 @@ jobs:
132
132
- name : Attach cdx sbom
133
133
run : |
134
134
corepack pnpm install --config.strict-dep-builds=true --package-import-method copy --frozen-lockfile
135
- node bin/cdxgen.js -t docker -o cdxgen-oci-image.cdx.json ghcr.io/cyclonedx/cdxgen:latest
135
+ node bin/cdxgen.js -t docker -o cdxgen-oci-image.cdx.json ${{ fromJSON(steps.meta.outputs.json).tags[0] }}
136
136
node bin/verify.js -i cdxgen-oci-image.cdx.json --public-key contrib/bom-signer/public.key
137
- oras attach --artifact-type sbom/cyclonedx ghcr.io/cyclonedx/cdxgen:latest ./cdxgen-oci-image.cdx.json:application/json
138
- oras discover --format tree ghcr.io/cyclonedx/cdxgen:latest
137
+ oras attach --artifact-type sbom/cyclonedx ${{ fromJSON(steps.meta.outputs.json).tags[0] }} ./cdxgen-oci-image.cdx.json:application/json
138
+ oras discover --format tree ${{ fromJSON(steps.meta.outputs.json).tags[0] }}
139
+ node bin/verify.js -i ${{ fromJSON(steps.meta.outputs.json).tags[0] }} --public-key contrib/bom-signer/public.key
139
140
continue-on-error : true
140
- if : startsWith(github.ref, 'refs/tags/')
141
141
env :
142
142
SBOM_SIGN_ALGORITHM : RS512
143
143
SBOM_SIGN_PRIVATE_KEY : ${{ github.workspace }}/private.key
@@ -169,7 +169,7 @@ jobs:
169
169
username : ${{ github.actor }}
170
170
password : ${{ secrets.GITHUB_TOKEN }}
171
171
- name : Extract metadata (tags, labels) for Docker
172
- id : meta2
172
+ id : meta
173
173
uses : docker/metadata-action@v5
174
174
with :
175
175
images : |
@@ -181,8 +181,8 @@ jobs:
181
181
file : ci/Dockerfile-secure
182
182
platforms : linux/amd64,linux/arm64
183
183
push : true
184
- tags : ${{ steps.meta2 .outputs.tags }}
185
- labels : ${{ steps.meta2 .outputs.labels }}
184
+ tags : ${{ steps.meta .outputs.tags }}
185
+ labels : ${{ steps.meta .outputs.labels }}
186
186
- name : save private key to file
187
187
run : |
188
188
echo "$SBOM_SIGN_PRIVATE_KEY_DATA" | base64 -d > $GITHUB_WORKSPACE/private.key
@@ -191,12 +191,12 @@ jobs:
191
191
- name : Attach cdx sbom
192
192
run : |
193
193
corepack pnpm install --config.strict-dep-builds=true --package-import-method copy --frozen-lockfile
194
- node bin/cdxgen.js -t docker -o cdxgen-secure-oci-image.cdx.json ghcr.io/cyclonedx/cdxgen-secure:latest
194
+ node bin/cdxgen.js -t docker -o cdxgen-secure-oci-image.cdx.json ${{ fromJSON(steps.meta.outputs.json).tags[0] }}
195
195
node bin/verify.js -i cdxgen-secure-oci-image.cdx.json --public-key contrib/bom-signer/public.key
196
- oras attach --artifact-type sbom/cyclonedx ghcr.io/cyclonedx/cdxgen-secure:latest ./cdxgen-secure-oci-image.cdx.json:application/json
197
- oras discover --format tree ghcr.io/cyclonedx/cdxgen-secure:latest
196
+ oras attach --artifact-type sbom/cyclonedx ${{ fromJSON(steps.meta.outputs.json).tags[0] }} ./cdxgen-secure-oci-image.cdx.json:application/json
197
+ oras discover --format tree ${{ fromJSON(steps.meta.outputs.json).tags[0] }}
198
+ node bin/verify.js -i ${{ fromJSON(steps.meta.outputs.json).tags[0] }} --public-key contrib/bom-signer/public.key
198
199
continue-on-error : true
199
- if : startsWith(github.ref, 'refs/tags/')
200
200
env :
201
201
SBOM_SIGN_ALGORITHM : RS512
202
202
SBOM_SIGN_PRIVATE_KEY : ${{ github.workspace }}/private.key
@@ -239,7 +239,7 @@ jobs:
239
239
username : ${{ github.actor }}
240
240
password : ${{ secrets.GITHUB_TOKEN }}
241
241
- name : Extract metadata (tags, labels) for Docker
242
- id : meta2
242
+ id : meta
243
243
uses : docker/metadata-action@v5
244
244
with :
245
245
images : |
@@ -251,8 +251,8 @@ jobs:
251
251
file : ci/Dockerfile-deno
252
252
platforms : linux/amd64,linux/arm64
253
253
push : true
254
- tags : ${{ steps.meta2 .outputs.tags }}
255
- labels : ${{ steps.meta2 .outputs.labels }}
254
+ tags : ${{ steps.meta .outputs.tags }}
255
+ labels : ${{ steps.meta .outputs.labels }}
256
256
- name : save private key to file
257
257
run : |
258
258
echo "$SBOM_SIGN_PRIVATE_KEY_DATA" | base64 -d > $GITHUB_WORKSPACE/private.key
@@ -261,12 +261,12 @@ jobs:
261
261
- name : Attach cdx sbom
262
262
run : |
263
263
corepack pnpm install --config.strict-dep-builds=true --package-import-method copy --frozen-lockfile
264
- node bin/cdxgen.js -t docker -o cdxgen-deno-oci-image.cdx.json ghcr.io/cyclonedx/cdxgen-deno:latest
264
+ node bin/cdxgen.js -t docker -o cdxgen-deno-oci-image.cdx.json ${{ fromJSON(steps.meta.outputs.json).tags[0] }}
265
265
node bin/verify.js -i cdxgen-deno-oci-image.cdx.json --public-key contrib/bom-signer/public.key
266
- oras attach --artifact-type sbom/cyclonedx ghcr.io/cyclonedx/cdxgen-deno:latest ./cdxgen-deno-oci-image.cdx.json:application/json
267
- oras discover --format tree ghcr.io/cyclonedx/cdxgen-deno:latest
266
+ oras attach --artifact-type sbom/cyclonedx ${{ fromJSON(steps.meta.outputs.json).tags[0] }} ./cdxgen-deno-oci-image.cdx.json:application/json
267
+ oras discover --format tree ${{ fromJSON(steps.meta.outputs.json).tags[0] }}
268
+ node bin/verify.js -i ${{ fromJSON(steps.meta.outputs.json).tags[0] }} --public-key contrib/bom-signer/public.key
268
269
continue-on-error : true
269
- if : startsWith(github.ref, 'refs/tags/')
270
270
env :
271
271
SBOM_SIGN_ALGORITHM : RS512
272
272
SBOM_SIGN_PRIVATE_KEY : ${{ github.workspace }}/private.key
@@ -308,7 +308,7 @@ jobs:
308
308
username : ${{ github.actor }}
309
309
password : ${{ secrets.GITHUB_TOKEN }}
310
310
- name : Extract metadata (tags, labels) for Docker
311
- id : meta3
311
+ id : meta
312
312
uses : docker/metadata-action@v5
313
313
with :
314
314
images : |
@@ -320,8 +320,8 @@ jobs:
320
320
file : ci/Dockerfile-ppc64
321
321
platforms : linux/ppc64le
322
322
push : true
323
- tags : ${{ steps.meta3 .outputs.tags }}
324
- labels : ${{ steps.meta3 .outputs.labels }}
323
+ tags : ${{ steps.meta .outputs.tags }}
324
+ labels : ${{ steps.meta .outputs.labels }}
325
325
cache-from : type=gha,scope=cdxgen-ppc64
326
326
cache-to : type=gha,mode=max,scope=cdxgen-ppc64
327
327
containers-bun :
@@ -355,7 +355,7 @@ jobs:
355
355
password : ${{ secrets.GITHUB_TOKEN }}
356
356
357
357
- name : Extract metadata (tags, labels) for Docker
358
- id : meta5
358
+ id : meta
359
359
uses : docker/metadata-action@v5
360
360
with :
361
361
images : |
@@ -367,8 +367,8 @@ jobs:
367
367
file : ci/Dockerfile-bun
368
368
platforms : linux/amd64,linux/arm64
369
369
push : true
370
- tags : ${{ steps.meta5 .outputs.tags }}
371
- labels : ${{ steps.meta5 .outputs.labels }}
370
+ tags : ${{ steps.meta .outputs.tags }}
371
+ labels : ${{ steps.meta .outputs.labels }}
372
372
- name : save private key to file
373
373
run : |
374
374
echo "$SBOM_SIGN_PRIVATE_KEY_DATA" | base64 -d > $GITHUB_WORKSPACE/private.key
@@ -377,12 +377,12 @@ jobs:
377
377
- name : Attach cdx sbom
378
378
run : |
379
379
corepack pnpm install --config.strict-dep-builds=true --package-import-method copy --frozen-lockfile
380
- node bin/cdxgen.js -t docker -o cdxgen-bun-oci-image.cdx.json ghcr.io/cyclonedx/cdxgen-bun:latest
380
+ node bin/cdxgen.js -t docker -o cdxgen-bun-oci-image.cdx.json ${{ fromJSON(steps.meta.outputs.json).tags[0] }}
381
381
node bin/verify.js -i cdxgen-bun-oci-image.cdx.json --public-key contrib/bom-signer/public.key
382
- oras attach --artifact-type sbom/cyclonedx ghcr.io/cyclonedx/cdxgen-bun:latest ./cdxgen-bun-oci-image.cdx.json:application/json
383
- oras discover --format tree ghcr.io/cyclonedx/cdxgen-bun:latest
382
+ oras attach --artifact-type sbom/cyclonedx ${{ fromJSON(steps.meta.outputs.json).tags[0] }} ./cdxgen-bun-oci-image.cdx.json:application/json
383
+ oras discover --format tree ${{ fromJSON(steps.meta.outputs.json).tags[0] }}
384
+ node bin/verify.js -i ${{ fromJSON(steps.meta.outputs.json).tags[0] }} --public-key contrib/bom-signer/public.key
384
385
continue-on-error : true
385
- if : startsWith(github.ref, 'refs/tags/')
386
386
env :
387
387
SBOM_SIGN_ALGORITHM : RS512
388
388
SBOM_SIGN_PRIVATE_KEY : ${{ github.workspace }}/private.key
0 commit comments