【发布时间】:2019-07-22 13:26:51
【问题描述】:
我正在尝试通过 PowerShell 调用 Azure Rest API 在我的构建管道之一中设置构建的 reservedByRelease 属性的值。我在终端中收到“找不到页面”错误。我怀疑我准备的 URL 错误,但不确定在哪里。请帮忙。
为了找出 URL,我从下面的 Build 链接中获取了区域 ID(即 5d6898bb-45ec-463f-95f9-54d49c71752e)。 https://docs.microsoft.com/en-us/azure/devops/extend/develop/work-with-urls?view=azure-devops&tabs=http#resource-area-ids-reference
从 VSO 获得个性化令牌。
下面是脚本的样子(屏蔽了令牌和构建 ID):
$orgURL = "https://dev.azure.com"
$personalToken = "*******"
$token = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(":$($personalToken)"))
$header = @{authorization="Bearer $token"}
$areaId = "5d6898bb-45ec-463f-95f9-54d49c71752e"
$orgResourceAreasUrl = [string]::Format("{0}/_apis/resourceAreas/{1}?api-version=5.0-preview.1",$orgURL,$areaId)
$results = Invoke-RestMethod -Uri $orgResourceAreasUrl -Headers $header
$basrUrl = $results.locationUrl
Invoke-RestMethod -Uri ($basrUrl + '_apis/build/builds/<someBuildId>?api-version=3.2') -Method Patch -Body (ConvertTo-Json @{"retainedByRelease"='false'}) -Headers $header -ContentType "application/json" | Out-Null
我在Invoke-RestMethod 通话的最后一行收到错误消息。
我正在尝试这样做,因为下面的构建管道引发了一些合规性错误,我需要删除该管道,但我无法删除它,因为此构建被发布保留。
P.S,我已经检查了以下链接。 https://developercommunity.visualstudio.com/content/problem/442784/one-or-more-builds-associated-with-the-requested-p.html - 看起来永久修复还没有到位 https://almguide.net/2018/12/13/build-blocked-by-release/
【问题讨论】:
-
baseUrl的值是多少? -
@ShaykiAbramczyk tfsprodwus23.visualstudio.com
标签: azure-devops azure-devops-rest-api