如何停止巡航控制重新建设一个构建失败后?
-
27-09-2019 - |
题
我从周末回来发现有人**** ****啊哈错过了一个文件提交最后一件事周五下午...巡航控制已经有乐趣,并试图重新建立每五分钟自那时以来,尽管没有进一步的提交。
这是我和我的同事收到了巡航控制大约六hojillion电子邮件,这意味着。一个单一的失败电子邮件将绰绰有余通知我们。
有没有办法在失败时停止巡航控制系统的建设,至少要等到新的提交发生?
修改强>:新增配置XML
<project name="XXXX">
<listeners>
<currentbuildstatuslistener file="logs/${project.name}/status.txt" />
</listeners>
<bootstrappers>
<svnbootstrapper file="https://XXXXX/trunk/build/cruisecontrol.xml" username="XXXX" password="XXXX" />
</bootstrappers>
<modificationset quietperiod="300">
<svn localWorkingCopy="projects/${project.name}/" RepositoryLocation="https://XXXXX/trunk/project1" username="XXXX" password="XXXX" />
<svn localWorkingCopy="projects/${project.name}/" RepositoryLocation="https://XXXXX/trunk/project2" username="XXXX" password="XXXX" />
<svn localWorkingCopy="projects/${project.name}/" RepositoryLocation="https://XXXXX/trunk/project3" username="XXXX" password="XXXX" />
<svn localWorkingCopy="projects/${project.name}/" RepositoryLocation="https://XXXXX/trunk/project4" username="XXXX" password="XXXX" />
</modificationset>
<schedule interval="300">
<ant anthome="apache-ant-1.7.0" buildfile="projects/${project.name}/build/cruisecontrol.xml" propertyfile="projects/${project.name}/project1/production.build.properties" />
</schedule>
<log dir="logs/${project.name}/">
<merge file="projects/${project.name}/_reports/checkstyle_report.xml" />
<merge dir="projects/${project.name}/_reports/pmd_report.xml" />
<merge dir="projects/${project.name}/_reports/junit" />
</log>
<publishers>
<onsuccess>
<artifactspublisher dest="artifacts/${project.name}" dir="projects/${project.name}/_dist" />
<artifactspublisher dest="artifacts/${project.name}" dir="projects/${project.name}/_reports" subdirectory="_reports"/>
</onsuccess>
<email spamWhileBroken="true" returnAddress="XXX@EXAMPLE.com" subjectPrefix="[BUILD]" buildResultsURL="http://XXXXX/dashboard/build/detail/project" mailHost="mail.EXAMPLE.com" skipUsers="true" >
<failure address="XXX@EXAMPLE.com" />
<success address="XXX@EXAMPLE.com"/>
</email>
</publishers>
解决方案
不buildafterfailed
的<project>
属性,你需要的东西?
在 CruiseControl的配置参考属性的描述:
应该CruiseControl的不断建设,即使它已经失败,并没有新的 检测到修改?如果你想CruiseControl的这个功能非常有用 以检测构建失败,因为外部依赖性的情况下, (如临时失败数据库连接)。
其他提示
我认为这是可以配置巡航控制为仅生成时,它检测到在版本控制系统的变化。如果生成中断,而你没有任何检查,克鲁斯应该简单地检查源代码库,发现没有变化,回去睡觉直到下一次。
不隶属于 StackOverflow