[SOLVED] Error while executing command: meteor npm install --production. Reason: exit status 254

This is during deploy to our AWS production servers, the build step fails.

Does anyone know why this is happening? I haven’t changed anything in the CI/CL script and also the last successful build was 6 days ago.

Error message:

Error while executing command: meteor npm install --production. Reason: exit status 254

Meteor version 2.2.1
NodeJS 13.8.0

UPDATE:
After removing the node_modules folder and re-installing I get the following warning (which wasn’t there before):

If you notice problems related to these missing modules, consider running:

  meteor npm install --save crypto-browserify

Unable to resolve some modules:

  "crypto-browserify" in
/Users/andreaswest/Documents/workspace/test2/node_modules/meteor-node-stubs/wrappers/crypto.js
(web.browser.legacy)

This is strange as this is ONLY backend code. No idea why it tries to install a package to run crypto in the browser (we do have a separate codebase for the frontend code).

Both same as before.

Thanks in advance,

Andreas

Another update. I removed the meteor-node-stubs package which was installed on our backend and the deploy finally ran through without a problem.

That package has been there since 2017 so I don’t know why this solved the build & deploy problems.

The warnings about the crypto package still applies but I ignore them for now (it’s needed to generate some tokens on the backend).

That package might have an update and the identifier is not fixed to a specific version

meteor-node-stub was updated recently to version 1.2.0 from 1.1.0 - but the deploy was fine with it.

So I really don’t know why it broke the CI/CL pipeline

Version 1.2.1 is available. But fixing to 1.1.0 might fix everything for you.

Although the bigger question you have to figure out is why you have this in supposedly server-only-code? A package who uses it on its client code?

It was added in 2017 by my former developer, I’m not sure if that was before or after the split up into two separate apps. But there’s no client side code in this codebase (anymore?) so there’s also no need to keep that package.