summaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
Diffstat (limited to 'docs')
-rw-r--r--docs/bugzilla-build-setup.html116
1 files changed, 92 insertions, 24 deletions
diff --git a/docs/bugzilla-build-setup.html b/docs/bugzilla-build-setup.html
index d1f45fc9266..0deed4d6c45 100644
--- a/docs/bugzilla-build-setup.html
+++ b/docs/bugzilla-build-setup.html
@@ -6,6 +6,7 @@
</head>
<body text = "#000000" link="#000fff" vlink="#ff0f0f" bgcolor="#ffffff">
+
<h1>Setting Up A Bugzilla Nightly Build</h1>
<p>
@@ -14,6 +15,9 @@
Center for Distributed Object Computing</a> has automated
daily builds to keep track of the progress made each day for
selected software and hardware platforms.
+ </p>
+
+ <h2>Unix Instructions</h2>
<p>
Below are the steps to take to add a platform to the current
@@ -23,10 +27,11 @@
used in BUILD_NAME as in the example in the previous sentence
(i.e., Solaris8_gcc =>
the Solaris 8 operating system and GNU's gcc/g++ compiler).
+ </p>
- <UL>
- <LI>Configure CVSROOT as it will be used in the build
-<PRE>
+ <ul>
+ <li>Configure CVSROOT as it will be used in the build
+<pre>
$ cvs checkout ACE_wrappers
$ cd ACE_wrappers
@@ -34,54 +39,117 @@
$ ./bin/create_ace_build -a build/BUILD_NAME
$ mkdir build/BUILD_NAME/auto_compile
$ touch build/BUILD_NAME/auto_compile/history
-</PRE>
+</pre>
- <LI>Configure build/BUILD_NAME/ace/config.h.
+ <li>Configure build/BUILD_NAME/ace/config.h.
(Solaris 8 is used here as an example.)
-<PRE>
+<pre>
$ echo '#include "ace/config-sunos5.8.h" > build/BUILD_NAME/ace/config.h
-</PRE>
+</pre>
- <LI>Configure build/BUILD_NAME/include/makeinclude/platform_macros.GNU
+ <li>Configure build/BUILD_NAME/include/makeinclude/platform_macros.GNU
Solaris 8 and GNU compiler is used here as an example. This example
also shows building without debug.
-<PRE>
+<pre>
$ cd build/BUILD_NAME/include/makeinclude
$ echo 'include $(ACE_ROOT)/include/makeinclude/platform_sunos5_g++.GNU' > platform_macros.GNU
$ echo 'debug=0' >> platform_macros.GNU
-</PRE>
+</pre>
- <LI>Setup build script in ~bugzilla/bin.
+ <li>Setup build script in ~bugzilla/bin.
(Copy an existing build script to use as a template. Solaris 8 and GNU compiler is used here as an example.)
-<PRE>
+<pre>
$ su bugzilla
$ cd ~/bin
$ cp auto_compile_sunos_gcc272 auto_compile_sunos8_gcc
-</PRE>
+</pre>
Modify the new auto compile file as needed. At a minimum, CHECKOUT and
BUILD will need to be modified.<BR><BR>
- <LI>Create a cron job to run the build.
+ <li>Create a cron job to run the build.
(Decide which machine the build should be done. Add a cron job to bugzilla's crontab.)
-<PRE>
+<pre>
$ ssh -l bugzilla <i>machine_of_choice</i>
$ crontab -e
<i>Add cron job to kick off the build every day.</i>
-</PRE>
+</pre>
- <LI>After the build has been running successfully a few days (not
+ <li>After the build has been running successfully a few days (not
necessarily that there aren't errors or warnings in the compilation or
- execution) incorporate build into Web scoreboard by modifying builds.lst
- and showlog.cgi files.
-<PRE>
- $ cd $ACE_wrappers/bin/nightlybuilds
- $ vi builds.lst # to include the build you're making
+ execution) incorporate it into the showlog.cgi script.
+<pre>
$ cd ~bugzilla/.www-docs/cgi-bin
$ vi showlog.cgi # to include the build you're making
-</PRE>
+</pre>
Modify the new auto compile file as needed. At a minimum, CHECKOUT and
BUILD will need to be modified.
- </UL>
+
+ </ul>
+
+ <h2>Win32 Instructions</h2>
+
+ <p>
+ The Win32 builds use a different set of scripts from the Unix nightly
+ builds. Instructions will be provided here for them at a future
+ date.
+ </p>
+
+ <h2>Scoreboard</h2>
+
+ <p>
+ The scoreboard is the web page created by <code>
+ ACE_wrappers/bin/nightlybuilds/scoreboard_update.pl</code>. The main
+ build scoreboard for the DOC Group is located at <a href=
+ "http://ringil.ece.uci.edu/scoreboard/">
+ http://ringil.ece.uci.edu/scoreboard/</a>.
+ </p>
+
+ <p>
+ The <code>scoreboard_update.pl</code> works by downloading a directory
+ via http, determining the build that has run last, download it, and
+ then parse and create html documents based on it. It requires that the
+ builds name their logs based on the time that the log was created (both
+ <code>auto_compile</code> and <code>prepare_log.pl</code> do this
+ correctly).
+ </p>
+
+ <p>
+ To integrate into the scoreboard, the following steps should be taken:
+ </p>
+
+ <ol>
+ <li>
+ Make the directory containing the log files accessible from the
+ internet (or at least from the machine running the scoreboard, in
+ this case, ringil.ece.uci.edu). This directory must be able to be
+ browsed via the web and should not require a password.
+ <br><br>
+ </li>
+
+ <li>
+ Add the build to the appropriate *.lst file in the <code>
+ ACE_wrappers/bin/nightlybuilds/*.lst</code>. The main scoreboard
+ uses builds.lst. Each entry looks like the following:
+<pre>
+ [BUILD_NAME]
+ TYPE = TIMEONLY
+ LIST = http://ace.cs.wustl.edu/~bugzilla/auto_compile_logs/build_dir/
+ WEB = http://ace.cs.wustl.edu/~bugzilla/cgi-bin/show_log_dir.cgi?build_dir
+</pre>
+ BUILD_NAME, LIST, and WEB should be updated to the appropriate values.
+ TYPE currently needs to be TIMEONLY. LIST refers to the address
+ needed to browse the logs directory. WEB refers to the address
+ used to link to the logs directory (we usually put a url to the
+ show_log_dir.cgi script here).
+ <br><br>
+ </li>
+
+ <li>
+ Check in the *.lst file. The scoreboard will automatically update
+ its copy of the list before parsing it.
+ <br><br>
+ </li>
+ </ol>
<hr>
<address><a href="mailto:joeh@cs.wustl.edu">Joe Hoffert</a></address>