Publish SLSA provenance, sign release artifacts, and attest SBOMs so downstream consumers can verify what they're deploying.
Requirements and Context
.github/workflows/sbom-scan.yml already generates SPDX/CycloneDX SBOMs weekly, and release.yml publishes releases. The missing pieces are SLSA provenance generation (attesting the build came from this repo/ref), artifact signing (cosign), and attaching the SBOM to each release — the standard controls that make supply-chain claims verifiable.
Objectives
- Add a release workflow step that generates SLSA provenance (e.g.,
slsa-framework/slsa-github-generator).
- Sign release artifacts and container images with cosign and attach signatures.
- Attach the generated SBOM to each release asset and the OCI image.
- Document how consumers verify provenance/signatures in
docs/.
Suggested Execution
git checkout -b feat/slsa-provenance.
- Extend
.github/workflows/release.yml (and sbom-scan.yml) with provenance + cosign steps.
- Add
docs/supply-chain-verification.md.
- Validate workflow YAML and perform a dry-run release on a test tag.
Acceptance Criteria
Guidelines
- Use pinned action SHAs for the provenance/signing steps.
- Keep the existing weekly SBOM job; this adds per-release attestation.
Timeframe: 96 hours
Requirements and Context
.github/workflows/sbom-scan.ymlalready generates SPDX/CycloneDX SBOMs weekly, andrelease.ymlpublishes releases. The missing pieces are SLSA provenance generation (attesting the build came from this repo/ref), artifact signing (cosign), and attaching the SBOM to each release — the standard controls that make supply-chain claims verifiable.Objectives
slsa-framework/slsa-github-generator).docs/.Suggested Execution
git checkout -b feat/slsa-provenance..github/workflows/release.yml(andsbom-scan.yml) with provenance + cosign steps.docs/supply-chain-verification.md.Acceptance Criteria
Guidelines
Timeframe: 96 hours