Kadira - Performance Monitoring for Meteor (you should try this)

Travis CI support for Meteor Packages

Before talking anything, have you ever seen following red and green images? (may be on github)

Build Passing Build Failing

They show the project’s build status in Travis CI. Travis CI is a free cloud service for OpenSource projects(on github) to build their tests on each and every commit. It is full featured and you can test nearly anything. It has support for popular databases, message queues, compilers, browsers and so many other tools.

Travis CI has also available for most of the languages and frameworks out there. But unfortunately there is no official support for Meteor yet!.

Why we need Travis CI for meteor?

Good question! It is not very important to have travis support for Meteor Apps, since most of the apps won’t be release as Open Source.

But we really need travis support for Meteor Packages. Specially atmosphere smart packages installed using meteorite.

With travis, it encourages developers to write more tests(using tinytest) and users to use third party packages with confidence.

So I began hacking into Travis CI and more deeply into Meteor. I was able to extend travis to support for Meteor Packages. And the best part is, all you(package developers) have to do is simply add a single file to your package!

Adding travis support

Add following file to your meteor package as .travis.yml

language: node_js
node_js:
  - "0.10"
before_install:
  - "curl -L http://git.io/ejPSng | /bin/sh"

Login to https://travis-ci.org with Github and navigate to https://travis-ci.org/profile

Enable travis support for your project listed there.

Meteor Cluster - Travis Support

What next

Currently travis builds your package against the latest meteor release (0.6.3.1 at the moment of writing the article). There are plans to configure meteor versions manually and support multiple meteor version. Patches are welcome :)