Re: Fw: distributed cruise: parallel, builds

Dan Rollo <[email protected]> Tue, 31 Jan 2012 03:04:52 -0500
Newsgroups gmane.comp.java.cruise-control.user
Message-ID <[email protected]>
Hi Vin,

A couple ideas:

1. It sounds like what you really want is an extension of the 
"composite" builder, like a: "compositeConcurrent" builder. Such a new 
builder would allow multiple child builders to execute concurrently. 
However, this new builder would have to figure out how to deal with 
collecting all the results and handle failures in a thread safe manner.

2. You might be able to signal build failures across projects by using 
some sort of "listener" 
(http://cruisecontrol.sourceforge.net/main/configxml.html#listeners) 
that would place a file somewhere indicating failure in a build. Then, 
other builds could check for such a file (maybe using their own 
listeners) and fail an ongoing build when it detects that another build 
had failed.

I seem to remember discussions of other, more elegant approaches for 
projects signaling each other, so you should probably search the list 
archives too.

Dan


Date: Fri, 27 Jan 2012 11:04:01 -0800 (PST)
From: Vindhya S <[email protected]>
Subject: Re: [Cruisecontrol-user] Fw: distributed cruise: parallel
	builds
To: "[email protected]"
	<[email protected]>

Hi Dan,
?
Thanks a lot for the reply.
?
Here is my usecase:
?
1. Our current build taking more than 10 hours to complete, we want to 
reduce the build time(ex: 2 hours).
2. This build includes around 500 tests execution.
3. We are thinking of distributing the build?tests to different agents 
and get the results to master? under single project. so we can complete 
build in less time.
?
?
I am using cruise control distributed 2.8.4 source.
?
?
Questions:
?
1.?Here is my sample config file.
?
??????? ?<cruisecontrol>
?????????? <system>
???????????? <configuration>
???????????????? ?<threads count="5" />
???????????? </configuration>
???????? ?</system>
???????????<project name="master-pr"............???
?????????????????? <schedule interval="60">
????????????????????? <composite>
?????????????????????? ?<distributed entries="agent.name=num1"
?
??????????? </project>
??????????? <project name="agent-pr"............???
???????????? </cruisecontrol>
?
????? I have devided the tests among the projects(different build file 
for each project with different set of tests). build starting on the 
agents and executing the tests.
But how can I get single set of results(under master-pr)??.
?
2. If build on the agent fails(ex: if any unit test fails)?it should 
fail master-pr build?as agent-pr result part of master build. How it is 
possible as these two are different projects.
?
3. How master-pr will wait for the agent-pr build completion?.
?
?
Thanks
Vin

------------------------------------------------------------------------------
Keep Your Developer Skills Current with LearnDevNow!
The most comprehensive online learning library for Microsoft developers
is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
Metro Style Apps, more. Free future releases when you subscribe now!
http://p.sf.net/sfu/learndevnow-d2d