-
Notifications
You must be signed in to change notification settings - Fork 562
Restore compat install caching to include-test-real-service.yaml #25563
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
…to test/absander/update-perf-benchmarks
|
ah forgot I based this on another change. Will check that in first. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR restores caching of compatibility version installations to the test pipeline and improves the caching mechanism with major+minor version-based cache keys. The changes consolidate dependency installation logic and switch from npm to pnpm across the pipeline templates.
Key changes:
- Restored caching for compatibility version installs with improved cache key strategy
- Standardized on pnpm instead of npm throughout pipeline templates
- Consolidated dependency installation logic into reusable templates
Reviewed Changes
Copilot reviewed 13 out of 13 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| tools/pipelines/test-perf-benchmarks.yml | Switches from npm to pnpm, removes workspace-related parameters, uses shared dependency template |
| tools/pipelines/templates/include-test-real-service.yml | Restores compat version caching with dynamic path resolution and major+minor cache key |
| tools/pipelines/templates/include-test-perf-benchmarks.yml | Removes workspace parameters, switches to pnpm, adds checkout step |
| tools/pipelines/templates/include-test-perf-benchmarks-install-package.yml | Changes npm install to pnpm install |
| tools/pipelines/templates/include-setup-npmrc-for-download.yml | Renames parameter from npmrcLocation to userNpmrcDirectory |
| tools/pipelines/templates/include-install.yml | Adds primaryRegistry and userNpmrcPath parameters |
| tools/pipelines/templates/include-copy-dev-dependencies.yml | New template consolidating devDependency copying logic |
| packages/test/test-end-to-end-tests/src/test/benchmark/.mocharc.*.cjs | Updates require paths to use package names instead of node_modules paths |
| packages/dds//src/test//.mocharc.cjs | Updates require paths to use package names instead of node_modules paths |
…rosoft#25563) ## Description Follow-up to microsoft#25535 which restores the caching of compat dependencies we previously had. Couldn't help myself from making a tweak so the cache key is invalidated on minor version change, which should give us better long-term behavior: the set of versions to install is dynamically computed based on roughly the current package version, so using major+minor here should be a net win as only roughly one build per release should need to install compat dependencies, after that they will be cached. --------- Co-authored-by: Abram Sanderson <[email protected]>
Description
Follow-up to #25535 which restores the caching of compat dependencies we previously had. Couldn't help myself from making a tweak so the cache key is invalidated on minor version change, which should give us better long-term behavior: the set of versions to install is dynamically computed based on roughly the current package version, so using major+minor here should be a net win as only roughly one build per release should need to install compat dependencies, after that they will be cached.