我正在设置构建系统,并希望在仪表板和构建失败电子邮件的“项目报告”部分中显示构建失败的任务。
目前我有三个任务:
如果后两者中的任何一个失败,则在电子邮件或构建报告页面中哪个任务未通过构建失败并不明显。我需要通过日志来找出错误发生的位置。我想至少知道第一眼就失败了什么任务。
这是最好的CruiseControl - 在仪表板主页中:
msbuild fail http://img38.imageshack.us/img38/1018/msbuildfail.png alt text http://img25.imageshack.us/img25/4688/galliofail.png
现在,这还不够:
单击项目或该构建的构建报告时,无法看到失败的任务。
此信息根本不在日志文件中。这意味着我无法通过黑客入侵XSL将其收录到电子邮件中。
由于我的构建任务将是唯一的MSBuild任务,因此可以将其命名为MSBuildTask。可执行任务不是这种情况,因为我至少会有另外一两个可能失败的任务。我需要给他们描述性的名字。我的Gallio exec
任务有描述节点,但我不确定它在哪里使用。
<exec>
<description>Unit Tests</description>
<executable>$(path.gallio)</executable>
</exec>
答案 0 :(得分:3)
我是ccnet的开发者之一。问题已被记录。 http://jira.public.thoughtworks.org/browse/CCNET-1825
答案 1 :(得分:1)
不是一个优雅的解决方案,但您可以使用目标上的OnError属性来记录某些内容,即使它必须是静态的。另一种选择是记录每个成功的步骤,然后使用XSL last()来获取最后一个成功的步骤。它很糟糕,但它至少比你以前更多。
答案 2 :(得分:0)
在我看来,你没有合并MSBuild和Gallio任务的输出。我不记得我头脑中的正确语法(并且CruiseControl.NET网站似乎已关闭),但如果你发布配置文件,我可能会帮助你。