[Mono-devel-list] Automated builds
Jaroslaw Kowalski
jaak at zd.com.pl
Wed May 19 01:23:33 EDT 2004
1. "My" setup is not actually mine. I took mcs/tools/tinderbox/tinderbox.sh
and modified it slightly to work in my environment + I completely replaced
"build_mono" procedure according to new build system. I use master Makefile
that directs the build file just because it does quite a good job of
detecting and propagating failures.
2. It would be good to run some unit tests along with the build. I suggest
running all nunit tests + testing xsp/mod_mono by wget'ting some test pages,
making sure they don't return 500 or 404 and comparing the output against
some patterns.
3. I can provide 2 machines for running the automated builds:
Fedora Core 2/Athlon 1GHz
Fedora Core 1/Athlon XP/1800+ on top of colinux (www.colinux.org)
4. I haven't looked into buildbot, but the automated build system needs to
be
a) automated ;-)
b) 100% repeatable - it must ALWAYS start from scratch and never rely on
partial builds
I suggest following procedure:
1) restore a clean, known-to-work copy of entire mono tree. I usually do
"rm -rf /opt/mono/*" before that. Alternatively RPMs can be used here.
2) get a clean, fresh CVS
3) reconfig, make bootstrap && make install
4) remove non-CVS files (using cvsclean.pl or similar)
5) reconfigure and make mono/mcs again which makes sure that the
just-installed environment is able to recompile itself
6) Once 2-6 are successful, save the current mono as the new
known-to-work copy for future use.
Jarek
More information about the Mono-devel-list
mailing list