我正在使用SendGrid电子邮件扩展程序在VSTS中完成CI / CD过程后触发自定义电子邮件通知。此电子邮件任务包含HTML内容,其中包含使用标准构建/发布变量(https://docs.microsoft.com/en-us/vsts/build-release/concepts/definitions/build/variables?tabs=batch)获取的一些内容。
如何在自定义电子邮件中包含特定版本的关联代码更改,签入注释和链接工作项?我可以使用任何变量吗?有什么工作吗?
答案 0 :(得分:4)
没有内置变量可以获取代码更改,签入注释和链接的工作项。
您可以在构建或发布期间通过REST API获取它们:
Build.BuildId
或发布期间Release.Artifacts.{Artifact alias}.BuildId
)注意:使用Build.SourceVersion
获取最新版本)没有用于获取详细代码更改的API,但您可以参考此相关问题:Lines of Code modified in each Commit in TFS rest api. How do i get?
答案 1 :(得分:0)
假设使用TFS(在问题或标签中未指定),您也可以直接调用tf.exe
来获取某些信息。如果您不关心输出格式,那么以下命令的输出将生成Changeset详细信息的报告。
tf vc changeset <changeset id> /loginType:OAuth /login:.,<token> /noprompt
其中<changeset id>
是数字Build.SourceVersion,而<token>
是System.AccessToken。
评论和源代码编辑列表包含在报告中。
注意:必须为代理作业赋予“允许脚本访问OAuth令牌”权限(“代理作业”属性上的复选框)。
有关如何访问构建变量的详细信息,请参见下面的更新链接。与问题中的内容相同,但有新链接。两者目前都可以。
https://docs.microsoft.com/en-us/azure/devops/pipelines/build/variables?view=azure-devops&tabs=yaml