Azure devops Azure DevOps管道:取消队列中的多个挂起作业

Azure devops Azure DevOps管道:取消队列中的多个挂起作业,azure-devops,Azure Devops,在Azure DevOps管道中,如何取消作业池的所有挂起作业。我已经有很多人排队,看不到哪里可以取消我等待的所有作业。Azure devops还没有此功能来从UI部分批量取消所有挂起的作业 您可以编写脚本来调用RESTAPI,以在演练中取消所有挂起的作业。查看以下步骤: 首先,使用获取所有挂起的作业 https://dev.azure.com/{organization}/{project}/_api/build/builds?statusFilter=notStarted&api versi

在Azure DevOps管道中,如何取消作业池的所有挂起作业。我已经有很多人排队,看不到哪里可以取消我等待的所有作业。

Azure devops还没有此功能来从UI部分批量取消所有挂起的作业

您可以编写脚本来调用RESTAPI,以在演练中取消所有挂起的作业。查看以下步骤:

首先,使用获取所有挂起的作业

https://dev.azure.com/{organization}/{project}/_api/build/builds?statusFilter=notStarted&api version=5.1

然后,使用取消挂起的作业:

补丁https://dev.azure.com/{organization}/{project}/_-api/build/builds/{buildId}?api版本=5.1

请参阅下面的powershell脚本以获取参考:

选中以获取将在以下脚本中使用的个人访问令牌

$url= "https://dev.azure.com/{organization}/{project}/_apis/build/builds?statusFilter=notStarted&api-version=5.1"

$pat="Personal Access Token"

$base64AuthInfo= [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes(":$($pat)"))

$pendingJobs=Invoke-RestMethod -Uri $url-Headers @{Authorization = ("Basic {0}" -f $base64AuthInfo)} -Method get -ContentType "application/json" 

$jobsToCancel = $pendingJobs.value

#Pending jobs donot consume the job agents in the agent pool. To filter the definition name to cancel pending jobs for a particular pipeline, you can use below filter criteria. 
#$jobsToCancel = $pendingJobs.value | where {$_.definition.Name -eq "{Name of your pipeline }"}

#call update api to cancel each job.
ForEach($build in $jobsToCancel)
{
   $build.status = "Cancelling"
   $body = $build | ConvertTo-Json -Depth 10
   $urlToCancel = "https://dev.azure.com/{organization}/{project}/_apis/build/builds/$($build.id)?api-version=5.1"
   Invoke-RestMethod -Uri $urlToCancel -Method Patch -ContentType application/json -Body $body -Header @{Authorization = ("Basic {0}" -f $base64AuthInfo)}
}

您还可以(单击建议一项功能,然后选择azure devops)给Microsoft开发团队,以支持批量取消挂起的作业。希望他们会考虑在未来的Sprint中添加这个特性。< /P>我已经使用了你的脚本来解决完全相同的问题,但是我在代码< >调用REST方法】'VBBOSE:Pux.APIs/Buffue/Buffice/12495和API版本=5 - -1字节有效载荷< /代码> -我已经检查了<代码> $Boos<代码>完全填充并以JSON格式。