I’ve been using arunoda’s Mup for deployment to AWS EC2 instance for a while now. I updated to Meteor 1.2.2 and Mup still worked, all I needed to do was bump the nodeVersion to 0.10.40.
Just today I updated to Meteor 1.3.5.1 and tried to deploy using the same mup settings file, but it didn’t work. I only thing I did to the settings file was bump it again to 0.10.43.
Setup works fine:
{
// Server authentication info
"servers": [
{
"host": "subdomain.mysite.com",
"username": "ubuntu",
// or pem file (ssh based authentication)
"pem": "/Users/myname/Meteors/mypem.pem"
}
],
// this only works with mupx, not this mup
"buildOptions": {
// build with the debug mode on
// You can deploy in debug mode by passing --debug.
// This will leave your source code readable by your favorite in-browser debugger, just like it is in local development mode
// :: Think Meteor Toys!
"debug": true,
// executable used to build the meteor project
// you can set a local repo path if needed
"executable": "meteor"
},
// Install MongoDB in the server, does not destroy local MongoDB on future setup
"setupMongo": true,
// WARNING: Node.js is required! Only skip if you already have Node.js installed on server.
"setupNode": true,
// WARNING: If nodeVersion omitted will setup 0.10.33 by default. Do not use v, only version number.
"nodeVersion": "0.10.43",
// Install PhantomJS in the server
"setupPhantom": false,
// Application name (No spaces)
"appName": "subdomain-mysite",
// Location of app (local directory)
"app": "/Users/myname/Meteors/clients-workstation",
// Configure environment
"env": {
"ROOT_URL": "http://subdomain.mysite.com" // change to https
},
/*"ssl": {
"pem": "./ssl.pem"
},*/
// Meteor Up checks if the app comes online just after the deployment
// before mup checks that, it will wait for no. of seconds configured below
"deployCheckWaitTime": 60
}
But on mup deploy I get errors:
Uploading bundle
Uploading bundle: SUCCESS
Setting up Environment Variables
Setting up Environment Variables: SUCCESS
Invoking deployment process
x Invoking deployment process: FAILED
-----------------------------------STDERR-----------------------------------
please make sure you have setup your
build environment--
Windows + OS X instructions here: https://github.com/nodejs/node-gyp
Ubuntu users please run: `sudo apt-get install g++`
Alpine users please run: `sudo apk add python make g++`
sh: 1: nodejs: not found
npm ERR! fibers@1.0.13 install: `node build.js || nodejs build.js`
npm ERR! Exit status 127
npm ERR!
npm ERR! Failed at the fibers@1.0.13 install script.
npm ERR! This is most likely a problem with the fibers package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! node build.js || nodejs build.js
npm ERR! You can get their info via:
npm ERR! npm owner ls fibers
npm ERR! There is likely additional logging output above.
npm ERR! System Linux 3.13.0-36-generic
npm ERR! command "/usr/bin/node" "/usr/bin/npm" "install"
npm ERR! cwd /opt/formspoint-clients/tmp/bundle/programs/server
npm ERR! node -v v0.10.43
npm ERR! npm -v 1.4.29
npm ERR! code ELIFECYCLE
npm ERR! not ok code 0
-----------------------------------STDOUT-----------------------------------
> ./bcrypt: npm install due to binary npm modules
bindings@1.2.1 node_modules/bindings
nan@2.2.1 node_modules/nan
nodeunit@0.9.1 node_modules/nodeunit
└── tap@0.7.1 (inherits@2.0.1, buffer-equal@0.0.2, slide@1.1.6, deep-equal@1.0.1, yamlish@0.0.7, nopt@3.0.6, mkdirp@0.5.1, difflet@0.2.6, glob@4.5.3, runforcover@0.0.2)
make: Entering directory `/opt/formspoint-clients/tmp/bundle/programs/server/npm/node_modules/meteor/npm-bcrypt/node_modules/bcrypt/build'
CXX(target) Release/obj.target/bcrypt_lib/src/blowfish.o
CXX(target) Release/obj.target/bcrypt_lib/src/bcrypt.o
CXX(target) Release/obj.target/bcrypt_lib/src/bcrypt_node.o
SOLINK_MODULE(target) Release/obj.target/bcrypt_lib.node
COPY Release/bcrypt_lib.node
make: Leaving directory `/opt/subdomain-mysite/tmp/bundle/programs/server/npm/node_modules/meteor/npm-bcrypt/node_modules/bcrypt/build'
> fibers@1.0.13 install /opt/subdomain-mysite/tmp/bundle/programs/server/node_modules/fibers
> node build.js || nodejs build.js
----------------------------------------------------------------------------
I tried reinstalling bcrypt, npm and nothing works.
The mup logs -f looks like so:
at require (module.js:380:17)
at bindings (/opt/my-application/app/programs/server/npm/node_modules/meteor/npm-bcrypt/node_modules/bcrypt/node_modules/bindings/bindings.js:76:44)
at Object. (/opt/my-application/app/programs/server/npm/node_modules/meteor/npm-bcrypt/node_modules/bcrypt/bcrypt.js:3:35)
at Module._compile (module.js:456:26)
at Object.Module._extensions…js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
error: Forever detected script exited with code: 8
I then tried the M4v3R fork
npm remove -g mup
git clone https://github.com/M4v3R/meteor-up
cd meteor-up
npm install -g
npm link
Same results.
What happened to the Meteor deployment story? What is everyone using these days to deploy? Where is everyone deploying their applications to?
Any help is appreciated.