[CI] Release-PR + tag-triggered publish workflows#358
Open
justin13888 wants to merge 1 commit into
Open
Conversation
Deploying capsule with
|
| Latest commit: |
75007ae
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://3414ed96.capsule-22k.pages.dev |
| Branch Preview URL: | https://ci-release-workflows.capsule-22k.pages.dev |
1acf085 to
36db49a
Compare
5030b2b to
75007ae
Compare
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.
Description
Third and final PR in the release-automation stack for #18 (stacked on #357). Adds the automated, reviewable release flow.
Flow
prepare-release.yml(workflow_dispatch, optional explicit version): computes the next version withconvco version --bump, runsjust set-versionacross all packages, regenerates the CHANGELOG (titled with the version), and opens arelease/vX.Y.ZPR. The PR's own CI is the "all checks before release" gate; the CHANGELOG is hand-editable there.chore(release): vX.Y.Zlands onmaster.release.yml(push: master): detects the release commit (robust to the repo's merge-commit strategy + an already-existing tag), builds thecapsuleCLI for Linux/macOS (Windows best-effort), and publishes a GitHub Release withconvco-generated notes and the binaries attached.gh release createalso creates the tag — so build + publish happen in one run, avoiding theGITHUB_TOKENre-trigger pitfall (no PAT needed on this path).Other
justfile—changelogrecipe takes an optional title so a release section is titledvX.Y.Z(default staysUnreleased).CONTRIBUTING.md— documents local setup (mise install+ hooks), enforced semantic commits, and the full release process.One-time setup (documented in CONTRIBUTING): add a repo secret
RELEASE_PAT(PAT withcontents+pull-requestswrite) — used only so the release PR triggers CI (PRs opened with the default token don't).Verification (local)
YAML.load_file).just changelog 0.2.0titles the section## v0.2.0;convco version --bump→0.1.0;convco changelog -m 1 --unreleased <ver>produces titled notes.markdownlint→ 0 errors.convcocommit checks pass.prepare-releaserun with an explicit version is the end-to-end smoke test.Related Issues
Closes #18 (stack 3/3).
Contributor Checklist