首页 > 解决方案 > Azure 管道 - 如何指定失败构建时的自动重试

问题描述

在 Jenkins CI 中,有一个“失败后重试构建”的插件,我们可以在其中指定我们希望构建在作业失败时自动触发的次数。

Azure Devops 中是否有类似的东西,当构建失败时管道将自动触发?

标签: azure-devops

解决方案


目前,在 Azure Devops 中,我们没有这样的自动重试选项。

您可以在此处查看用户语音票重新运行失败的构建任务/步骤

但是您可以指定一个 rest api ?retry=true

PATCH https://dev.azure.com/{organizationName}/{ProjectID}/_apis/build/builds/{BuildID}?retry=true

这将有助于重新运行失败的作业。

我创建了一个 PowerShell 演示:

$connectionToken="$(PAT)"
$base64AuthInfo= [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes(":$($connectionToken)"))
  
$response = Invoke-RestMethod 
    -Uri 'https://dev.azure.com/MyCustomOrganization/MyTestProject/_apis/build/builds/7364?retry=true&api-version=6.0'
    -ContentType "application/json-patch+json"
    -Headers @{Authorization=("Basic {0}" -f $base64AuthInfo)}
    -Method PATCH

希望这可以帮助


推荐阅读