是否有 REST API 可以获取 Azure DevOps 中的构建错误?

mar*_*ark 4 azure-devops azure-devops-rest-api

所以,这是我所知道的:

  1. 我可以获得构建数据,在那里我可以找到logs带有 url 的属性。
  2. 访问日志 url 将返回指向构建日志各个部分的链接数组(大概是每个构建任务的一部分,按照构建定义中后者的顺序)
  3. 每个部分中的 url 都会获取相应任务记录的文本。
  4. 我可以解析它,所有匹配的内容都##[error]对应于构建摘要页面上记录的错误。

我很好奇如果我只需要获取构建错误,这是否是最好的方法。我不需要整个日志。

Sha*_*zyk 5

您还可以使用构建时间线 API并检查结果是否存在错误。

API 响应包含 property issues,因此只需检查它是否不为 null 并打印问题消息。

例如(在 PowerShell 中):

# Get here the response from the api
$response = Invoke-RestMethod ......
$errors = $response.records.Where({ $_.issues -ne $null })
$errors.ForEach({
   # Task name
   $_.name
   # Error message
   $_.issues.ForEach({ $_.message })
})
Run Code Online (Sandbox Code Playgroud)