select * from ideas

where topic='technical' and state='exploratory'

Travis CI

A few months ago I came across Travis CI.

Travis CI describes itself as

A hosted continuous integration service for the open source community.

It integrates with GitHub via post-receive hooks. So everytime you push to your GitHub repository Travis gets notified and will start building and testing your code.

You have to provide a .travis.yml to configure your build. Although you could customize your build in enormous detail, the defaults provided by Travis CI allow you to start using continous integration easily.

The bare minimum for a .travis.yml file is the language keyword. For example, the file below will instruct Travis to build a java project using maven, gradle or ant depending on which files are present. I.e. a pom.xml, build.gradle or build.xml file.

Minimal .travis.yml file for a Java project Travis CI documentation
language: java

Travis CI supports numerous languages, including Java, Ruby, Erlang, Clojure and Haskell. The lanuguage list is growing. To a look on the documentation page for an up-to-date list.

So consider Travis CI for all your open source build.