view contrib/nightly_tests/README @ 417:195096819152 1.0.0-rc1

Cleanups in documentation
author Sebastien Decugis <sdecugis@nict.go.jp>
date Thu, 08 Jul 2010 17:55:18 +0900
parents 3ed2c84d9e23
children e16866e190a4
line wrap: on
line source

This folder contains information and scripts to run a new test configuration for nightly builds 
and reporting the results to freeDiameter dashboard at:
  http://www.freediameter.net/CDash/index.php?project=freeDiameter

The information gathered here mostly comes from the following pages:
 http://www.itk.org/Wiki/CMake_Testing_With_CTest
 http://www.itk.org/Wiki/CMake_Scripting_Of_CTest
 http://www.itk.org/Wiki/CTest:Buildserver

=============

INSTRUCTIONS to setup a new build slave for the freeDiameter buildserver:

1) Install all dependencies for freeDiameter. See the "prereqs" file (for Debian/Ubuntu).
	$ sudo aptitude install `wget http://www.freediameter.net/hg/freeDiameter/raw-file/tip/contrib/nightly_tests/prereqs -O - | grep -v -e "^#"`

2) Create the "test" database for app_acct test (we assume the tests are run as user "test" here)
	# su - postgres
	# createuser test
	 Shall the new role be a superuser? (y/n) n
	 Shall the new role be allowed to create databases? (y/n) y
	 Shall the new role be allowed to create more new roles? (y/n) n
	# logout
	$ whoami
	 test
	$ createdb test
	$ psql test
	 psql (8.4.4)
	 Type "help" for help.

	 test=> 
	 CREATE TABLE incoming_test (
	 recorded_on timestamp with time zone NOT NULL,
	 "Accounting-Record-Type" integer,
	 "Session-Id" bytea,
	 "Accounting-Record-Number" integer,
	 "Route-Record1" bytea,
	 "Route-Record2" bytea,
	 "Route-Record3" bytea,
	 "Route-Record4" bytea );
	 \q

3) Create a directory ~/fDtests
	$ cd
	$ mkdir fDtests
	$ cd fDtests

4) Retrieve the runtests.sh script and save in this directory
	$ wget http://www.freediameter.net/hg/freeDiameter/raw-file/tip/contrib/nightly_tests/runtests.sh
	$ chmod +x runtests.sh

5) Create a file local.cmake defining the name of the build slave in this directory also.
	$ echo "SET(CTEST_SITE \""`hostname`"\")" > local.cmake
	
   For FreeBSD:
   	$ echo "set(CTEST_BUILD_OPTIONS \"\${CTEST_BUILD_OPTIONS} -DFLEX_EXECUTABLE:FILEPATH=/usr/local/bin/flex\")" >> local.cmake

6) Run the script once to check it works properly

7) Set up a crontab to run the script
	$ wget http://www.freediameter.net/hg/freeDiameter/raw-file/tip/contrib/nightly_tests/cronjob.sh
	$ chmod +x cronjob.sh
	$ crontab -l
0 0 * * * /home/test/fDtests/cronjob.sh > /home/test/fDtests/cronjob.log 2>&1
"Welcome to our mercurial repository"