meteorcontinuous-integrationcodeship

Meteor (1.4.1) checkout not able to run on code ship server


I am using code ship to run some tests and deploy to galaxy.

Right now the setup works by running meteor from a git checkout. The following is the setup script:

git clone https://github.com/meteor/meteor.git ~/meteor
cd ~/meteor && git reset --hard 365c765 && cd -
export PATH=~/meteor/:$PATH
meteor npm install

Right now I cannot get passed the meteor npm install command without throwing an error. The error is the following:

It's the first time you've run Meteor from a git checkout.
I will download a kit containing all of Meteor's dependencies.
######################################################################## 100.0%
Installed dependency kit v4.2.9 in dev_bundle.

/home/rof/meteor/tools/cli/dev-bundle.js:55
return getDevBundleForRelease(release).then(function (devBundleDir) {
^

TypeError: Cannot read property 'then' of null
at getDevBundleDir (/home/rof/meteor/tools/cli/dev-bundle.js:55:41)
at Object.<anonymous> (/home/rof/meteor/tools/cli/dev-bundle.js:205:18)
at Module._compile (module.js:409:26)
at Object.Module._extensions..js (module.js:416:10)
at Module.load (module.js:343:32)
at Function.Module._load (module.js:300:12)
at Module.require (module.js:353:17)
at require (internal/module.js:12:17)
at Object.getDevBundle (/home/rof/meteor/tools/cli/dev-bundle-bin-helpers.js:6:10)
at getChildProcess (/home/rof/meteor/tools/cli/dev-bundle-bin-commands.js:28:13)

What do I need to do in order for the meteor install to work on code ship?


Solution

  • There's a script available at https://github.com/codeship/scripts/blob/master/packages/meteor.sh that should take care of the installation.

    Include it in your setup steps by adding the following command

    curl -sSL https://raw.githubusercontent.com/codeship/scripts/master/packages/meteor.sh | bash -s
    

    If this doesn't work for your project, please open a new issue on the repository or reach out to Codeship Support via https://helpdesk.codeship.com and we'll take a look.