ci(release): add workflow_dispatch prepare-release workflow#124
Conversation
|
@kartikloops feel free to reuse the work in this branch. most of the stuff is done, jsust needs to customise to npm ecosystem. |
Adapt the workflow_dispatch release prep for the post-ts-migration tree: bump python/pyproject.toml + typescript package versions, re-pin README uvx URLs with #subdirectory=python, regenerate python/uv.lock, and prefer curated Unreleased changelog notes when present.
|
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #124 +/- ##
=======================================
Coverage 67.57% 67.57%
=======================================
Files 22 22
Lines 1610 1610
=======================================
Hits 1088 1088
Misses 522 522 ☔ View full report in Codecov by Harness. |
b364fb0 to
707e2f3
Compare
| OLD="${{ steps.version.outputs.current }}" | ||
| NEW="${{ steps.version.outputs.new }}" | ||
| # Ignore lockfile noise and node_modules; check project version sources. | ||
| FOUND=$(grep -rn "${OLD}" \ |
There was a problem hiding this comment.
will this mistakenly touch versions that we don't want to touch e.g. dependencies?
| --include="package.json" \ | ||
| --include="package-lock.json" \ | ||
| --include="server.json" \ | ||
| python/pyproject.toml typescript/package.json typescript/package-lock.json server.json \ |
There was a problem hiding this comment.
missing verification for readme/uv.lock
| git config user.name "openroad-ci" | ||
| git config user.email "54529053+openroad-ci@users.noreply.github.com" | ||
| git checkout -b "${BRANCH}" | ||
| git add \ |
There was a problem hiding this comment.
SKILL seems to update ROADMAP but not commit it.
|
|
||
| Dual-distribution bump (Python/PyPI + TypeScript/npm). | ||
|
|
||
| See [CHANGELOG.md](CHANGELOG.md) for full details. |
There was a problem hiding this comment.
use absolute URL or a ../../blob/<branch>/CHANGELOG.md form for this please
| - name: Generate changelog entries | ||
| run: python3 .github/scripts/generate_changelog_section.py | ||
|
|
||
| - name: Update python/pyproject.toml |
There was a problem hiding this comment.
is there also potentially an easier way to do this? i.e. make all versions align to a .mcp-version file or something for single source of truth? or must hard coded numbers be used for all versions in pyproject, package json etc.s
Summary
.github/workflows/prepare-release.ymlwith aworkflow_dispatchtriggerbump_type:patch,minor, ormajor.claude/skills/release/SKILL.mdas an automated CI workflowWhat it does
make test+make checkbefore touching any filespyproject.tomlbased on the selected bump typefeat:→ Added,fix:→ Fixed,chore:/ci:/build:/etc.→ Changed, with PR links)pyproject.toml,server.json,README.md(URL pins), andCHANGELOG.mduv.lockopenroad-cito arelease/vX.Y.Zbranch and opens a PR requesting review from @vvbandeiraNote: ROADMAP.md is intentionally not automated — that step requires human judgment about which future milestones are complete.
Test plan
patchuv.lockis regenerated