views:

16

answers:

2

Just starting to use Cruise Control, but can't seem to find anything on this or at least a better approach. Simple script:

<cruisecontrol xmlns:cb="urn:ccnet.config.builder">

Test cvs.exe theRoot theModule ....

Problem is I would like to check more than one module for an update but NOT every module in theRoot. Something like this:

<sourcecontrol type="cvs">
   <executable>cvs.exe</executable>
   <cvsroot>theRoot</cvsroot>
   <module>theModule</module>
   <module>theSecondModule</module>
   <module>theThirdModule</module>
</sourcecontrol> 

Is there a way to do this?

A: 

Change your type to "multi" and add sections for each module being tracked

<sourcecontrol type="multi">
  <sourceControls>
    <cvs>
       <executable>cvs.exe</executable>
       <!-- Insert other module1 details -->
    </cvs>
    <cvs>
       <executable>cvs.exe</executable>
       <!-- Insert other module2 details -->
    </cvs>
  </sourceControls>
</sourcecontrol>

Here's a bit of documentation

Pedro
A: 

You could also use a filtered source control : http://confluence.public.thoughtworks.org/display/CCNET/Filtered+Source+Control+Block .
What you describe is a list of inclusionfilters filtered by path.

<sourcecontrol type="filtered">
  <sourceControlProvider type="cvs">
    <executable>cvs.exe</executable>
    <project>$/Kunigunda/ServiceLocator</project>
</sourceControlProvider>
<inclusionFilters>
    <pathFilter>
      <pattern>$/Module1/**/*.*</pattern>
    </pathFilter>
    <pathFilter>
      <pattern>$/Module2/**/*.*</pattern>
    </pathFilter>
    <pathFilter>
      <pattern>$/Module3/**/*.*</pattern>
    </pathFilter>
  </inclusionFilters>
</sourcecontrol>
Benjamin Baumann