summaryrefslogtreecommitdiff
path: root/doc/src/nightly.html
diff options
context:
space:
mode:
Diffstat (limited to 'doc/src/nightly.html')
-rw-r--r--doc/src/nightly.html164
1 files changed, 164 insertions, 0 deletions
diff --git a/doc/src/nightly.html b/doc/src/nightly.html
new file mode 100644
index 000000000..d86037884
--- /dev/null
+++ b/doc/src/nightly.html
@@ -0,0 +1,164 @@
+<html>
+<head>
+<title>FreeS/WAN nightly testing guide</title>
+<!-- Changed by: Michael Richardson, 23-Jul-2002 -->
+<meta name="keywords" content="Linux, IPsec, VPN, security, FreeSWAN, testing, User-Mode-Linux, UML">
+
+<!--
+
+Written by Michael Richardson for the Linux FreeS/WAN project
+Freely distributable under the GNU General Public License
+
+More information at www.freeswan.org
+Feedback to users@lists.freeswan.org
+
+$Id: nightly.html,v 1.1 2004/03/15 20:35:24 as Exp $
+
+$Log: nightly.html,v $
+Revision 1.1 2004/03/15 20:35:24 as
+added files from freeswan-2.04-x509-1.5.3
+
+Revision 1.3 2002/07/23 18:42:16 mcr
+ added instructions on setup of nightly build.
+
+Revision 1.2 2002/06/19 10:06:07 mcr
+ added nightly.html to the documentation tree.
+
+Revision 1.1 2002/05/24 03:33:30 mcr
+ start at document on nightly regression testing.
+
+
+-->
+</head>
+
+<body>
+
+<h1><a name="nightly">Nightly regression testing</a></h1>
+
+<p>
+The nightly regression testing system consists of several shell scripts
+and some perl scripts. The goal is to check out a fresh tree, run "make check" on it,
+record the results and summarize the results to the team and to the web site.
+</p>
+
+<P>
+Output can be found on <A HREF="http://bugs.freeswan.org:81/">adams</A>,
+although the tests are actually run on another project machine.</P>
+
+<H1><A name="nightlyhowto">How to setup the nightly build</A></h1>
+
+<P>
+The best way to do nightly testing is to setup a new account. We call the
+account "build" - you could call it something else, but there may
+still be some references to ~build in the scripts.
+</P>
+
+<H2> Files you need to know about </H2>
+<P>
+As few files as possible need to be extracted from the source tree -
+files are run from the source tree whenever possible. However, there
+are some bootstrap and configuration files that are necessary.
+</P>
+
+<P>
+There are 7 files in testing/utils that are involved:
+<DL>
+<DT> nightly-sample.sh </DT>
+<DD> This is the root of the build process. This file should be copied out
+of the CVS tree, to $HOME/bin/nightly.sh of the build account. This
+file should be invoked from cron. </DD>
+<DT> freeswan-regress-env-sample.sh </DT>
+<DD> This file should be copied to $HOME/freeswan-regress-env.sh. It
+ should be edited to localize the values. See below.</DD>
+<DT> regress-cleanup.pl </DT>
+<DD> This file needs to be copied to $HOME/bin/regress-cleanup.pl. It
+ is invoked by the nightly file before doing anything else. It
+ removes previous nights builds in order to free up disk space for
+ the build about to be done.</DD>
+<DT> teammail-sample.sh </DT>
+<DD> A script used to send results email to the "team". This sample
+ script could be copied to $HOME/bin/teammail.sh. This version will
+ PGP encrypt all the output to the team members. If this script is used,
+ then PGP will have to be properly setup to have the right keys.</DD>
+<DT> regress-nightly.sh </DT>
+<DD> This is the first stage of the nightly build. This stage will
+ call other scripts as appropriate, and will extract the source code
+ from CVS. This script should be copied to $HOME/bin/regress-nightly.sh</DD>
+<DT> regress-stage2.sh </DT>
+<DD> This is the second stage of the nightly build. It is called in
+ place. It essentially sets up the UML setup in umlsetup.sh, and
+ calls "make check".</DD>
+<DT> regress-summarize-results.pl
+<DD> This script will summarize the results from the tests to a
+ permanent directory set by $REGRESSRESULTS. It is invoked from the
+ stage2 nightly script.
+<DT> regress-chart.sh </DT>
+<DD> This script is called at the end of the build process, and will
+ summarize each night's results (as saved into $REGRESSRESULTS by
+ regress-summarize-results.pl) as a chart using gnuplot. Note that
+ this requires at least gnuplot 3.7.2.</DD>
+</DL>
+
+<H2>Configuring freeswan-regress-env.sh</H2>
+
+<P>For more info on KERNPOOL, UMLPATCH, BASICROOT and SHAREDIR, see
+ <A HREF="umltesting.html">User-Mode-Linux testing guide</A>.
+</P>
+
+<DL>
+<DT> KERNPOOL </DT>
+<DD> Extract copy of some kernel source to be used for UML builds</DD>
+<DT> UMLPATCH </DT>
+<DD> matching User-Mode-Linux patch.</DD>
+<DT> BASICROOT</DT>
+<DD> the root file system image (see
+ <A HREF="umltesting.html">User-Mode-Linux testing guide</A>).</DD>
+<DT> SHAREDIR=${BASICROOT}/usr/share</DT>
+<DD> The /usr/share to use.</DD>
+<DT> REGRESSTREE</DT>
+<DD> A directory in which to store the nightly regression
+ results. Directories will be created by date in this tree.</DD>
+
+<DT> TCPDUMP=tcpdump-3.7.1</DT>
+<DD> The path to the <A HREF="http://www.tcpdump.org/">tcpdump</A>
+ to use. This must have crypto compiled in, and must be at least 3.7.1</DT>
+
+<DT> KERNEL_RH7_2_SRC=/a3/kernel_sources/linux-2.4.9-13/</DT>
+<DD> An extracted copy of the RedHat 7.2. kernel source. If set, then
+ the packaging/rpm-rh72-install-01 test will be run, and an RPM will
+ be built as a test.</DD>
+
+<DT> KERNEL_RH7_3_SRC=/a3/kernel_sources/rh/linux-2.4.18-5</DT>
+<DD> An extracted copy of the RedHat 7.3. kernel source. If set, then
+ the packaging/rpm-rh73-install-01 test will be run, and an RPM will
+ be built as a test.</DD>
+
+<DT> NIGHTLY_WATCHERS="userid,userid,userid"</DT>
+<DD> The list of people who should receive nightly output. This is
+ used by teammail.sh</DD>
+
+<DT> FAILLINES=128</DT>
+<DD> How many lines of failed test output to include in the nightly
+ output</DD>
+
+<DT> PATH=$PATH:/sandel/bin export PATH</DT>
+<DD> You can also override the path if necessary here.</DD>
+
+<DT> CVSROOT=:pserver:anoncvs@ip212.xs4net.freeswan.org:/freeswan/MASTER</DT>
+<DD> The CVSROOT to use. This example may work for anonymous CVS, but
+ will be 12 hours behind the primary, and is still experimental</DD>
+
+<DT> SNAPSHOTSIGDIR=$HOME/snapshot-sig</DT>
+<DD> For the release tools, where to put the generated per-snapshot
+ signature keys</DD>
+
+<DT> LASTREL=1.97</DT>
+<DD> the name of the last release branch (to find the right
+ per-snapshot signature</DT>
+
+<DD>
+
+</DL>
+
+</body>
+</html> \ No newline at end of file