-
Notifications
You must be signed in to change notification settings - Fork 2.5k
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
fix(js): set --ws=false when running npm config for jest e2e #29887
Conversation
The latest updates on your projects. Learn more about Vercel for Git ↗︎ 1 Skipped Deployment
|
View your CI Pipeline Execution ↗ for commit eb1b161.
☁️ Nx Cloud last updated this comment at |
@@ -54,7 +54,7 @@ export function startLocalRegistry({ | |||
|
|||
process.env.npm_config_registry = registry; | |||
execSync( | |||
`npm config set //${listenAddress}:${port}/:_authToken "secretVerdaccioToken"`, | |||
`npm config set //${listenAddress}:${port}/:_authToken "secretVerdaccioToken" --ws=false`, |
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.
Do we always want --ws=false
?
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.
It has no effects if workspaces is not used. If workspaces are used it is required.
When we run inferred Jest tasks with workspaces enabled, it'll result in an error like this: ``` npm ERR! A complete log of this run can be found in: /Users/jack/.npm/_logs/2025-02-05T13_41_51_079Z-debug-0.log Error: Command failed: npm config set //localhost:4873/:_authToken "secretVerdaccioToken" npm ERR! code ENOWORKSPACES npm ERR! This command does not support workspaces. ``` This is because the cwd is the project root (e.g. `packages/mypkg-e2e`), and `npm config set` cannot be run on packages inside the workspaces. By passing `--ws=false`, it'll only be run in the workspace root and won't error. ## Current Behavior Jest e2e tests inferred from `@nx/jest/plugin` fail when starting a local registry. ## Expected Behavior Jest e2e tests should work even if they are inferred (or have cwd other than workspace root). ## Related Issue(s) <!-- Please link the issue being fixed so it gets closed when this is merged. --> Fixes # (cherry picked from commit 0944e34)
When we run inferred Jest tasks with workspaces enabled, it'll result in an error like this: ``` npm ERR! A complete log of this run can be found in: /Users/jack/.npm/_logs/2025-02-05T13_41_51_079Z-debug-0.log Error: Command failed: npm config set //localhost:4873/:_authToken "secretVerdaccioToken" npm ERR! code ENOWORKSPACES npm ERR! This command does not support workspaces. ``` This is because the cwd is the project root (e.g. `packages/mypkg-e2e`), and `npm config set` cannot be run on packages inside the workspaces. By passing `--ws=false`, it'll only be run in the workspace root and won't error. ## Current Behavior Jest e2e tests inferred from `@nx/jest/plugin` fail when starting a local registry. ## Expected Behavior Jest e2e tests should work even if they are inferred (or have cwd other than workspace root). ## Related Issue(s) <!-- Please link the issue being fixed so it gets closed when this is merged. --> Fixes # (cherry picked from commit 0944e34)
This pull request has already been merged/closed. If you experience issues related to these changes, please open a new issue referencing this pull request. |
When we run inferred Jest tasks with workspaces enabled, it'll result in an error like this:
This is because the cwd is the project root (e.g.
packages/mypkg-e2e
), andnpm config set
cannot be run on packages inside the workspaces. By passing--ws=false
, it'll only be run in the workspace root and won't error.Current Behavior
Jest e2e tests inferred from
@nx/jest/plugin
fail when starting a local registry.Expected Behavior
Jest e2e tests should work even if they are inferred (or have cwd other than workspace root).
Related Issue(s)
Fixes #