<commit_before>= Continuous Build =

We have a continuous build system that runs some of our tests regularly based on the current svn trunk.

Test results page: http://testbed-opensuse.cs.washington.edu/~continuousbuild/

Test failures RSS feed: http://testbed-opensuse.cs.washington.edu/~continuousbuild/failures.rss

It's not fancy (not using Bitten or !BuildBot or anything else). The source is in trunk/continuousbuild/. It's currently running only a small number of our tests. Time just needs to be spent making other tests work with the system.

To add new tests to the system, create files in trunk/continuousbuild/tests/ that are executable and have a filename that starts with 'run_'. Then make the script accept two arguments: the first is a path to svn trunk, the second is a file that all stdout and stderr output from the tests should ultimately be written to. The testrunner then runs the tests and exits with a non-zero status the tests failed. Any output from the testrunner itself will not indicate failure but will be recorded in the logs for the run (that output should be kept to a minimum, though).

After you add new files, you should to go to wherever the tests are running (e.g. testbed-opensuse.cs.washington.edu right now), `svn up trunk`, and then make sure the files you are added are executable now that they are checked out. If the update from svn didn't keep them executable (or if you didn't check them in executable), then you need to make them executable or else the tests will fail.<commit_msg>Revision 2 of Local/ContinuousBuild<commit_after>= Continuous Build =

We have a continuous build system that runs some of our tests regularly based on the current svn trunk.

Test results page: http://testbed-opensuse.cs.washington.edu/~continuousbuild/

Test failures RSS feed: http://testbed-opensuse.cs.washington.edu/~continuousbuild/failures.rss

It's not fancy (not using Bitten or !BuildBot or anything else). The source is in trunk/continuousbuild/. It's currently running only a small number of our tests. Time just needs to be spent making other tests work with the system.

To add new tests to the system, create files in trunk/continuousbuild/tests/ that are executable and have a filename that starts with 'run_'. Then make the script accept two arguments: the first is a path to svn trunk, the second is a file that all stdout and stderr output from the tests should ultimately be written to. The testrunner then runs the tests and exits with a non-zero status the tests failed. Any output from the testrunner itself will not indicate failure but will be recorded in the logs for the run (that output should be kept to a minimum, though).

After you add new files, you should to go to wherever the tests are running (e.g. testbed-opensuse.cs.washington.edu right now), `svn up trunk`, and then make sure the files you are added are executable now that they are checked out. If the update from svn didn't keep them executable (or if you didn't check them in executable), then you need to make them executable or else the tests will fail.

= Setup on testbed-opensuse =

The continuous build on testbed-opensuse is running on Python 2.6.3 which was built by us. The 2.5.1 version of python available on the system by default has problems with sqlite, which are required to run the seattlegeni tests.

Python was built by the `continuousbuild` user with:

{{{
./configure --with-sqlite --prefix=/home/continuousbuild/opt
make install
}}}

and the resulting binary in `~/opt/bin` is linked in `~/bin`. The `cron_run_tests.sh` script in the user's home directory is modified with `export PATH=/home/continuousbuild/bin:$PATH`.

Django 1.1 is also installed by the continuousbuild user with:

{{{
python setup.py install --prefix=/home/continuousbuild/opt
}}}
{'fraction_non_alphanumeric': 0.05846721095601791, 'fraction_numerical': 0.00237029233605478, 'mean_word_length': 4.326788218793829, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '485704', 'n_tokens_mistral': 993, 'n_tokens_neox': 937, 'n_words': 571}