Azure devops 在Azure Devops构建管道中将地形规划输出添加为PR注释
在我当前的任务中,我正在将terraform集成到我们的Azure DevOps CI/CD管道中。我的要求如下:Azure devops 在Azure Devops构建管道中将地形规划输出添加为PR注释,azure-devops,terraform,devops,Azure Devops,Terraform,Devops,在我当前的任务中,我正在将terraform集成到我们的Azure DevOps CI/CD管道中。我的要求如下: PR的创建应触发构建管道 构建管道中的任务应向提出的PR发布评论。评论的内容将 是地形规划输出,即将要部署的新基础设施 一旦PR被批准,代码合并到master,将触发CD管道,这将 将基础架构部署到Azure 到目前为止,我都是按照1和3的要求来排序的,但我不知道如何用terraform plan命令中的内容发布PR评论。是否有用于此的内置任务?如果没有,我如何才能做到这一点?这可
{
"content": "YourContentsFromTerraformPlan ",
"parentCommentId": 1,
"commentType": 1
}
但是上面的API需要pullRequestId
。因此,我们还需要另一个API来获取当前项目的pullRequestId
:
它将返回一系列pullRequestId,然后我们可以使用powershell参数Select Object-first 1
比如:$LastPullRequestId=$pullRequestId.value.id | Select Object-first 1
来获取最新的pullRequestId
因此,我们可以在构建管道中添加两个内联powershell任务来调用RESTAPI以获取最新的pullRequestId
,然后使用此pullRequestId
创建PR注释
希望这能有所帮助。由于您处于由PR触发的生成中,pullRequestId也可以通过预定义变量$(System.PullRequest.pullRequestId)获得
{
"content": "YourContentsFromTerraformPlan ",
"parentCommentId": 1,
"commentType": 1
}
GET https://dev.azure.com/{organization}/{project}/_apis/git/pullrequests?api-version=5.1