我正在做的一个项目有两个长期存在的特性分支以及主分支。
为了使部署完全自动化,我想在Azure DevOps发布版的部署结束时,在这两个特性分支中创建一个pull的拉请求。
在Azure DevOps中,什么样的工具允许我创建拉请求作为发布任务?
发布于 2019-10-31 14:35:28
发布于 2018-02-06 05:41:43
您可以在发布期间通过拉出请求REST创建拉请求。
有调用任务,但可能不利于您的需求。
简单的方法是您可以通过PowerShell任务完成这一任务。
简单样本:
param(
[string]$project,
[string]$repo,
[string]$sourceBranch,
[string]$targetBranch,
[string]$title,
[string]$des,
[string]$token
)
$bodyObj=@{
"sourceRefName"="refs/heads/$sourceBranch";
"targetRefName"= "refs/heads/$targetBranch";
"title"= "$title";
"description"="$des";
}
$bodyJson=$bodyObj| ConvertTo-Json
$uri="https://XXX.visualstudio.com/DefaultCollection/$project/_apis/git/repositories/$repo/pullRequests?api-version=3.0"
Write-Output $bodyJson
Write-Output $uri
$base64AuthInfo = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(("{0}:{1}" -f "test",$token)))
$result= Invoke-RestMethod -Method POST -Uri $Uri -ContentType "application/json" -Headers @{Authorization=("Basic {0}" -f $base64AuthInfo)} -Body $bodyJson论据:-project "XXX" -repo "XXX" -sourceBranch "XX" -targetBranch "XX" -title "XX" -des "XX" -token [$(System.AccessToken) or personal access token]
https://stackoverflow.com/questions/48634358
复制相似问题