Skip to content

Commit

Permalink
workflows: actions/attest-build-provenance
Browse files Browse the repository at this point in the history
Provide Github provenance for release assets cretaed during a workflow.
  • Loading branch information
lectrical committed Dec 27, 2024
1 parent 8bcdc93 commit 67cf80d
Showing 1 changed file with 19 additions and 1 deletion.
20 changes: 19 additions & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -294,6 +294,9 @@ jobs:
docker:
runs-on: ubuntu-latest
permissions:
id-token: write
contents: read
attestations: write
packages: write
needs: linux
steps:
Expand Down Expand Up @@ -329,7 +332,8 @@ jobs:
id: metadata
with:
images: ghcr.io/${{ github.repository }}
tags: ${{ startsWith(github.ref, 'refs/tags/jq-')
tags: >
${{ startsWith(github.ref, 'refs/tags/jq-')
&& format('type=match,pattern=jq-(.*),group=1,value={0}', github.ref_name)
|| 'type=sha,format=long' }}
- name: Set up QEMU
Expand All @@ -344,18 +348,28 @@ jobs:
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and release Docker image
uses: docker/build-push-action@v6
id: build-push
with:
context: .
push: ${{ startsWith(github.ref, 'refs/tags/jq-') }}
provenance: false
platforms: linux/386,linux/amd64,linux/arm64,linux/mips64le,linux/ppc64le,linux/riscv64,linux/s390x
tags: ${{ steps.metadata.outputs.tags }}
labels: ${{ steps.metadata.outputs.labels }}
- name: attest-build-provenance
if: startsWith(github.ref, 'refs/tags/')
uses: actions/attest-build-provenance@v2
with:
subject-name: ghcr.io/${{ github.repository }}
subject-digest: ${{ steps.build-push.outputs.digest }}
push-to-registry: true

release:
runs-on: ubuntu-latest
permissions:
contents: write
id-token: write
attestations: write
pull-requests: write
environment: release
needs: [linux, macos, windows, dist, docker]
Expand All @@ -378,6 +392,10 @@ jobs:
sha256sum jq-* > sha256sum.txt
gh release create "$TAG_NAME" --draft --title "jq ${TAG_NAME#jq-}" --generate-notes
gh release upload "$TAG_NAME" --clobber jq-* sha256sum.txt
- name: attest-build-provenance
uses: actions/attest-build-provenance@v2
with:
subject-path: jq-*
- name: Import GPG key
uses: crazy-max/ghaction-import-gpg@v6
with:
Expand Down

0 comments on commit 67cf80d

Please # to comment.