如何在CruiseControl.net中发送包含svn提交消息和其他详细信息的电子邮件?

时间:2009-12-02 20:28:06

标签: svn continuous-integration cruisecontrol.net

我想通过电子邮件发送构建结果:

  • 构建
  • 中的svn修订版
  • 为这些修订提交消息
  • 其他详细信息,例如我们ftp生成的可执行文件的位置

有人能指出我的资源来展示如何使用CC.Net做到这一点吗?

我能够获取包含更改列表的标准电子邮件,但我看不到修改电子邮件内容的方法。我不想发多封电子邮件。

看起来我需要设置xslFiles,但我不清楚如何做到这一点或看起来应该是什么样的。

2 个答案:

答案 0 :(得分:3)

每个CC.NET项目都有一个“发布者”部分。其中一个发布者可以是“电子邮件”。示例如下:

<publishers>
  <xmllogger ... />
  <buildpublisher>
    <sourceDir></sourceDir>
    <publishDir></publishDir>
    <useLabelSubDirectory>True</useLabelSubDirectory>
  </buildpublisher>
  <email from="buildmaster@mycompany.com" mailhost="mail.mycompany.com" mailhostPassword="..." mailhostUsername="buildmaster" includeDetails="True">
    <users>
      <user name="Petros Amiridis" address="amiridis@mycompany.com" group="buildmaster" />
    </users>
    <groups>
      <group name="developers" notification="Always" />
      <group name="buildmaster" notification="Always" />
      <group name="consultants" notification="Always" />
    </groups>
  </email>
</publishers>

此电子邮件包含构建标签,svn变更集和提交消息。

您可以详细了解Email Publisher in the CruiseControl.NET documentation

答案 1 :(得分:1)

很多普通的exec我很害怕。您需要创建一个postbuild部分并挂钩自定义MSBuild或Nant任务,该任务包装svn log并可能包含svn info命令并解析它。

以这种方式思考,至少你可以完全控制自己在做什么,但如果你正在为此寻找开箱即用的东西,我认为你运气不好。 / p>

使用电子邮件发布者不会向您提供构建后发生的提交。