You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(supply-chain): sign published images and generate the chart image inventory
Enterprise security reviews ask for three artifacts Sim did not publish: a
signature proving who built an image, SLSA provenance describing how, and an
SBOM listing what is inside. Add all three, plus the image inventory an
operator needs to mirror Sim into a disconnected registry.
attest-images runs after create-ghcr-manifests rather than inside the build.
buildx's own provenance/sbom attestations stay off because the extra manifests
they add to an index break the imagetools retagging promote-images depends on;
attaching attestations to the finished index leaves it untouched, since they
are stored as separate referrer manifests. The subject is the sha index digest
— imagetools create is deterministic, so the version and latest indexes built
from the same per-arch manifests share that digest and one attestation covers
every tag a customer can pull.
The digest comes from `{{json .Manifest}}` piped through jq rather than
`{{.Manifest.Digest}}`: the latter resolves the index to the runner's own
platform, which would attest one architecture and leave the pulled index
unsigned.
helm/sim/images.yaml is derived from the rendered chart, not from values.yaml,
because one image is written directly into a template — the NVIDIA device
plugin — and a values-derived list misses it in the case that is hardest to
notice, where the mirror succeeds and one pod still pulls from the internet.
Tags stay unresolved: digests belong to a release, and the chart's sim.image
helper already accepts a per-image digest for pinning at install time.
The check runs in the helm workflow, which has Helm set up; check:audits does
not.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015BwsJTEQRzWJaY4BRCkPZt
0 commit comments