Skip to content

test: use npm sandbox in test-npm-install

Checklist
  • make -j8 test (UNIX), or vcbuild test nosign (Windows) passes
  • commit message follows commit guidelines
Affected core subsystem(s)

test

Description of change

npm should run in a sandbox to avoid unwanted interactions. Without this change, npm would read the userconfig file $HOME/.npmrc which may contain configs that break this test.

Not completely sure if we should set the HOME variable as I decided to do here, or track down all the variables that it influences with npm config ls -l and set them all individually. This seems more future-proof, and since it's just to run npm it should be ok.

Taken inspiration from https://github.com/gibfahn/node/blob/a3c1505cd9fd5e26aebdbb2269515f9d3deb11db/tools/test-npm.sh#L44-L48 (ongoing PR https://github.com/nodejs/node/pull/7867) with the HOME var change that may be a good idea there as well, cc @gibfahn .

Fixes: https://github.com/nodejs/node/issues/9074 - test run: https://ci.nodejs.org/job/node-test-commit-freebsd/4799/

cc @nodejs/testing @TheAlphaNerd @trott

Merge request reports

Loading