If we were to upgrade npm to 5+ (I think) that would support
package-lock.json
https://docs.npmjs.com/files/package-lock.json
That file would be committed to our code repository and allow the CI to
skip the dependency resolution step(s). This means that the tar/zip or
clone would happen directly without involving
registry.npmjs.org at all.
Upgrading npm (and adding a package-lock.json file) might be outside of the
scope of this issue, but I think it would help mitigate/resolve the problem.
On Thu, Jun 28, 2018 at 10:26 AM Antoine Musso <hashar+wmf(a)free.fr> wrote:
Hello,
Since June 27th, any CI job running 'npm install' might suffer from a 10
minutes extra delay.
Somehow when requesting package informations from the NpmJS CDN
(CloudFlare), the connection holds for ten minutes. npm just idles
waiting for a reply. Then eventually it shows:
npm ERR! registry error parsing json
npm then retry and process as usual.
The json error is due to a CloudFlare HTML page stating:
The page could not be rendered due to a temporary fault.
The impact is any Jenkins job using npm have a high chance of taking 10
more minutes to build. That notably impacts MediaWiki core and all its
extensions.
A few minutes ago, I have made a change to run npm with --loglevel=info
which would give some hints about what it is doing by causing npm to
emit more informations in the console. (verbose would be way too much
log though).
I have filled a bug to npm:
https://github.com/npm/npm/issues/21101
Our task:
https://phabricator.wikimedia.org/T198348
I have no idea how to mitigate the issue :-(
--
Antoine "hashar" Musso
_______________________________________________
Wikitech-l mailing list
Wikitech-l(a)lists.wikimedia.org
https://lists.wikimedia.org/mailman/listinfo/wikitech-l