Continuous Integration support for Laika and Meteor can be added very easily. Laika can be configured to use with Cloud Services and Self Hosted Solutions.
With Travis CI
add following content to your project as
language: node_js node_js: - "0.10" before_install: - "curl -L http://git.io/3l-rRA | /bin/sh" services: - mongodb env: - LAIKA_OPTIONS="-t 5000"
Select your technology as nodejs
Replace setup commands with following
git clone https://github.com/meteor/meteor.git ~/meteor export PATH=~/meteor/:$PATH npm install -g meteorite laika
Replace test commands with following
METEOR_PATH=~/meteor laika -t 5000 I’ve added codeship support for hello-laika as well.
There are lots of other Continuous Integration services and downloaded servers out there. It is not feasible to provide how-to guides for all. Let’s discuss in general how to add laika support for them.
All of these tools and services provide a way to customize their runtime and the test. Most of the time we can configure them using shell scripts. We can categorize them into two. Tools which: * Give configuration scripts ROOT access. * Don’t give configuration scripts ROOT access.
Laika can be configured for both very easily. Let’s look at how.
- Assume you’ve configured or installed
- Assume there is a local mongodb server is running
- Assume phantomjs is installed and available on the path
With ROOT access
#install meteor normally curl https://install.meteor.com | /bin/sh #installing meteorite and laika npm install -g meteorite laika #run tests laika #<options>
Without ROOT access
#install meteor from git git clone https://github.com/meteor/meteor.git ~/meteor export PATH=~/meteor/:$PATH #install meteorite and laika npm install -g meteorite laika #run tests METEOR_PATH=~/meteor laika -t 5000
I hope with this information, you could setup your meteor app for Continuous Integration very easily. Let me know how you think about this, share your experiences.