【问题标题】:How to add revision numbers in the title of e-mail published by cruisecontrol.NET?如何在 Cruisecontrol.NET 发布的电子邮件标题中添加修订号?
【发布时间】:2010-04-30 19:52:57
【问题描述】:
这是我应该在一年前提出的问题。
回到过去,我将 Cruisecontrol.NET 1.4.2.14 设置为我们的持续集成系统。我想添加源版本号和它构建的二进制文件的版本号。但是,由于如果任何外部文件和环境变量(包括 ccnet.config)被修改,它会自动重新启动,因此我无法找到一种方法来编辑构建通知电子邮件的标题,同时不让我的 Cruisecontrol.NET 重新启动。
不知何故,我以一种糟糕的方式解决了这个问题,不值得一提。现在是时候把事情做对了。
感谢任何帮助。提前致谢。
【问题讨论】:
标签:
continuous-integration
cruisecontrol.net
【解决方案1】:
您想要做什么并不完全清楚,但您可以将修订信息提取为 XML(此处来自 Subversion):
<!-- Extract Subversion revision information as XML. -->
<target name="revisionstamp">
<property name="_target" value="${TmpDir}/svn.xml"/>
<exec
program="${Svn}"
output="${_target}">
<arg value="info"/>
<arg value="--xml"/>
<arg file="${BaseDir}"/>
</exec>
</target>
然后从 XML 中提取修订号:
<xmlpeek
file="${TmpDir}/svn.xml"
xpath="/info/entry/@revision"
property="revision"/>
最后,使用${revision} 构造您想要的任何文件名或目录。