Galaxy build fails (due to backslash?)


#1

I’m trying to deploy a project to Galaby, but it fails with the following messages.

I’m currently guessing it’s due to the backslash in the path of the bin\sshpk-conv path. But I really cannot figure out the reason. It’s the first time I’m trying to deploy. Latest version of Meteor, running fine on Windows developemnt environment, but not on Galaxy.

I notice that there is a workround here: Mup deploy fails verification due to embedded backslash in path but I really would have hoped that whilst mup may have issues Galaxy should be a bit more resilient.

2017-07-05 09:12:55+01:00node-pre-gyp ERR! Tried to download(404): https://github.com/kelektiv/node.bcrypt.js/releases/download/v1.0.2/bcrypt_lib-v1.0.2-node-v46-linux-x64.tar.gz
v0004
2017-07-05 09:12:55+01:00node-pre-gyp ERR! Pre-built binaries not found for bcrypt@1.0.2 and node@4.8.3 (node-v46 ABI) (falling back to source compile with node-gyp)
v0004
2017-07-05 09:12:56+01:00make: Entering directory `/app/bundle/programs/server/npm/node_modules/bcrypt/build'
v0004
2017-07-05 09:12:56+01:00 CXX(target) Release/obj.target/bcrypt_lib/src/blowfish.o
v0004
2017-07-05 09:12:56+01:00 CXX(target) Release/obj.target/bcrypt_lib/src/bcrypt.o
v0004
2017-07-05 09:12:56+01:00 CXX(target) Release/obj.target/bcrypt_lib/src/bcrypt_node.o
v0004
2017-07-05 09:12:58+01:00 SOLINK_MODULE(target) Release/obj.target/bcrypt_lib.node
v0004
2017-07-05 09:12:58+01:00 COPY Release/bcrypt_lib.node
v0004
2017-07-05 09:12:58+01:00 COPY /app/bundle/programs/server/npm/node_modules/bcrypt/lib/binding/bcrypt_lib.node
v0004
2017-07-05 09:12:58+01:00 TOUCH Release/obj.target/action_after_build.stamp
v0004
2017-07-05 09:12:58+01:00make: Leaving directory `/app/bundle/programs/server/npm/node_modules/bcrypt/build'
v0004
2017-07-05 09:12:58+01:00npm ERR! path /app/bundle/programs/server/npm/node_modules/sshpk/bin\sshpk-conv
v0004
2017-07-05 09:12:58+01:00npm ERR! code ENOENT
v0004
2017-07-05 09:12:58+01:00npm ERR! errno -2
v0004
2017-07-05 09:12:58+01:00npm ERR! syscall chmod
v0004
2017-07-05 09:12:58+01:00npm ERR! enoent ENOENT: no such file or directory, chmod '/app/bundle/programs/server/npm/node_modules/sshpk/bin\sshpk-conv'
v0004
2017-07-05 09:12:58+01:00npm ERR! enoent This is most likely not a problem with npm itself
v0004
2017-07-05 09:12:58+01:00npm ERR! enoent and is related to npm not being able to find a file.
v0004
2017-07-05 09:12:58+01:00npm ERR! enoent
v0004
2017-07-05 09:12:58+01:00
v0004
2017-07-05 09:12:58+01:00npm ERR! A complete log of this run can be found in:
v0004
2017-07-05 09:12:58+01:00npm ERR! /root/.npm/_logs/2017-07-05T08_12_58_535Z-debug.log
v0004
2017-07-05 09:12:58+01:00npm WARN meteor-dev-bundle@0.0.0 No description
v0004
2017-07-05 09:12:58+01:00npm WARN meteor-dev-bundle@0.0.0 No repository field.
v0004
2017-07-05 09:12:58+01:00npm WARN meteor-dev-bundle@0.0.0 No license field.
v0004
2017-07-05 09:12:58+01:00npm ERR! code ELIFECYCLE
v0004
2017-07-05 09:12:58+01:00npm ERR! errno 254
v0004
2017-07-05 09:12:58+01:00npm ERR! meteor-dev-bundle@0.0.0 install: `node npm-rebuild.js`
v0004
2017-07-05 09:12:58+01:00npm ERR! Exit status 254
v0004
2017-07-05 09:12:58+01:00npm ERR!
v0004
2017-07-05 09:12:58+01:00npm ERR! Failed at the meteor-dev-bundle@0.0.0 install script 'node npm-rebuild.js'.
v0004
2017-07-05 09:12:58+01:00npm ERR! Make sure you have the latest version of node.js and npm installed.
v0004
2017-07-05 09:12:58+01:00npm ERR! If you do, this is most likely a problem with the meteor-dev-bundle package,
v0004
2017-07-05 09:12:58+01:00npm ERR! not with npm itself.
v0004
2017-07-05 09:12:58+01:00npm ERR! Tell the author that this fails on your system:
v0004
2017-07-05 09:12:58+01:00npm ERR! node npm-rebuild.js
v0004
2017-07-05 09:12:58+01:00npm ERR! You can get information on how to open an issue for this project with:
v0004
2017-07-05 09:12:58+01:00npm ERR! npm bugs meteor-dev-bundle
v0004
2017-07-05 09:12:58+01:00npm ERR! Or if that isn't available, you can get their info via:
v0004
2017-07-05 09:12:58+01:00npm ERR! npm owner ls meteor-dev-bundle
v0004
2017-07-05 09:12:58+01:00npm ERR! There is likely additional logging output above.
v0004
2017-07-05 09:12:58+01:00
v0004
2017-07-05 09:12:58+01:00npm ERR! A complete log of this run can be found in:
v0004
2017-07-05 09:12:58+01:00npm ERR! /root/.npm/_logs/2017-07-05T08_12_58_563Z-debug.log
v0004
2017-07-05 09:12:59+01:00Removing intermediate container 388a428cf6fe


#2

I just ran into this exact same bug for the first time. Never had the issue before, not sure what even changed to cause it.


#3

It returned for me after updating a project to Meteor 1.6 and doing a meteor reset recently. Did you do either of those? The same solution as linked above still seemed to work.


#4

We updated to 1.6 recently, not sure if this is my first deploy since then. I’ve been fooling around with package.json, trying to see if recent changes might’ve triggered it.

Haven’t tried that workaround yet as we don’t use Mup, but dang:

The workaround is to edit the package.json file in myapp/node_modules/sshpk. Find the “bin” section and replace “\” with “/”. Save the file and do another mup deploy. Worked for me.

That’s a pretty annoying work-around. Do you have to do it again any time you run an npm install?


#5

I only had to change it when originally posting and then a few weeks ago when upgrading to 1.6. Both instances on different projects, so I expect it to be a once only per project.

Bit yes. tad annoying.


#6

Good to know, glad the changes persist after you make them once. Just tried it and am mid-deploy, will edit this comment based on how it goes. Thanks so much for your quick reply!

EDIT: Confirmed, that fixed it! Heads up to any other Windows users down the road who run into the same issue.