feat(release): publish Linux binary artifacts #137
No reviewers
Labels
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Slipstream/auto_review!137
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "issue-121-linux-binary-provenance"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Verification
Closes #121
This PR introduces the publication of Linux binary artifacts as Forgejo Release assets, including checksums, signatures, and metadata. The changes appear well-structured and include necessary updates to documentation and threat models. The PR seems safe to merge, with minor notes on ensuring secure execution of build and verification steps.
Walkthrough
opensshto the list of dependencies, likely for handling SSH signatures.@ -102,6 +104,154 @@ jobs:RELEASE_CANDIDATE_SHA="$(git rev-parse "$RELEASE_MERGE_SHA^2")"🟡 Warning: Ensure that the
ssh-keygencommands are executed in a secure manner, especially when handling sensitive keys and signatures.Reflection: this was a security guardrail gap in the release-tooling contract tests—the workflow already used
chmod 600, but the tests did not require private tempdir creation or failure-path cleanup for key material.Remediated in
6cbc467: the publish workflow now setsumask 077, writesRELEASE_SIGNING_KEYunder a privatemktemp -ddirectory, installstrap 'rm -rf "$signing_dir"' EXITbefore signing, and keeps private key material out ofrelease-artifacts. I also added a release tooling contract test for this handling.Verification:
bash tests/release_tooling_test.shpasses.New commits pushed, approval review dismissed automatically according to repository settings
This PR enhances the release process by publishing Linux binary artifacts and improving security measures for handling signing keys. The changes appear well-structured and safe to merge.
Walkthrough
Δ since
9e8c458:trapcommand is added to clean up the temporary directory, preventing potential security risks from leftover files.🟡 Warning: Ensure that the
trapcommand is correctly set to clean up the temporary directory even if the script exits unexpectedly. This is crucial for security and resource management.Reflection: this was a missing security-test pressure gap in the release tooling contract. The previous guardrail required an
EXITcleanup trap before signing but did not require interrupt/termination cleanup coverage.Remediated in
fb61618: the workflow cleanup trap now coversEXIT TERM INTbefore the signing key is written or used, and the release tooling test now requires each of those signals to be covered before any signing command.Verification:
bash tests/release_tooling_test.shpasses.New commits pushed, approval review dismissed automatically according to repository settings
The PR enhances the release process by adding Linux binary artifacts and improving the cleanup mechanism in the release workflow. The changes appear safe to merge, with minor notes on ensuring comprehensive signal handling in traps.