Skip to content
This repository was archived by the owner on Sep 10, 2024. It is now read-only.

Commit 8a80d07

Browse files
committed
CI: transform the bake output for a better release message
1 parent f229ced commit 8a80d07

File tree

1 file changed

+23
-10
lines changed

1 file changed

+23
-10
lines changed

.github/workflows/build.yaml

Lines changed: 23 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@ jobs:
132132
runs-on: ubuntu-latest
133133

134134
outputs:
135-
metadata: ${{ steps.bake.outputs.metadata }}
135+
metadata: ${{ steps.output.outputs.metadata }}
136136

137137
permissions:
138138
contents: read
@@ -240,6 +240,16 @@ jobs:
240240
base.cache-from=type=registry,ref=${{ env.BUILDCACHE }}:buildcache
241241
base.cache-to=type=registry,ref=${{ env.BUILDCACHE }}:buildcache,mode=max
242242
243+
- name: Transform bake output
244+
# This transforms the ouput to an object which lookes like this:
245+
# { reguar: { digest: "…", tags: ["…", "…"] }, debug: { digest: "…", tags: ["…"] }, … }
246+
id: output
247+
if: github.event_name != 'pull_request'
248+
run: |
249+
echo 'metadata<<EOF' >> $GITHUB_OUTPUT
250+
echo '${{ steps.bake.outputs.metadata }}' | jq -c 'map_values({ digest: .["containerimage.digest"], tags: (.["image.name"] | split(",")) })' >> $GITHUB_OUTPUT
251+
echo 'EOF' >> $GITHUB_OUTPUT
252+
243253
- name: Sign the images with GitHub Actions provided token
244254
# Only sign on tags and on commits on main branch
245255
if: |
@@ -248,9 +258,9 @@ jobs:
248258
249259
run: |-
250260
cosign sign --yes \
251-
"${{ env.IMAGE }}@${{ fromJSON(steps.bake.outputs.metadata).regular['containerimage.digest'] }}" \
252-
"${{ env.IMAGE }}@${{ fromJSON(steps.bake.outputs.metadata).debug['containerimage.digest'] }}" \
253-
"${{ env.IMAGE_SYN2MAS }}@${{ fromJSON(steps.bake.outputs.metadata).syn2mas['containerimage.digest'] }}"
261+
"${{ env.IMAGE }}@${{ fromJSON(steps.output.outputs.metadata).regular.digest }}" \
262+
"${{ env.IMAGE }}@${{ fromJSON(steps.output.outputs.metadata).debug.digest }}" \
263+
"${{ env.IMAGE_SYN2MAS }}@${{ fromJSON(steps.output.outputs.metadata).syn2mas.digest }}"
254264
255265
256266
syn2mas:
@@ -330,33 +340,36 @@ jobs:
330340
331341
- Digest:
332342
```
333-
${{ env.IMAGE }}@${{ fromJSON(needs.build-image.outputs.metadata).regular['containerimage.digest'] }}
343+
${{ env.IMAGE }}@${{ fromJSON(needs.build-image.outputs.metadata).regular.digest }}
334344
```
335345
- Tags:
336346
```
337-
${{ fromJSON(needs.build-image.outputs.metadata).regular['image.name'] }}
347+
${{ join(fromJSON(needs.build-image.outputs.metadata).regular.tags, '
348+
') }}
338349
```
339350
340351
Debug variant:
341352
342353
- Digest:
343354
```
344-
${{ env.IMAGE }}@${{ fromJSON(needs.build-image.outputs.metadata).debug['containerimage.digest'] }}
355+
${{ env.IMAGE }}@${{ fromJSON(needs.build-image.outputs.metadata).debug.digest }}
345356
```
346357
- Tags:
347358
```
348-
${{ fromJSON(needs.build-image.outputs.metadata).debug['image.name'] }}
359+
${{ join(fromJSON(needs.build-image.outputs.metadata).debug.tags, '
360+
') }}
349361
```
350362
351363
`syn2mas` migration tool:
352364
353365
- Digest:
354366
```
355-
${{ env.IMAGE_SYN2MAS }}@${{ fromJSON(needs.build-image.outputs.metadata).syn2mas['containerimage.digest'] }}
367+
${{ env.IMAGE_SYN2MAS }}@${{ fromJSON(needs.build-image.outputs.metadata).syn2mas.digest }}
356368
```
357369
- Tags:
358370
```
359-
${{ fromJSON(needs.build-image.outputs.metadata).syn2mas['image.name'] }}
371+
${{ join(fromJSON(needs.build-image.outputs.metadata).syn2mas.tags, '
372+
') }}
360373
```
361374
362375
files: |

0 commit comments

Comments
 (0)