Skip to content

Add checksums and build provenance to release assets - #9

Merged
windymelt merged 2 commits into
mainfrom
release-integrity
Aug 11, 2026
Merged

windymelt merged 2 commits into
mainfrom
release-integrity

Conversation

@windymelt

Copy link
Copy Markdown
Owner

概要

v* タグでのリリースに、成果物の検証手段を 2 つ追加します。

変更内容

.github/workflows/release.yml

  • checksums.txt の生成: アセットを集めた後に sha256sum comport-* > checksums.txt を実行。files: release/* により Release へ自動で添付される。利用者は sha256sum --check --ignore-missing checksums.txt で検証できる
  • build provenance attestation: actions/attest-build-provenance を追加し、4 つのバイナリすべてを対象に attestation を生成する。鍵の管理は不要(GitHub の Sigstore インスタンスが署名する)。利用者は gh attestation verify <file> --repo windymelt/comport で、どのワークフロー実行・どのコミットから作られたかを確認できる
    • これに伴い release ジョブの permissionsid-token: writeattestations: write を追加
    • action はリポジトリの方針どおり full-length SHA でピン(v4.2.2

README.md

Installation の下に "Verifying a download" を追加。checksums.txt の取得、sha256sum --checkgh attestation verify の例を記載した。checksums.txt にはリネーム前のファイル名が記録される点も注記している。

補足

圧縮(tar.gz 化)は行っていない。静的リンクの単一バイナリなので、curl 1 行 + chmod +x でインストールできる形を保つ方が扱いやすいと判断した。

🤖 Generated with Claude Code

windymelt and others added 2 commits August 11, 2026 20:07
Generate a checksums.txt (sha256sum format) alongside the release
binaries, and attest each binary with actions/attest-build-provenance so
consumers can tie it back to the workflow run that produced it.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@windymelt
windymelt merged commit 4e3fd49 into main Aug 11, 2026
5 checks passed
@windymelt
windymelt deleted the release-integrity branch August 11, 2026 11:18
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