CruiseControl multiple source folders
I want to compile a project (with CruiseControl) not only if its source c开发者_StackOverflowhanges, but also if some dependencies change.
example: I got 3 folders:
c:\myProject\src (my source folder)
c:\dependency1\src (source code of dependency 1) c:\dependency2\output (dll of dependency 2)I want to compile my project in cruisecontrol if anything in one of these folders change.
How can I configure this in my ccnet.config?
bye and thanks juergen
Should be something like this:
<project>
<!-- ... -->
<sourcecontrol type="multi">
<requireChangesFromAll>False</requireChangesFromAll>
<sourceControls>
<svn>
<trunkUrl>svn://svn.mycompany.com/myProject/trunk</trunkUrl>
<workingDirectory>c:\myProject\src</workingDirectory>
<!-- ... -->
</svn>
<svn>
<trunkUrl>svn://svn.mycompany.com/dependency1/trunk</trunkUrl>
<workingDirectory>c:\dependency1\src</workingDirectory>
<!-- ... -->
</svn>
<filtered>
<exclusionFilters />
<inclusionFilters>
<pathFilter>
<caseSensitive>False</caseSensitive>
<pattern>c:\dependency2\output\dependency2.dll</pattern>
</pathFilter>
</inclusionFilters>
<sourceControlProvider type="filesystem">
<autoGetSource>False</autoGetSource>
<ignoreMissingRoot>True</ignoreMissingRoot>
<repositoryRoot>c:\dependency2\output</repositoryRoot>
</sourceControlProvider>
</filtered>
</sourceControls>
</sourcecontrol>
<!-- ... -->
</project>
If you have the dependencies setup as subversion externals, then follow the instructions on this StackOverflow thread.
If they are each in their own subversion repository, you might try something like this post by Mark Cohen.
If the changes are only at the filesystem level, then you might try the <filesystem>
modification set detector.
精彩评论