Skip to content

feat(ci): attest build provenance - #77

Merged
hyperpolymath merged 1 commit into
mainfrom
feat/attest-build-provenance
Jun 25, 2026
Merged

hyperpolymath merged 1 commit into
mainfrom
feat/attest-build-provenance

Conversation

@hyperpolymath

Copy link
Copy Markdown
Owner

Build-provenance attestation

Adds GitHub native build-provenance attestation (actions/attest-build-provenance@e8998f94… # v2) to the release pipeline, mirroring the proven estate exemplar.

Attested artifacts

  • Container image — publish-container.yml: attests ghcr.io/${{ github.repository }} by digest from the docker/build-push-action push step (push-to-registry: true). Added job-level id-token: write + attestations: write permissions and id: push to the build step.
  • Release binaries — release.yml: attests artifacts/**/* + SHA256SUMS.txt (the downloaded build artifacts and checksums) after the softprops release step. Added id-token: write + attestations: write to the release job (kept contents: write).

Out of scope / skipped

  • ghcr-publish.yml — builds/pushes via nerdctl, which has no clean digest output suitable for attestation. The docker/build-push-action path in publish-container.yml already covers container attestation, so this workflow is intentionally left untouched.
  • SLSA generator workflow and the package-manager publish-*.yml files (cargo/npm/scoop/etc.) — package registries, out of scope.

YAML validated with yaml.safe_load. Do not merge yet.

Estate artifact-attestation rollout mirroring the proven exemplar.
Attests: container image (publish-container.yml) + release binaries artifacts/**/* + SHA256SUMS.txt (release.yml).
@hyperpolymath
hyperpolymath merged commit 71ad875 into main Jun 25, 2026
6 of 16 checks passed
@hyperpolymath
hyperpolymath deleted the feat/attest-build-provenance branch June 25, 2026 08:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant