Continuous integration with Hudson (moved): Difference between revisions

m
imported>Mdaniel
 
(6 intermediate revisions by 2 users not shown)
Line 1:
{{Hacking OpenHatch}}
 
We are updating our documentation system. This page is now included in our project package, and is automatically generated by sphinx at openhatch.readthedocs.org [http://openhatch.readthedocs.org/en/latest/internals/continuous_integration.html continuous integration]
== 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 "projects" 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.
 
=== How to see the list of tests that failed or passed ===
 
* Go to http://linode2.openhatch.org:8080/
* Choose a project (for example, [http://linode2.openhatch.org:8080/job/Test%20the%20%22search%22%20app/ Test the search app])
* Click on "Latest Test Result"
 
=== Permissions ===
 
Right now, only Raffi and Asheesh can modify the configuration of Hudson.
 
Anyone can enqueue a run of the test suite by clicking the
 
=== 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.
Anonymous user