Skip to content

fix(release): migrate cosign signing to v3 bundle format (BUG-2091)#925

Merged
xarmian merged 1 commit into
mainfrom
fix/cosign-v3-bundle-signing
Jul 12, 2026
Merged

fix(release): migrate cosign signing to v3 bundle format (BUG-2091)#925
xarmian merged 1 commit into
mainfrom
fix/cosign-v3-bundle-signing

Conversation

@xarmian

@xarmian xarmian commented Jul 11, 2026

Copy link
Copy Markdown
Collaborator

What

The v0.10.0-rc.1 release failed at Run GoReleaser because the cosign-installer bump (v3.10.1 → v4.1.2) pulled the cosign binary from v2.x to v3.0.6. cosign v3 defaults --new-bundle-format=true for sign-blob and removes the separate --output-certificate/--output-signature outputs:

Error: signing dist/checksums.txt: create bundle file: open : no such file or directory

Fix

Migrate .goreleaser.yaml signs block to the official cosign-v3 path: emit a single Sigstore bundle checksums.txt.sigstore.json via --bundle, replacing the .pem + .sig pair. Also refreshes the stale verify comment.

Artifact-shape change (intentional)

  • checksums.txt.pem + checksums.txt.sigchecksums.txt.sigstore.json
  • Release asset count: 15 → 14
  • Verify: cosign verify-blob --bundle checksums.txt.sigstore.json --certificate-identity-regexp ... checksums.txt

Validation

Regular CI can't exercise the signing path (tag-triggered only) — this is validated by re-cutting v0.10.0-rc.2. Confirmed locally that the cosign v3 --bundle command is flag-valid (cosign v3.0.6, same binary the runner installs).

Follow-ups (tracked on BUG-2091)

  • PLAYB-1160 Step 5 smoke test (asset count 15→14 + 5a verify command)
  • DOC-2090 (v0.10.0 release notes) Verifying section
  • BLOG-1022 public verify instructions

Closes BUG-2091. Supersedes stale-comment drift in TASK-1032.

https://claude.ai/code/session_015yuBJQYfDj95cgX3DaD8SF

The cosign-installer action bump (v3.10.1 → v4.1.2) pulled the cosign
binary from v2.x to v3.0.6. cosign v3 defaults --new-bundle-format=true
for sign-blob and drops the separate --output-certificate/--output-signature
outputs, breaking GoReleaser's signs block:

  Error: signing dist/checksums.txt: create bundle file: open : no such file or directory

Caught by the v0.10.0-rc.1 release run. Migrate to the official cosign-v3
path (https://goreleaser.com/blog/cosign-v3/): emit a single Sigstore
bundle checksums.txt.sigstore.json via --bundle, replacing the .pem/.sig
pair. Verify with `cosign verify-blob --bundle checksums.txt.sigstore.json`.

Also refreshes the stale verify comment (was checksums.txt.cosign.bundle).

Claude-Session: https://claude.ai/code/session_015yuBJQYfDj95cgX3DaD8SF
@xarmian xarmian merged commit 8c590b4 into main Jul 12, 2026
6 checks passed
@xarmian xarmian deleted the fix/cosign-v3-bundle-signing branch July 12, 2026 00:12
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