Notes on Continuity's Automated Build and Test System
Each night a script is run that will checkout the most recent version of Continuity, compile it, run all the built-in tests and then post the results to the web. This will ideally happen each night on Linux 64bit, Windows, and Mac machines; however that is dependent on the machines being on and booted into the proper operating system.
- For the Mac machine, if there are errors during the build and test process an email containing the errors will be sent to the designated person.
- Below summarizes the methods that are used in getting the build and test system working.
On the Mac/Linux, a crontab is created that will run a script that will then run the main Continuity script (pcty/tests/BuildAndTest.py) every night. Note: view crontab to view where bash script is located.
- The crontab runs a bash script that contains the following:
#!/bin/sh CURRENT_LOCATION=$PWD CONT_LOCATION=/Path/to/root/directory/of/an/already/checked-out/version/of/Continuity # Need this set to be able to compile Continuity export IFC_LIB_PATH=/Developer/opt/intel/Compiler/11.1/080/lib/ # Set up to use the proper python cd $CONT_LOCATION source ./mglinit python pcty/tests/BuildAndTest.py cd $PWD
On Windows, a Scheduled Task is created to take place of a crontab. The Scheduled Tasks (at least on XP) can be found at Programs -> Accessories -> System Tools -> Scheduled Tasks.
The task is a Python task which runs the BuildAndTest.py script, and starting in the CONT_ROOT/pcty/tests directory, where CONT_ROOT is an already checked out version of Continuity.
- Have all operating systems email if errors occur.
- Manage all the old summary files that are stored on lys.
- Add a test that will build and test a released version of Continuity.