Azure Devops -使用脚本访问拉请求中的构建验证管道数

gfttwv5a  于 2022-12-14  发布在  其他
关注(0)|答案(1)|浏览(164)

我想访问Pull Request(PR)中的构建验证管道检查数。我希望可以使用powershell集成Azure API,即https://learn.microsoft.com/en-us/rest/api/azure/devops/git/pull-requests/get-pull-request?view=azure-devops-rest-7.0
这个好像没有这个信息,有没有人知道这个能不能做到?

4dc9hkyq

4dc9hkyq1#

我想访问Pull Request(PR)中的构建验证管道检查数。
为了满足您的要求,您可以使用Rest API:Evaluations - List,以取得纳入要求中的组建数目。
以下是一个示例:

Rest API URL:

GET https://dev.azure.com/{organization}/{project}/_apis/policy/evaluations?artifactId={artifactId}&api-version=7.1-preview.1

工件ID示例:

vstfs:///CodeReview/CodeReviewId/{projectId}/{pullRequestId}

PowerShell范例:

$token = "PAT"

$url=" https://dev.azure.com/ORGNAME/PROJECTNAME/_apis/policy/evaluations?artifactId=vstfs:///CodeReview/CodeReviewId/projectid/pullrequestid&api-version=7.1-preview.1"

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

$response = Invoke-RestMethod -Uri $url -Method Get  -Headers @{Authorization = "Basic $token"}   -ContentType 'application/json'

$number = 0

Foreach( $configurationlist in $response.value )
{
   $buildid =  $configurationlist.configuration.settings.buildDefinitionId
   $type = $configurationlist.configuration.type.displayName

   if($type -eq "Build")

    {
       echo $buildid
       $number= $number+ 1
    }   
 
   

}

echo "Pull Request Build Number: $number"

结果:

相关问题