gecko-dev/webtools/tinderbox2/Install

66 строки
2.8 KiB
Plaintext

Currently this is Alpha/Beta code, because no one but me is using it
yet (and even I am not using all the features I have tested). If you
are not really comfortable coding in perl I suggest you wait until
more people are using it and we get the minor kinks worked out of the
code and documentation.
To install:
1) read and edit the variables found in the files ./src/lib/* particularly:
TinderConfig.pm: general configuration settings
Error_Parse.pm: the regular expressions for highlighting errors
FileStructure.pm: filesystem (storage) and global/per-project settings
BTData.pm: bug tracking configuration
TreeData.pm: version control configuration
2) run ./configure
3) run make
4) run the test programs as described in /build/test/ReadMe to ensure
that you have configured the program correctly.
5) run make install
6) set up a cron job to run $prefix/bin/tinder.cgi --daemon-mode
every five minutes.
set up a cron job to run $prefix/bin/tinder.cgi/rmlogs once a day.
six am is a good time to run this as the machine load is light and
will avoids any day light savings problems.
7) set up the $prefix/bin/processmail* programs to receive the
incoming tinderbox mail. The process id which receives and process
the mail must be the the same id which runs the cron job. We use the
mail address 'tinderbox_builds' for build information destined for the
webserver. Each build machine mails the build log of each build to
this address, and puts some build data at the top of the log. Build
information includes whether the build was a success, which error
parsers to use on the log file and what build this is. Similarly the
bug tracking system sends mail to 'tinderbox_bugs' on the webserver
whenever a Bug ticket changes state. It is not interesting to see
which tickets are being worked on, so we restrict mailing to changes
in state not updates of a ticket. (Currently I have a program called
'processmail' it will eventually be renamed to 'processmail_builds' so
that it is clear what mail it is processing.)
8) if you are using VC_CVS.pm then you will need to put a ~/.cvspass
for tinderbox to use. Log into the CVS repository yourself, once for
each tree you have defined. This must be done exactly as you wrote it
in TreeData. Then copy your ~/.cvspass into tinderbox home directory.
This is the REAL home of the Tinderbox daemon, as listed in
/etc/passwd/ and set in the $HOME environmental variable for
tinder.cgi.
9) setup the build machines to mail their build logs
(with tinderbox variables on the top) to the web server machine.
New builds must not start earlier then 6 minutes after the
last build started.
10) Check that the time on your webserver and your build machine is in
sync. Check that mail if build mail bounces either on the build
machine or on the webserver machine, that it will be recieved by
someone who can act on it.