-
Notifications
You must be signed in to change notification settings - Fork 0
Automate GitHub releases on tag push #10
Copy link
Copy link
Open
Labels
ciContinuous integration / GitHub ActionsContinuous integration / GitHub ActionsroadmapItems the maintainer has decided to defer; written record in docs/roadmap.mdItems the maintainer has decided to defer; written record in docs/roadmap.mdtoolingBuild, test, release, or developer-tooling workBuild, test, release, or developer-tooling work
Metadata
Metadata
Assignees
Labels
ciContinuous integration / GitHub ActionsContinuous integration / GitHub ActionsroadmapItems the maintainer has decided to defer; written record in docs/roadmap.mdItems the maintainer has decided to defer; written record in docs/roadmap.mdtoolingBuild, test, release, or developer-tooling workBuild, test, release, or developer-tooling work
Today every release is manual (
gh release create ... --notes-file /tmp/...). v0.3.0 through v0.3.3 were all hand-crafted. Risk: someone forgets to attach the CHANGELOG section, or pastes the wrong one, or includes em-dashes that should not be there.Proposal:
.github/workflows/release.ymltriggered onpush: tags: 'v*'. Extract the matching## v<tag>section fromCHANGELOG.md; create the GitHub Release with that body and--latestif the tag is the highest semver; assert ASCII-only and no em-dash before posting.Why deferred: small file, but adds a public side-effect to every tag push. Want one more manual release cycle to confirm the format is stable.
See docs/roadmap.md for context.