Skip to content

Install the Node toolchain before promoting - #30

Merged
ChrisonSimtian merged 1 commit into
developfrom
fix/promotion-needs-node-toolchain
Sep 9, 2026
Merged

ChrisonSimtian merged 1 commit into
developfrom
fix/promotion-needs-node-toolchain

Conversation

@ChrisonSimtian

Copy link
Copy Markdown
Contributor

The first real promotion of v10.4.31 failed in both marketplace jobs:

PublishVsix  Failed  < 1sec  // ArgumentException: Could not find 'vsce' via '/usr/bin/which'.
PublishVsix  Failed  < 1sec  // ArgumentException: Could not find 'ovsx' via '/usr/bin/which'.

Cause

RestoreVsix   Skipped   // Skipped: because of CompileVsix
CompileVsix   Skipped   // Skipped: because of PackVsix
PackVsix      Skipped   // Skipped: via parameter
PublishVsix   Failed    // Could not find 'vsce'

--skip PackVsix prunes the entire upstream chain — RestoreVsix (npm ci) included, since nothing else needs it. vsce and ovsx are dev dependencies and IHasVsix.ResolveNodeTool looks in node_modules/.bin before PATH, so with no node_modules the tools are absent and the target dies resolving them.

Fix

npm ci in both promotion jobs, before the build step. The jobs already configure setup-node with npm caching, so it costs seconds. This is toolchain provisioning, which is the layer the workflow is for — the publish itself stays a Fallout target.

Recorded in docs/ci.md alongside the other CI gotchas.

Impact

Nothing was published and 10.4.31 was not consumed — it failed before contacting either registry. Verified: Open VSX namespace still empty, VS Marketplace query returns zero extensions. The same tag can be promoted again once this lands.

Only a real promotion could have caught this; every rehearsal stopped at the approval gate, which is upstream of the failure.

Both promotion jobs failed resolving vsce and ovsx. --skip PackVsix prunes the
whole upstream chain, RestoreVsix included, because nothing else needs it — so
npm ci never ran and the CLIs, being dev dependencies, were simply absent.

It failed before reaching either registry, so nothing was published and the
version was not consumed. Only a real promotion could surface this; every
rehearsal so far stopped at the approval gate.

Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
@ChrisonSimtian ChrisonSimtian added bug Something isn't working CD Continuous delivery: build, release, publish and deployment-target concerns. labels Sep 9, 2026
@coderabbitai

coderabbitai Bot commented Sep 9, 2026

Copy link
Copy Markdown

Warning

Review limit reached

Next included review available in 21 minutes.

Check out review usage here.

View limit details

Limit details: You’ve used the included review currently available.

You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository.

Learn how review limits work.

Review configuration:

⚙️ Run configuration

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Advanced

Run ID: 000b0397-cffa-49f1-9241-d9116e07e795

📥 Commits

Reviewing files that changed from the base of the PR and between d02ac4d and 30615e5.

📒 Files selected for processing (2)
  • .github/workflows/publish.yml
  • docs/ci.md

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@ChrisonSimtian
ChrisonSimtian merged commit 243a065 into develop Sep 9, 2026
3 checks passed
@ChrisonSimtian
ChrisonSimtian deleted the fix/promotion-needs-node-toolchain branch September 9, 2026 01:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working CD Continuous delivery: build, release, publish and deployment-target concerns.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant