You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fix: address review findings in release automation
- release.yml: use RELEASE_TOKEN PAT for gh release create so the
release:published event triggers npm-publish (GITHUB_TOKEN events
don't cascade to other workflows)
- release.yml: checkout merge_commit_sha in tag job instead of ref:main
to avoid tagging later commits
- release.yml: checkout ref:main in prepare job so dispatching from a
feature branch doesn't pollute the release PR
- release.yml: constrain preid to type:choice[beta] to match
npm-publish.yml's tag detection
- release.yml: drop -f on push so re-runs fail loudly instead of
clobbering manual RELEASES.md edits; drop pr-edit fallback
- release.yml: ensure release label exists before gh pr create
- release.yml: make tag push idempotent for re-runs after partial
failure
- bump-version.mjs: update workspace dependency ranges so major bumps
don't leave examples pointing at the old major
- bump-version.mjs: run npm install --package-lock-only so npm ci
on the release PR doesn't fail on lockfile mismatch
- npm-publish.yml: add npm-tag detection to publish-examples so beta
example releases don't overwrite latest
- .github/release.yml: use [bot] suffix in author excludes so
dependabot PRs are actually filtered from release notes
- CONTRIBUTING.md: document RELEASE_TOKEN setup; fix npm run -- syntax
--body "Bumps all packages to \`$VERSION\`. Add release notes to \`RELEASES.md\` before merging. Merging this PR will automatically tag and create the GitHub Release, which triggers npm-publish." \
Copy file name to clipboardExpand all lines: CONTRIBUTING.md
+7-1Lines changed: 7 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -537,6 +537,11 @@ Before publishing releases, ensure the following are configured:
537
537
- Name it `Release`
538
538
- Add required reviewers or other protection rules as needed
539
539
540
+
3.**`RELEASE_TOKEN` secret**: The release workflow creates GitHub Releases that must trigger the npm-publish workflow. Events from the default `GITHUB_TOKEN` don't cascade to other workflows, so a separate token is needed.
541
+
- Create a [fine-grained PAT](https://github.com/settings/personal-access-tokens/new) scoped to this repository with **Contents: write** permission
542
+
- Go to Settings > Secrets and variables > Actions > New repository secret
543
+
- Name: `RELEASE_TOKEN`, value: the PAT
544
+
540
545
### Publishing a Release
541
546
542
547
Releases are automated via the [Release workflow](https://github.com/modelcontextprotocol/ext-apps/actions/workflows/release.yml).
@@ -552,6 +557,7 @@ Releases are automated via the [Release workflow](https://github.com/modelcontex
552
557
- The workflow bumps the version across all packages and opens a PR labeled `release`
553
558
- Add release notes to `RELEASES.md` in the PR
554
559
- Approve and merge the PR
560
+
-_Note: re-running the workflow for the same version fails if the branch already exists. Delete the `release/vX.Y.Z` branch first if you need to redo the bump._
555
561
556
562
3.**Done** — merging the PR automatically tags the commit and creates the GitHub Release (with auto-generated notes), which triggers the [npm-publish workflow](https://github.com/modelcontextprotocol/ext-apps/actions/workflows/npm-publish.yml). Approve the deployment once when prompted.
557
563
@@ -560,7 +566,7 @@ Releases are automated via the [Release workflow](https://github.com/modelcontex
560
566
You can also bump versions locally:
561
567
562
568
```bash
563
-
npm run bump patch # or minor, major, prerelease --preid=beta
569
+
npm run bump -- patch # or: minor | major | prerelease --preid=beta
564
570
```
565
571
566
572
Then commit, push, and create a GitHub Release manually — the npm-publish workflow triggers on release creation.
0 commit comments