Closed Bug 1862069 Opened 2 years ago Closed 2 years ago

Intermittent ERR! 500 Internal Server Error - GET https://registry.npmjs.org/@sinonjs/commons/-/commons-2.0.0.tgz - KV GET failed: 401 Unauthorized

Categories

(Remote Protocol :: Agent, defect)

defect

Tracking

(firefox-esr115 unaffected, firefox119 unaffected, firefox120 affected, firefox121 affected)

RESOLVED WORKSFORME
Tracking Status
firefox-esr115 --- unaffected
firefox119 --- unaffected
firefox120 --- affected
firefox121 --- affected

People

(Reporter: imoraru, Unassigned)

Details

(Keywords: intermittent-failure)

Failure summary is missing in treeherder.

[fetches 2023-10-30T20:12:52.499Z] finished fetching artifacts
[setup 2023-10-30T20:12:52.499Z] Setting up local python environment
[setup 2023-10-30T20:12:52.499Z] updated PATH with python artifact: /builds/worker/fetches/python/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/builds/worker/bin
[task 2023-10-30T20:12:52.499Z] executing ['bash', '-cx', 'cd $GECKO_PATH/ && $MOZ_FETCHES_DIR/firefox/firefox --screenshot http://example.org && ./mach puppeteer-test --ci -vv --binary $MOZ_FETCHES_DIR/firefox/firefox --bidi --log-tbpl - --log-errorsummary /builds/worker/pup_errorsummary.json\n']
[task 2023-10-30T20:12:52.502Z] + cd /builds/worker/checkouts/gecko/
[task 2023-10-30T20:12:52.502Z] + /builds/worker/fetches/firefox/firefox --screenshot http://example.org
[task 2023-10-30T20:12:52.520Z] *** You are running in headless mode.
[task 2023-10-30T20:12:52.724Z] [GFX1-]: glxtest: Unable to open a connection to the X server
[task 2023-10-30T20:12:52.724Z] [GFX1-]: No GPUs detected via PCI
[task 2023-10-30T20:12:52.724Z] 
[task 2023-10-30T20:13:09.757Z] + ./mach puppeteer-test --ci -vv --binary /builds/worker/fetches/firefox/firefox --bidi --log-tbpl - --log-errorsummary /builds/worker/pup_errorsummary.json
[task 2023-10-30T20:13:17.175Z] npm WARN deprecated readdir-scoped-modules@1.1.0: This functionality has been moved to @npmcli/fs
[task 2023-10-30T20:14:30.558Z] npm ERR! code E500
[task 2023-10-30T20:14:30.560Z] npm ERR! 500 Internal Server Error - GET https://registry.npmjs.org/@sinonjs/commons/-/commons-2.0.0.tgz - KV GET failed: 401 Unauthorized
[task 2023-10-30T20:14:30.563Z] 
[task 2023-10-30T20:14:30.563Z] npm ERR! A complete log of this run can be found in:
[task 2023-10-30T20:14:30.563Z] npm ERR!     /builds/worker/.npm/_logs/2023-10-30T20_13_11_569Z-debug-0.log
[task 2023-10-30T20:14:30.584Z] ./mach: /builds/worker/fetches/node/bin/npm: exit code 1
[task 2023-10-30T20:14:30.584Z] Creating default state directory: /builds/worker/.mozbuild
[task 2023-10-30T20:14:30.584Z] Creating local state directory: /builds/worker/.mozbuild/srcdirs/gecko-8a5b87fe5d69
[task 2023-10-30T20:14:30.584Z] Site not up-to-date reason: "/builds/worker/.mozbuild/srcdirs/gecko-8a5b87fe5d69/_virtualenvs/common" does not exist
[taskcluster 2023-10-30 20:14:31.529Z] === Task Finished ===
[taskcluster 2023-10-30 20:14:31.860Z] Unsuccessful task run with exit code: 1 completed in 218.063 seconds
Component: Task Configuration → Agent
Product: Firefox Build System → Remote Protocol

There was an issue with npm yesterday with installing the packages: https://status.npmjs.org/incidents/zdznxkrp22py.
So it shouldn't repeat, hopefully.

Hm, the bigger question here actually is if it is fine for the Puppeteer tests (Tier 1) to actually install all the node packages from the official public registry. But I assume we do not have an internal npm registory mirror that could handle that? Not sure how other test jobs that rely on npm actually handle that.

Mark or Andrew do you know?

Flags: needinfo?(standard8)
Flags: needinfo?(ahal)

For the top-level node_modules (iirc ESLint + jsdoc), we bundle node_modules and upload it to CI. When we land the manifest.tt changes, the new bundle gets incorporated into the docker images.

We did this as it was suggested that this would be better for reproducing issues, and ensures that the builders aren't reliant on the network.

I believe newtab and devtool's debugger download from npm directly.

Something else I did just notice - the puppeteer install for node modules is using npm install rather than npm ci. This might mean that npm installs upgraded sub-dependencies, and could break something or lead to different results on different machines.

For ESLint we use npm ci since this ensures all developers get the same version, and avoids changes to package-lock.json creeping into patches when we don't want it.

Flags: needinfo?(standard8)
Flags: needinfo?(ahal)

Thanks Mark. We will have a look if we can take care of npm ci for the next puppeteer vendoring.

Btw. I've noticed that also a lint job actually failed maybe due to a not yet vendored in package? Given your statement from above it most likely should not happen.

We will take care of npm ci over on bug 1862701 when vendoring the next Puppeteer release soon.

Otherwise there is nothing more to do here given that we do not want to vendor all the Puppeteer node.js dependencies.

Status: NEW → RESOLVED
Closed: 2 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.