ci: fix Node.js version for OIDC release + harden pipeline#8
Conversation
|
Note Gemini is unable to generate a review for this pull request due to the file types involved not being currently supported. |
|
Warning Review limit reached
Next review available in: 24 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (2)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
5a15314 to
a23e59b
Compare
a23e59b to
54f10c1
Compare
The release job set node-version 20 but installed npm@latest (npm 12), which requires Node.js >= 22.22.2, so `npm install -g npm@latest` failed with EBADENGINE. Node 20's bundled npm 10 also doesn't support OIDC trusted publishing (needs >= 11.5.1). Bump the release job to Node.js 24 and the checkout/setup-node actions to v5/v6 so npm@latest installs cleanly and supports trusted publishing.
54f10c1 to
7ec8529
Compare
Follow-ups from a pipeline review:
- release: add a concurrency group so two triggered releases can't race,
without cancelling an in-progress one
- release: skip the version bump on dry_run so a dry run has no side effects
- release: push to HEAD:${{ github.ref_name }} explicitly instead of HEAD
- test: also run Node.js 20 and 22 (kept 14/16/18); the package is released
on Node 24 but CI only tested up to 18
Fixes the failed release run and applies pipeline-review follow-ups.
Release node version (the actual failure)
The release job set
node-version: 20but installednpm@latest(npm 12), which requires Node.js>= 22.22.2— so Upgrade npm failed withEBADENGINE(run 29395807298). Node 20's bundled npm 10 also can't do OIDC trusted publishing (needs>= 11.5.1).actions/checkout@v4 → v5,actions/setup-node@v4 → v6(clears the Node 20 deprecation warning)Hardening (from review)
concurrencygroup so two triggered releases can't race (in-progress not cancelled)dry_runso a dry run has no side effectsHEAD:${{ github.ref_name }}explicitly instead ofHEADMerging does not trigger a release (
workflow_dispatchonly). After merge, run the Release workflow withdry_run: truefirst to validate the pipeline, then withversion_type: minorto cut 3.2.0 (requires the npm trusted publisher to be configured).