ci: port alpha-aware release/publish flow + pnpm 10 to alpha#4464
Conversation
- Add create-release-pr.yml (verbatim from master; already special-cases alpha) - Replace publish.yml with master's PR-merge-triggered version (verbatim) - Replace ci.yml with master's, adding 'alpha' to push/pull_request branch triggers
…tag-backed version Version bump now arrives via the release PR; script only validates + tags + publishes (no local commit/branch push). Matches the pull_request-merge publish trigger.
- Add root test:node delegating to packages/less - Add packages/less test:node -> grunt test:node - Register grunt test:node target reusing existing alpha shell targets (node ESM+CJS, no browser/sauce)
…nfra-only) - packageManager pnpm@8.15.0 -> pnpm@10.34.5 (owner: pnpm 10 for v5 alpha) - regenerate pnpm-lock.yaml to lockfileVersion 9.0 against alpha's EXISTING packages/less (no ESM refactor); verified --frozen-lockfile --ignore-scripts passes - pnpm 10 needs Node >=18.12; ported workflows use lts/* (resolves >=18) - CI-toolchain change only: packages/less engines.node left at alpha's >=14 (unchanged)
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
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 |
|
| } catch (e) { | ||
| console.log(`⚠️ Push failed, but continuing with publish...`); | ||
| } | ||
| execSync(`git push origin "${tagName}"`, { cwd: ROOT_DIR, stdio: 'inherit' }); |
There was a problem hiding this comment.
When an alpha validation or npm publish fails after this point, the workflow has already pushed vX.Y.Z to GitHub without publishing the package. A rerun then fails on the existing remote tag before it can retry the publish, leaving the release stuck until the tag is cleaned up manually.
Release/publish infrastructure only — no
packages/less/srcchanges.Ports the alpha-aware release-PR flow from master onto
alpha:create-release-pr.yml(opens achore: alpha release vXPR on push toalpha),publish.yml(publishes on release-PR merge,--prerelease),ci.yml(+alphabranch filters) — from master.bump-and-publish.js— master's idempotent, tag-backed version.test:nodewiring on alpha's existingpackages/lessbuild.packageManager→pnpm@10.34.5with a regenerated v9 lockfile.First of a two-part sequence: this modernizes the release machinery; the v5 content (adoption modules replacing
packages/less) lands in a follow-up PR. Versions intentionally left as-is (reconciled with the content PR).