如何让CruiseControl.NET在电子邮件中附加错误日志?

时间:2012-05-22 20:13:40

标签: cruisecontrol.net cruisecontrol

这是我的发布商设置示例:

<publishers>
  <statistics />
  <xmllogger logDir="F:\ccnet\Project\xxxxxx\Artifacts\buildlogs" />
  <buildpublisher>
    <sourceDir>$(buildDir)\_PublishedWebsites\$(projectName)</sourceDir>
    <publishDir>$(webDir)</publishDir>
    <useLabelSubDirectory>false</useLabelSubDirectory>
    <alwaysPublish>false</alwaysPublish>
  </buildpublisher>
  <email mailport="25"
       mailhostUsername="xxx@xx.xx"
       mailhostPassword="xxxxxxxxx"
       includeDetails="TRUE"
       useSSL="FALSE">
    <includeDetails>TRUE</includeDetails>
    <from>xxxx@xx.xx</from>
    <mailhost>xxxx.xxxx.xxx</mailhost>
    <users>
      <user name="Flemming" group="buildmaster" address="xx@xx.xxu" />
    </users>
    <groups>
      <group name="buildmaster">
        <notifications>
          <notificationType>Always</notificationType>
        </notifications>
      </group>
    </groups>
  </email>
</publishers>

在webdashboard中一切都很好。它显示标准xslt列表中的所有信息。

每次构建后我收到一封电子邮件,但它只显示来自header.xsl,unittest.xsl(不显示单元测试)和modification.xsl的信息。但是它没有显示来自compile.xsl的任何内容。

来自ccnet.exe.config的xslfiles:

<xslFiles>
  <file name="xsl\header.xsl"/>
  <file name="xsl\compile.xsl"/>
  <file name="xsl\msbuild.xsl"/>
  <file name="xsl\modifications.xsl"/>
  <!-- <file name="xsl\unittests.xsl"/>
  <file name="xsl\fit.xsl"/>
  <file name="xsl\fxcop-summary_1_36.xsl"/> -->
</xslFiles>

我在这里缺少什么? 我尝试插入TRUE以及将其作为属性,但没有区别。

2 个答案:

答案 0 :(得分:1)

我找到了解决方案。 我现在使用compile_msbuild.xsl

而不是在xsllists中使用compile.xsl

现在我收到邮件中的所有错误和警告!!!

答案 1 :(得分:0)

来自CCNET's EmailPublisher documentation

  

确保所有合并发布者以及Xml Log Publisher任务都在发布者之前完成,否则您将无法在电子邮件中包含构建中的输出。