ci(release): publish verified installer assets - #419
Open
mogul wants to merge 1 commit into
Open
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Context
Implements #408 by moving installer distribution from a moving raw
mainURL to release assets that can be verified and pinned.What changed
install.sh, injects the exact release commit SHA intoDEFAULT_RELEASE_SHA, generatesSHA256SUMS, and uploads both files to the GitHub release.DEFAULT_RELEASE_VERSION; release assets add the canonical commit SHA pin.npm run lint:md, since initialized third-party submodules should not be normalized by this repo.Verification
shellcheck --severity=warning install.sh test/bats/05-install.bats— passed../scripts/test-acq-bats test/bats/05-install.bats— passed, 2 tests../scripts/test-acq-bats— passed, 394 tests.npm run lint:md— passed, 0 issues.ruby -e 'require "yaml"; YAML.load_file(".github/workflows/release.yml"); YAML.load_file(".github/release.yml")'— passed.git diff --check— passed.shasum -a 256 -c SHA256SUMS— passed.Rollback
Revert this PR. The installer will return to the previous raw
mainURL/default-ref behavior and release-please will stop uploading installer assets.Security impact
Positive supply-chain impact: release downloads become checksum-verifiable, and release installer assets default clone installs to a release tag plus an exact release commit SHA check. No authn/authz runtime paths, secret handling paths, or sandbox permissions are broadened.
AI assistance
AI-assisted implementation with human review required before merge.