Continuous integration with Hudson (moved): Difference between revisions

Content added Content deleted
(Created page with '{{Hacking OpenHatch}}')
 
No edit summary
Line 1: Line 1:
{{Hacking OpenHatch}}
{{Hacking OpenHatch}}

== Overview ==

The OpenHatch code has a suite of tests. It's important that when we deploy the code to the website, the tests all pass.

Hudson is a "continuous integration" tool (read [https://secure.wikimedia.org/wikipedia/en/wiki/Continuous_integration more on Wikipedia]). It wakes up once an hour, checks the git repository for new commits, and runs the test suite.

== Specifics of the OpenHatch setup ==

* Hudson on the web: http://linode2.openhatch.org:8080/

=== Configuration ===

There are three "jobs" in Hudson. Different ones run different suites of tests in the OpenHatch codebase. They include or exclude different Django ''apps'' from the OpenHatch codebase.

* Test the "customs" app
** The tests for the ''customs'' app often go out to the network and can break if the remote servers change their APIs.
* Test the "search" app
** The search tests can take a while to run, so we separate them out.
* Test all apps except customs and search
** This is the catchall that tests the rest of the code.

=== Future work ===

It would be nice if Hudson notified us on IRC when we "break the build" (introduce changes that break tests). [https://openhatch.org/bugs/issue173 Bug filed].

It would be super nice if, whenever there was a commit to Gitorious master that passed all the tests, Hudson automatically deployed it.