我必须在TeamCity成功的电子邮件模板中包含分支名称和最新的git commit SHA。
我已将这些行添加到标准build_successful.ftl
电子邮件模板文件中:
<#global body>
...
Commit: ${build.buildNumber}
Branch: ${build.branch.displayName}
...
</#global>
但是收到了这封电子邮件:
Commit: 77
Branch: [TEAMCITY TEMPLATE ERROR]
我发现TC服务器端API模型公开了这些方法: http://javadoc.jetbrains.net/teamcity/openapi/8.0/jetbrains/buildServer/Build.html#getBuildNumber() http://javadoc.jetbrains.net/teamcity/openapi/8.0/jetbrains/buildServer/serverSide/Branch.html#getDisplayName()
我无法弄清楚如何获取所需信息。
我们正在使用:
答案 0 :(得分:2)
您可以尝试
Branch: ${build.vcs.number}
这将为您提供“附加到配置的第一个VCS根目录的VCS修订版号”。如果你的git源不是第一个附加的根,你可以附加一个索引来选择它:
Branch: ${build.vcs.number.1}
答案 1 :(得分:2)
我从JetBrains官方support forum获得了正确答案:
如果您想在自己的网站中包含有关构建修订的信息 通知您可以尝试使用这样的东西(另见 SBuild.getRevisions方法):
<#list build.revisions as revision> Revision: ${revision.repositoryVersion.displayVersion} VCS branch: ${revision.repositoryVersion.vcsBranch} </#list>
几点说明:
- 构建中可以有多个VCS根目录,因此修订数量与VCS根目录的数量相对应
- 如果尚未收集构建的更改,或者在收集更改,收集修订时发生了一些错误 空。
Pavel Sher