On Fri, Sep 17, 2004 at 08:02:33AM +0200, Kristian Köhler wrote: > Hi > > is there any plan to use the same script on all boxes? > I suggest to use cruisecontrol (http://cruisecontrol.sourceforge.net/). > The "old" Windows2000 tests run with it. > > Cruisecontrol itself is a java program triggering a checkout and rebuild > of the project. It is configured via xml files. So the same xml config > could be used on all boxes. The results will look the same in all cases > ;-) Cruisecontrol also supports publishing of the build result as HTML > files which could be published on the geronimo site (might be more > convenient then email). Only failure mails with a link to the published > results could be sent to the mailinglist. > > Currently I'm testing the new config for the Windows2000 build with > subversion. I could post the config if this is an option. >
I took a look at cruisecontrol and the plugin side of it looks promising. We don't do a vanilla nightly build, so it would be a fair amount of work to reproduce things in a combination of cruisecontrol and maven plugins. It could probably be done if you have the time. Here is what I have in the current rev of my nightly build script, which has yet to be hooked up. BUILD-AND-TEST checkout head/trunk from cvs/svn build, ignoring test failures, pipe output to file grep file for failed tests create xml of results and sys info pipe the xml over ssh into a file central server publish snapshot jars if test passed PUBLISH-RESULTS (once per night from central server) run xslt stylesheet on central xml file email output to scm list cat the central file into a file of all previous results empty cental file "cat /dev/null > central_file" NIGHTLY-RELEASE (run if build/test passed) checkout current date (cvs) or current rev (svn) (using 48765 as example svn rev for explanation) munge the etc/version-info.ent to 1.0-48765 zip geronimo-1.0-48765 dir into geronimo-1.0-48765-src.zip again for tar build with no tests zip modules/assembly/target/geronimo-1.0-48765 dir into geronimo-1.0-48765.zip again for tar create MD5 files for src/bin tars and zips with openssl again but with SHA instead of MD5 create 1.0-48765 dir on nightly release server using ssh copy tar.gz, zip, md5, and sha files into 1.0-48765 using scp publish jars to remote maven repo OFFICIAL-RELEASE (same as nightly release with the following differences) version will be 1.0-M3 rather than date or svn rev munged etc/version-info.ent is checked in cvs/svn tag is created with v1_0_M3 as tag name tag is checked out from cvs/svn (tar/zip src, maven build, tar/zip binary -- same as before) create pgp signatures for tars/zips in addition to md5 and sha (create dir on release server, copy archives, publish maven jars) Anyway, if we can move all that over into any combination of cruisecontrol plugins/maven plugins/groovy, that would be ok with me. Would be incredible actually. If you are interested in moving us that direction, I can send you the existing scripts/stylesheets. -David