我试图在我的一个发行版定义中使用Release.RequestedForEmail
发行版变量传递给Powershell脚本,但是我没有收到该值。当我查看logs-> Initialize Job任务时,我什至没有看到该变量被定义。
我正在使用Powershell脚本向触发发布的用户发送一些电子邮件,他/她需要接收电子邮件以批准/拒绝下一个手动干预任务。
答案 0 :(得分:1)
好吧,这很奇怪,因为此发布变量位于Default and custom release variables and debugging下。
作为解决方法,您可以使用RELEASE.REQUESTEDFOR变量并自定义电子邮件地址。
我不知道这是您要找的东西,但是对我有用。
更新:
我编写了以下函数,该函数获取用户ID并从TFS返回电子邮件地址。
function getEmailAdressByUserID($userID)
{
$tfsURL = "http://{server}:{port}/{organization}/{project}"
(Invoke-RestMethod -Method Get -Uri "$tfsURL/_apis/Identities/$userID" -UseDefaultCredentials).Properties.Mail
}
用法:
getEmailAdressByUserID -userID $(RELEASE.DEPLOYMENT.REQUESTEDFORID)