Skip to content

Sign release checksums and harden release workflows - #7

Merged
DaniusKalv merged 6 commits into
debian/latestfrom
debian/signing
Jun 12, 2026
Merged

Sign release checksums and harden release workflows#7
DaniusKalv merged 6 commits into
debian/latestfrom
debian/signing

Conversation

@DaniusKalv

@DaniusKalv DaniusKalv commented Jun 12, 2026

Copy link
Copy Markdown
Member

Summary

  • Sign SHA256SUMS with the Kurokesu archive signing key and publish
    SHA256SUMS.asc as a release asset. The signature is verified in CI
    against the public key pinned at .github/keys/kurokesu-archive-public.asc.
  • Split the release job: signing runs with a read-only token, publishing
    runs without the key.
  • Harden workflow shell steps (set -euo pipefail, array-based bundling
    with empty-set guards), pin third-party actions to commit SHAs and stop
    persisting checkout credentials.

Test plan

  • First tagged release: sign job verifies the signature against the
    committed public key, SHA256SUMS.asc appears in release assets.
  • Verify on a clean machine: import kurokesu-archive-public.asc,
    gpg --verify SHA256SUMS.asc SHA256SUMS.

Signed-off-by: Danius Kalvaitis <danius@kurokesu.com>
Signed-off-by: Danius Kalvaitis <danius@kurokesu.com>
Signed-off-by: Danius Kalvaitis <danius@kurokesu.com>
Signed-off-by: Danius Kalvaitis <danius@kurokesu.com>
Signed-off-by: Danius Kalvaitis <danius@kurokesu.com>
Signed-off-by: Danius Kalvaitis <danius@kurokesu.com>
@DaniusKalv DaniusKalv self-assigned this Jun 12, 2026
@DaniusKalv DaniusKalv added the enhancement New feature or request label Jun 12, 2026
@DaniusKalv
DaniusKalv merged commit 52d7e48 into debian/latest Jun 12, 2026
2 checks passed
@DaniusKalv
DaniusKalv deleted the debian/signing branch June 26, 2026 15:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant