tfs - 将 TFS 2017 build设置为部分成功

标签 tfs azure-devops azure-pipelines

我们有一个编排构建,如果它没有执行某些操作,我们希望将其状态设置为部分成功。对于 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 步骤时,它会更改为成功。

enter image description here

我应该怎么做才能使最终构建以部分成功的状态完成。

最佳答案

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

关于tfs - 将 TFS 2017 build设置为部分成功,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47086754/

相关文章:

Azure DevOps 托管代理上的 Azure 功能包?

tfs - 看板是否可用于 Visual Studio 2010 和 TFS 2010

azure-devops - 防止用户在 Azure Devops (VSTS) 中创建没有父项的工作项

python - 安装 Azure Pipelines 通用包

azure - 设置构建变量 "version"会破坏 Azure Functions CLI 函数扩展同步

amazon-ec2 - Azure DevOps CD管道上的SSH超时错误

.net - 如何管理同一个dll的多个目标平台?

tfs - 支持 Git 和门控 checkin 的持续集成软件?

visual-studio-2010 - 如何通过互联网连接TFS

azure - 使用 sbt : Unable to find credentials for 将 scala 项目发布到 azure feed