build: limit PR validation to CFS restores - #1932
Conversation
There was a problem hiding this comment.
🟢 Approval recommended
The YAML changes cleanly isolate PR validation to the intended CFS-backed restore/build steps without impacting the existing non-PR build and packaging flow.
Pull request overview
This PR updates the Azure DevOps CI pipeline to make pull request validation focus exclusively on verifying that npm and Maven/Tycho dependencies can be restored and built through CFS, while keeping the existing full build + packaging pipeline behavior for non-PR runs (including main).
Changes:
- Adds a PR-only
CFSValidationjob that runs CFS-backed npm restore and Maven/Tycho build steps. - Skips linting,
vscode:prepublish, VSIX packaging (vsce package), and artifact publication for PR runs. - Expands PR path filters so validation triggers when dependency inputs or CFS pipeline configuration files change.
File summaries
| File | Description |
|---|---|
| .azure-pipelines/vscode-java-test-ci.yml | Introduces a PR-only CFS validation job and gates the existing full CI job to non-PR runs; broadens PR path filters to include CFS-related pipeline inputs. |
Review details
- Files reviewed: 1/1 changed files
- Comments generated: 0
- Review effort level: Lite
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
There was a problem hiding this comment.
🟢 Approval recommended
The pipeline conditions and path filters appear consistent with the stated goal of limiting PR validation to CFS-backed restore/build steps while preserving full non-PR behavior.
Review details
- Files reviewed: 1/1 changed files
- Comments generated: 0 new
- Review effort level: Lite
Summary
mainWhy
#1929 enabled path-filtered CFS validation by reusing the full CI pipeline. A validation run confirmed that npm and Maven restore succeeded, but later failed in the unrelated
npx @vscode/vsce@latest packagestep because the CI image currently exposes Node 18 while the latest vsce dependencies require Node 20.The purpose of the PR check is to verify that dependency versions can be restored from CFS, not to package the extension. Keeping the PR path focused avoids unrelated packaging failures without changing the normal
mainbuild.Validation