Repository navigation
ci(release): drive release-please from the org config and manifest - #93
Merged
Merged
Conversation
Add release-please-config.json (verbatim from the Resources template) and .release-please-manifest.json, and pass them to the action instead of release-type, so release notes use the org changelog sections. Rename release-please.yml to release.yml and align it with templates/sign-and-publish-caller.yml: concurrency group, template dispatch input and comments, upload-artifact v7.0.2. The target, Windows version resource, smoke test and AUR jobs stay. Remove scripts/sign-release.sh: the org secret is the only copy of the key and signing happens only in the shared workflow. Rewrite docs/release-signing.md accordingly: app signatures are verified too, key custody is COLONY_SIGNING_KEY_PEM, recovery is the draft-release dispatch, and the rotation runbook covers the org-wide impact and the PEM copies.
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.
What changed
release-please configuration (REL-2, REL-3)
release-please-config.json: verbatim copy oftemplates/release-please-config.jsonfrom Project-Colony-Resources (package., release typerust,CHANGELOG.md, tags without component, no draft/prerelease/bump-minor-pre-major, the org changelog sections and the release PR header)..release-please-manifest.json:{".": "0.10.4"}, matchingCargo.tomlonmainand the latest tagv0.10.4.config-fileandmanifest-fileinstead ofrelease-type: rust. Withrelease-typeset, the action ignored config files, so release notes used the default sections ("Bug Fixes", documentation hidden).Release workflow (REL-4)
.github/workflows/release-please.ymlis renamed to.github/workflows/release.ymland aligned withtemplates/sign-and-publish-caller.yml:concurrency: release-${{ github.ref }}withcancel-in-progress: false, the template's dispatch input description and comments (gh workflow run release.yml --ref vX -f tag=vX),actions/upload-artifactv7.0.2 (cf430e0),dtolnay/rust-toolchainate2a55d2(master, 2026-10-09) withtoolchain: stable.targetjob that refuses a published tag, the Windows version resource check, the--versionsmoke test, the Intel macOS architecture check, and the AUR publish after sign-and-publish. The shared workflow stays pinned at619460f.aur-publish.ymlnames the new file.Signing
scripts/sign-release.sh(and with itscripts/) is removed. TheCOLONY_SIGNING_KEY_PEMorganisation secret is the only copy of the key, and signing happens only in the shared workflow, so a hand-signing path cannot work and should not be documented.docs/release-signing.mdis rewritten:<asset>.sigmust verify against the same keys, and the signature and.metarequirements are pinned per app once verified (src/download.rs);COLONY_SIGNING_KEY_PEMorg secret, not a file under~/.config/colony/release-signing;templates/sign-and-publish-caller.ymlandtemplates/program/README.md, each program's release workflow and README);colony-linux.src/signing.rs: comments and one test name no longer refer to the deleted script.Verification
actionlint1.7.12 on every workflow: clean.release-please-config.jsonis byte-identical to the Resources template; both JSON files parse.actions/upload-artifacttagv7.0.2is commitcf430e0, anddtolnay/rust-toolchain@e2a55d2resolves.RELEASE_PUBLIC_KEYSinsrc/signing.rs.cargo fmt --checkpasses.After merge, the release-please job on
mainshould refresh #90 with the org sections ("Fixes", "Documentation") and keep theCargo.tomlandCargo.lockbump. #90 is not merged as part of this change.