在执行 VSTS 构建期间是否可以访问以前的构建变量?例如,我可以获得先前构建的 $(Build.SourceVersion) 或 $(Build.QueuedBy) 吗?
我可以通过 $(Build.SourceVersion) 等构建变量获取当前构建信息,但我可以获得 $(Build.Previous.SourceVersion) 之类的信息吗?
之前的构建信息没有内置变量,解决方法是您可以调用构建 REST API https://www.visualstudio.com/en-us/docs/integrate/api/build/builds(可以是在此构建期间通过 PowerShell 筛选状态,例如已完成、进行中)。 (结果第一项为最新的)
$base64authinfo = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(("{0}:{1}" -f $User, $Password)))
$responseFromGet = Invoke-RestMethod -Method Get -ContentType application/json -Uri $Uri -Headers @{Authorization=("Basic {0}" -f $base64authinfo)}
关于调用REST API的一些文章:使用 PowerShell 调用 VSTS API http://blog.devmatter.com/calling-vsts-apis-with-powershell/, VSTS/TFS REST API:基础知识以及使用构建和发布 http://blog.nwcadence.com/vststfs-rest-api-the-basics-and-working-with-builds-and-releases/
您可以使用的值System.AccessToken
变量作为密码(检查允许脚本访问 OAuth 令牌选项在“选项”选项卡中)和用户名可以是任何内容。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)