I gave this a lot of thought a year or so ago, and even began to write a 
  basic skeleton.

I came up with a design as follows:

A master which watches a [CVS] repository, maintains a list of 
builds-to-be-done (branch/label, jvm, OS etc), and a list of slave 
machines (and their OS). The master sends ant scripts to slaves which 
are capable of upgrading the Java environment on the slave, checking out 
src trees, doing builds etc.

A number of slaves. These can be anywhere on the web. They simply 
register with the master and inform it when it may make use of their 
spare cycles. They run whatever ant files are sent to them and report 
results back to the master.

The master correlates results, notifies developers who can be traced to 
checkins that break builds, maintains a hall of shame etc. Anyone can 
hit the presentation layer of the master over the web and see lots of 
nice graphs, the most important of which shows them exactly which 
timestamp they should use to get a working build for their platform etc...

I thought it should be written as a nice Java compile/test farm which 
could plug into e.g. SourceForge, so even if you can't contribute code 
you can contribute cycles - an SF@Home.

Diff this with current CC fn-ality - the result is my wish list. I'd 
love to write it, but just don't have the time.


Jules



Michael Rettig wrote:
> Developers,
> 
> I'm looking to setup a continuous integration enviroment for the JBoss project. Does 
>anyone know of one that exists already?
> 
> If you don't know what continuous integration and what it can do for a project. You 
>can read more about it:
> 
> http://martinfowler.com/articles/continuousIntegration.html
> 
> I'm planning to setup a box that will detect changes to the CVS repo then kick off 
>an automated build to do a clean build and test of JBoss. A public webpage will be 
>generated that will be available to see the current status of the build, and past 
>builds. 
> 
> This process will help eliminate problems caused by developers checking in code that 
>simply doesn't compile or breaks tests. When the build does get broken, it only takes 
>a quick look at the web page to figure who is responsible. 
> 
> Also, the build can be configured to automatically email anyone that breaks the 
>build. 
> 
> CruiseControl will be used to build the project and generate the results. It's 
>another sourceforge OS project hosted on sourceforge. 
> 
> http://sourceforge.net/projects/cruisecontrol
> 
> I'm looking for some feedback on this. What do you want the build to do? Do you want 
>it to email you when the build breaks? What information do you want displayed on the 
>webpage?
> 
> Any feedback is appreciated.
> 
> Thanks,
> 
> Mike Rettig





-------------------------------------------------------
This SF.NET email is sponsored by: AMD - Your access to the experts
on Hammer Technology! Open Source & Linux Developers, register now
for the AMD Developer Symposium. Code: EX8664
http://www.developwithamd.com/developerlab
_______________________________________________
Jboss-development mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/jboss-development

Reply via email to