想要获得所有管道的报告,其中包含谁发起的、谁批准的以及谁部署的

问题描述 投票:0回答:1

需要为所有管道生成一个存储库,由谁发起、谁批准、谁部署。

您能帮助我如何生成包含需求详细信息的管道报告吗?

需要包含要求详细信息的报告

azure azure-devops azure-pipelines
1个回答
0
投票

在发布管道中,我们对生产环境的所有管道都有审批权,因此我想要谁对管道进行审批的报告。

这是没有官方rest api来获取您所需的信息,但您可以在

History
选项卡上获取相关信息。样本如下:

您可以在浏览器上按

F12
查看
network trace
来获取相关的rest api。

我有

one
阶段,我的版本需要
pre-deployment approval
,以获取以下脚本所需的信息:

# Set your Azure DevOps organization and project details
$organizationName = "orgname"
$projectName = "projectname"
$releaseId = "14"  # Replace with the actual pipeline ID

# Personal Access Token (PAT) for authentication
$pat = "PAT"

$base64AuthInfo = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(("{0}:{1}" -f $User,$pat)))
$header = @{Authorization = ("Basic {0}" -f $base64AuthInfo); "accept"="application/json;api-version=7.2-preview.8"}


$Url = "https://vsrm.dev.azure.com/$organizationName/$projectName/_apis/Release/releases/$releaseId" + "?approvalFilters=7&propertyFilters=DownloadBuildArtifactsUsingTask%2C%20ReleaseCreationSource"

$content = Invoke-RestMethod -Uri $Url  -Headers $header

$creatordisplayname = $content.createdBy.displayName
$creatoremail = $content.createdBy.uniqueName


$approvordisplayname = $content.environments[0].preDeployApprovals[0].approvedBy.displayName
$approvoremail = $content.environments[0].preDeployApprovals[0].approvedBy.uniqueName
$approvalType = $content.environments[0].preDeployApprovals[0].approvalType
$approvalstatus = $content.environments[0].preDeployApprovals[0].status


$deployby = $content.environments[0].deploySteps[0].requestedBy.uniqueName

echo "=======createby ========="

echo "created by: $creatordisplayname, email: $creatoremail"

echo "=======approveby ========="

echo "approvor displayname: $approvordisplayname"
echo "approvor email: $approvoremail"
echo "approval Type: $approvalType"
echo "approval tatus: $approvalstatus"

echo "=======deployby ========="

echo "deployed by: $deployby"

执行结果,正确获取信息。

您可能有多个阶段,每个阶段都有不同的批准,或者一个阶段有多个批准者。您可能需要根据实际版本调整 PowerShell 脚本。

© www.soinside.com 2019 - 2024. All rights reserved.