project-open-data/project-open-data.github.io — pull request #36 by benbalter (2013-05-15 16:37:16+00:00)
Title: Configure Project for Continuous Integration

Add a simple `.travis.yml` file to the root of the project, explaining that the project is Ruby (Jekyll is), and that the command to build the site is `jekyll build`. This will allow asynchronous automated testing by third-party services, such as Travis CI to ensure (A) that pull requests are valid and will properly build, and (B) will provide diagnostic output in the event of Markdown and other errors without the need for government employees or other users to install Jekyll on their local machine.

Example output from build of a fork to my personal account: https://travis-ci.org/benbalter/project-open-data.github.io/builds/7191071

Once merged, the process will require no additional action on the part of the project contributors, Travis can pull the public repository after every commit, and all pull requests will begin to show their merge status prior to merge using the status API.

E.g., good pull request:

![status-merge-button-20120831-134857](https://f.cloud.github.com/assets/282759/508073/6e2d93fc-bd7d-11e2-8ab6-4d8c90e48317.jpg)

Bad pull request:

![status-bad-merge-20120831-135209](https://f.cloud.github.com/assets/282759/508075/745aaaf8-bd7d-11e2-8acc-5e90067ef64a.jpg)