<!-- cruisecontrol's config.xml deploy documents in http://cruisecontrol.sourceforge.net/main/configxml.html -->
<cruisecontrol>
<!-- we can define some parameters here -->
<property name="artifacts" value="./artifacts" />
<!--
project name should be same as name of the folder which path is cruisecontrol/projects, buildafterfailed="false" means cc will not build if you do not update code, if buildafterfailed="true" or you just do not define it, cc will build all along until it is correct, you will receive hundreds of e_mail one day
-->
<project name="CeoPhase1" buildafterfailed="false">
<!-- monitor the change of project -->
<listeners>
<!-- project.name is what you define on top. In this projext, project.name = CeoPhase1 -->
<currentbuildstatuslistener file="logs/${project.name}/status.txt" />
</listeners>
<!-- CruiseControl update code from svn -->
<bootstrappers>
<svnbootstrapper localWorkingCopy="projects/${project.name}" />
</bootstrappers>
<!-- monitor the project, if there is change, run buildfile to deploy again,
if there is no change, do not run buildfile. There is 60 seconds, and we can not run in this 60 seconds,
to protect svn update completely -->
<modificationset quietperiod="60">
<svn localWorkingCopy="projects/${project.name}" />
</modificationset>
<!-- specify rebuild every 600 seconds when there is change in project-->
<schedule interval="600">
<!-- specify the buildfile which runs in ant -->
<ant anthome="apache-ant-1.7.0" buildfile="projects/${project.name}/build.xml" >
<!-- set jvm argument make sure it have enough memory -->
<jvmarg arg="-Xms64m -Xmx512m" />
</ant>
</schedule>
<!-- specify where the logs are -->
<log>
<merge dir="projects/${project.name}/report" />
</log>
<!-- publish result -->
<publishers>
<!-- put war package to artifats direction when build success -->
<onsuccess>
<artifactspublisher dest="artifacts/${project.name}" file="projects/${project.name}/dist/${project.name}.war" />
</onsuccess>
<!-- sent e-mail to someone, give him(her) a link of web address -->
<email mailhost="mail.hengtiansoft.com" returnaddress="CruiseControl@hengtiansoft.com"
buildresultsurl="http://172.16.4.41:9000/cruisecontrol/buildresults/${project.name}">
<!-- specify send e-mail to whom when build fail -->
<failure address="cisco_ceocio_dev@hengtiansoft.com" />
<!-- specify send e-mail to whom when build success -->
<success address="cisco_ceocio_dev@hengtiansoft.com" />
</email>
</publishers>
</project>
<project name="connectfour">
<listeners>
<currentbuildstatuslistener file="logs/${project.name}/status.txt"/>
</listeners>
<bootstrappers>
<antbootstrapper anthome="apache-ant-1.7.0" buildfile="projects/${project.name}/build.xml" target="clean" />
</bootstrappers>
<modificationset quietperiod="30">
<filesystem folder="projects/${project.name}"/>
</modificationset>
<schedule interval="3600">
<ant anthome="apache-ant-1.7.0" buildfile="projects/${project.name}/build.xml"/>
</schedule>
<log>
<merge dir="projects/${project.name}/target/test-results"/>
</log>
<publishers>
<onsuccess>
<artifactspublisher dest="artifacts/${project.name}" file="projects/${project.name}/target/${project.name}.jar"/>
</onsuccess>
<htmlemail mailhost="mail.hengtiansoft.com" returnaddress="keyongshi@hengtiansoft.com"
buildresultsurl="http://172.16.4.41:9000/cruisecontrol/buildresults/${project.name}">
<failure address="keyongshi@hengtiansoft.com" />
<success address="keyongshi@hengtiansoft.com" />
</htmlemail>
</publishers>
</project>
</cruisecontrol>