【发布时间】:2021-04-03 12:18:39
【问题描述】:
下面的代码是一个 API 调用,它将运行一个 azure 管道,但我遇到的唯一问题是我无法在自定义分支上运行它,我尝试了 az 命令,但是使用 az 命令,你无法通过参数。我的目标基本上是我有一个管道 A,我想运行管道 B,这并不介意,所以我无法编辑它,但管道 B 接受一个名为 Tag 的参数,我想从 Pineline A 传递它,但努力这样做。
$token = -join("$Username", ":", "$PAT")
$headers = @{
Authorization = "Basic "+ [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes($token))
'Content-Type' = "application/json"
}
$uri = "https://dev.azure.com/{$Company}/{$Team}/_apis/pipelines/{$ProjectID}/runs/?api-version=6.0-preview.1"
$pipelineBody=@{
resources=@{
repositories=@{
self=@{
ref="$Branch"
}
}
}
templateParameters=@{
Tag="$Tag"
}
} | ConvertTo-Json
$result = Invoke-WebRequest -Uri $uri `
-Headers $headers `
-Body "$pipelineBody" `
-Method Post `
#-SkipCertificateCheck `
#-SkipHttpErrorCheck `
#-ErrorAction Stop
if($result.StatusCode -ne "200")
{
throw $result
}
return ($result.Content | ConvertFrom-Json).url
【问题讨论】:
-
AFAIK,你不能这样做。
-
还有其他方法可以做我想做的事吗?
-
下面的回复有帮助吗?
标签: azure powershell devops