Loading...
Loading...
Add SLSA build-provenance attestations to existing GitHub Actions workflows. Use when the user wants to add artifact attestations, build provenance, or SLSA attestations to Docker container image builds in GitHub Actions CI/CD pipelines.
npx skill4agent add jim60105/copilot-prompt add-artifact-attestations-to-workflow.github/workflows/docker/build-push-actionpermissions:permissions:
id-token: write
attestations: write
contents: read # (existing)
packages: write # (existing)- name: Login to GHCR
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
registry: index.docker.io
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Login to Quay
uses: docker/login-action@v3
with:
registry: quay.io
username: ${{ secrets.QUAY_USERNAME }}
password: ${{ secrets.QUAY_TOKEN }}docker/build-push-action@v*id- name: Build and push image
id: build_push
uses: docker/build-push-action@v5
with:
context: .
push: true
tags: |
ghcr.io/${{ github.repository }}:latest
index.docker.io/${{ secrets.DOCKERHUB_USERNAME }}/your-repo:latest
quay.io/${{ github.repository_owner }}/your-repo:latestbuild_pushactions/attest-build-provenance@v3subject-namesubject-digest- name: Attest GHCR image
uses: actions/attest-build-provenance@v3
with:
subject-name: ghcr.io/${{ github.repository }}
subject-digest: ${{ steps.build_push.outputs.digest }}
- name: Attest Docker Hub image
uses: actions/attest-build-provenance@v3
with:
subject-name: index.docker.io/${{ secrets.DOCKERHUB_USERNAME }}/your-repo
subject-digest: ${{ steps.build_push.outputs.digest }}
- name: Attest Quay image
uses: actions/attest-build-provenance@v3
with:
subject-name: quay.io/${{ github.repository_owner }}/your-repo
subject-digest: ${{ steps.build_push.outputs.digest }}git add .github/workflows/docker_publish.yml # or whatever files you modified
git commit --signoff -m "ci: add build-provenance attestations for container images"