如何将TFS构建变量传递给TFS电子邮件警报xsl文件

时间:2016-09-19 14:47:07

标签: xml xslt tfs tfs2015

我正在尝试在构建完成后触发自定义电子邮件警报。我有一组存储在构建代理中的测试结果(使用IIS托管)。我使用TFS变量来存储日志结果的路径:

$(LogsPublishDirectory)\AppName_$(Build.BuildNumber)

我需要在电子邮件中包含访问这些日志的信息(作为链接),例如:

http://123.456.789.00:5555/AppName_$(Build.BuildNumber)

从MSDN链接(https://msdn.microsoft.com/en-us/library/bb552337(v=vs.120).aspx),我想我需要修改构建作业的XSL文件。

我的问题是:

  1. 如何将TFS变量传递到XSL文件中,以便动态生成日志链接?
  2. 请提供有关如何编辑XSL文件的指导,因为我之前从未这样做过?

1 个答案:

答案 0 :(得分:0)

如何编辑xsl文件?

首先执行这些过程,您必须是Team Foundation应用层服务器上 Administrators 安全组的成员。

  1. 导航到文件位置Drive:\%programfiles%\Microsoft Team Foundation Server 14.0\Application Tier\TFSJobAgent\Transforms\1033
  2. 找到相关的xsl文件。您应该制作任何文件的备份副本 您想要更改,然后测试您的更改。
  3. 在记事本或其他文本编辑器中打开.xsl文件。我选择VS打开文件。
  4. 编辑并保存文件,以在通知电子邮件中显示所需的邮件。
  5. 以下是添加 Bing 的超链接的代码片段。

      <xsl:call-template name="link">
        <xsl:with-param name="format" select="'html'"/>
        <xsl:with-param name="link" select="'http://www.bing.com'"/>
        <xsl:with-param name="displayText" select="'Bing'"/>
      </xsl:call-template>
    

    enter image description here

    变量不会更改为XSL文件和电子邮件中的对应值。解决方法可以通过TFS API订阅事件服务并创建您自己的电子邮件。它可能比你需要的工作更多。

    查看此博客以获取更多信息:TFS 2012 API Create Alert Subscriptions。它也适用于TFS2015。