如何配置生成后的azure-管线. file文件以获得生成状态?我必须使用azure-devops-rest-api或azure-devops-node-api获取管道的当前构建状态,方法是在azure-管线. have文件中使用它们。
请帮帮我!
发布于 2019-12-26 08:15:23
如何配置生成后的azure-管线. file文件以获得生成状态?
我们可以使用REST 构建-列表获取详细的构建信息:
https://dev.azure.com/{organization}/{project}/_apis/build/builds?definitions={definitions}&api-version=5.1在YAML中,我们可以添加一个powershell任务来获得构建结果,例如:
- task: PowerShell@2
inputs:
targetType : inline
script: |
$url = "https://dev.azure.com/{organization}/{project}/_apis/build/builds?definitions={definitionID}&api-version=5.1"
$connectionToken="Your PAT Here"
$base64AuthInfo= [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes(":$($connectionToken)"))
$buildPipeline= Invoke-RestMethod -Uri $url -Headers @{authorization = "Basic $base64AuthInfo"} -Method Get
$BuildResult= $buildPipeline.value.result | Select-Object -first 1
Write-Host This is Build Result: $BuildResult我们列出指定定义的所有构建结果,然后使用Select-Object -first 1获取最新的构建结果。

作为测试,使用REST,我们可以获得当前管道的最新构建的结果,但是我们无法获得我们正在执行的构建的结果(这次是)。
此外,还有一个预定义变量,我们可以通过预定义的变量Agent.JobStatus来检查管道的当前构建状态,因此我在YAML中添加了一个命令行任务来输出这个值:
- script: |
echo $(Agent.JobStatus)此变量可以获得当前构建状态。
希望这能有所帮助。
https://stackoverflow.com/questions/59451306
复制相似问题