ci: add e2e tests for vp create across all templates and package managers#1317
Draft
ci: add e2e tests for vp create across all templates and package managers#1317
vp create across all templates and package managers#1317Conversation
✅ Deploy Preview for viteplus-preview canceled.
|
Member
Author
How to use the Graphite Merge QueueAdd the label auto-merge to this PR to add it to the merge queue. You must have a Graphite account in order to use the merge queue. Sign up using this link. An organization admin has enabled the Graphite Merge Queue in this repository. Please do not merge from GitHub as this will restart CI on PRs being processed by the merge queue. This stack of pull requests is managed by Graphite. Learn more about stacking. |
b6bb893 to
fe223c7
Compare
…nagers Test all 3 built-in templates (monorepo, application, library) with all 4 package managers (pnpm, npm, yarn, bun) using the same tgz-packaging approach as ecosystem-ci. Each test verifies project structure, lockfiles, local package installation, and successful builds.
Split template-args from create-args so --package-manager is placed before the -- separator. Move VP_OVERRIDE_PACKAGES/VP_VERSION to job-level env. Add ls -la for debugging lockfile issues.
- Add VP_FORCE_MIGRATE=1 so the library template's existing vite-plus dep gets overridden with the local tgz (fixes all 4 library tests) - Exclude yarn (all templates): yarn install fails with absolute file: paths to tgz files - Exclude bun monorepo: migration writes empty catalog with catalog: references when using file: protocol
…empty catalog When VP_OVERRIDE_PACKAGES uses file: protocol paths (e.g., in CI with local tgz packages), rewriteBunCatalog() was unconditionally setting all overrides to 'catalog:' while skipping file: entries from the catalog itself, resulting in unresolvable 'catalog:' references pointing to an empty catalog. Now file: paths are used directly in overrides, matching npm behavior.
Two issues caused yarn install to fail in CI for newly created projects: 1. In CI (CI=true), yarn Berry defaults to enableImmutableInstalls which prevents creating a new lockfile. Pass --no-frozen-lockfile to vp install since vp create always needs to generate a fresh lockfile. 2. Standalone yarn projects had no .yarnrc.yml created during migration. Without nodeLinker: node-modules, yarn 4 defaults to PnP which doesn't work with vite-plus. Now rewriteYarnrcYml() ensures nodeLinker is set and is called for standalone projects too. Also removes all yarn exclusions from the create e2e test workflow (full 12-job matrix now enabled).
79206b2 to
a938cf5
Compare
… .yarnrc.yml Revert passing --no-frozen-lockfile to vp install from vp create. Instead, set enableImmutableInstalls: false in .yarnrc.yml so yarn Berry can create/update lockfiles in CI where it defaults to immutable.
Let yarn Berry use its default behavior to see what errors occur in CI with immutable installs enabled.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Test all 3 built-in templates (monorepo, application, library) with all
4 package managers (pnpm, npm, yarn, bun) using the same tgz-packaging
approach as ecosystem-ci. Each test verifies project structure, lockfiles,
local package installation, and successful builds.