在 TeamCity 5.1 通知中显示文件更改

2024-02-15

我想在 TeamCity 5.1 电子邮件通知中包含更改文件的列表,该通知会在构建成功或失败后发送给我的团队。我已经审查了在 TeamCity 5.1 中自定义通知 http://confluence.jetbrains.net/display/TCD5/Customizing+Notifications+%28in+TeamCity+5.1%29文档,我查看了 config\_notifications\email 文件夹中找到的 .ftl 模板文件,但我没有找到可用模板变量或备用模板示例的列表。我能够在 TeamCity 的早期版本中包含已更改文件的列表(我认为它被称为“文件更改”),但在 TeamCity 5.1 中我没有这样做。有任何想法吗?


我能够让它在 TeamCity 6 中工作,所以我不知道它是否适用于 5.1,但这是我根据阅读帮助文档中的示例所做的事情。

Edited 通用.ftl to add

<#macro build_changes_files bean>
  <#-- @ftlvariable name="buildType" type="jetbrains.buildServer.serverSide.SBuildType" -->
  <#-- @ftlvariable name="bean" type="jetbrains.buildServer.notification.impl.ChangesBean" -->
  <#-- @ftlvariable name="webLinks" type="jetbrains.buildServer.serverSide.WebLinks" -->
  <div>
    <#assign modNum=bean.modificationsNumber/>
    <#if (modNum > 0)>
      <hr>
      <div>
        <#assign changesLink><a href='${webLinks.getViewChangesUrl(bean.build)}'>${modNum} change<@plural modNum/></a></#assign>
        Changes included (${changesLink})<#if bean.changesClipped>,
        only ${bean.modifications?size} are shown</#if>.
      </div>
      <#list bean.modifications as mod>
        <#assign pers><#if mod.personal>(personal build)</#if></#assign>
        <#assign description=mod.description/>
        <#if description?length == 0><#assign description='&lt;no comment&gt;'/></#if>
        <div>
          <#assign modLink><a href='${webLinks.getChangeFilesUrl(mod.id, mod.personal)}'>${mod.changes?size} file<@plural mod.changes?size/></a></#assign>
          Change ${mod.displayVersion} ${pers} by ${mod.userName} (${modLink}):
          <i>${description?trim}</i>.
          <br>
          <br>
          <b>Files:</b>
          <br>
          <ul>
          <#list mod.getFilteredChanges(buildType) as change>
            <li>${change.getRelativeFileName()} - ${change.getChangeTypeName()}
            </li>
          </#list>
          </ul>
        </div>
      </#list>
    </#if>
  </div>
</#macro>

然后在 *build_started.ftl* (或任何适当的 FTL 文件)中,我想列出我放置的已更改文件:

<@common.build_changes_files var.changesBean/>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 TeamCity 5.1 通知中显示文件更改 的相关文章

随机推荐