【问题标题】:Setting TFS 2017 builds to Partially succeeded将 TFS 2017 构建设置为部分成功
【发布时间】:2018-04-15 15:40:53
【问题描述】:

我们有一个编排构建,如果它没有执行某些操作,我们希望将状态设置为部分成功。对于 Xaml 构建,我们可以通过设置构建的 CompilationStatus 和 TestStatus 来实现。

对于 Tfs 构建,我可以尝试通过设置调用 TFS Rest API 来更新构建结果。

$query = [uri]::EscapeUriString("$tfsCollection$tfsProject/_apis/build/builds/$buildId`?api-version=2.0")
$request = "{""result"":""$result""}"
try {
    $result = Invoke-RestMethod -Method PATCH -UseDefaultCredentials -ContentType "application/json" -Uri $query -Body $request
}
catch{
    Write-Output "StatusCode:" + $_.Exception.Response.StatusCode.value__ +
                "`r`nStatusDescription:" + $_.Exception.Response.StatusDescription
}

调用后,我可以看到构建的功能区变为橙色,表示部分成功。但是,当运行构建的 Finalize Build 步骤时,它会变为成功。

如果最终构建以部分成功的状态结束,我应该怎么做。

【问题讨论】:

  • 为特定步骤启用控制选项“Continue on Error”。但前提是,如果没有做某些事情,通常该步骤将失败。如果步骤正常成功,该选项将不起作用。

标签: tfs azure-devops azure-pipelines


【解决方案1】:

您可以添加一个将其控制选项设置为“出错时继续”的任务。每当此任务失败时,您的构建将部分成功。

【讨论】:

  • 谢谢。是的,从任务中抛出异常并将其设置为“出错时继续”似乎已经成功了
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-30
  • 2011-09-28
  • 1970-01-01
  • 2018-11-21
  • 1970-01-01
  • 2011-05-16
相关资源
最近更新 更多