我正在尝试使用REST API更新本地Azure DevOps 2020服务器上的任务组,但收到500 InternalServerError
{"$id":"1","innerException":null,"message":"Input TaskGroup parameter cannot be null.","typeName":"Microsoft.TeamFoundation.DistributedTask.Server.Ex
ceptions.InvalidRequestException, Microsoft.TeamFoundation.DistributedTask.Server","typeKey":"InvalidRequestException","errorCode":0,"eventId":3000}
目标是设置visibleRule
,这在Web界面上是不可能的。
$url = "http://{server}:8080/tfs/{organization}/{project}/_apis/distributedtask/taskgroups?api-version=6.1-preview.1"
$taskGroups = Invoke-RestMethod -Method Get -Uri $url -ContentType 'application/json' -UseDefaultCredentials
$taskGroup = $taskGroups.value | where { $_.name -eq "Deploy Task" }
$input = $taskGroup.inputs | where { $_.name -eq "VersionInternal" }
Add-Member -InputObject $input -MemberType NoteProperty -Name "visibleRule" -Value "1 = 2"
$json = $taskGroup | ConvertTo-Json -Depth 100
$response = Invoke-RestMethod -Method PUT -Uri $url -ContentType 'application/json' -Body $json -UseDefaultCredentials
请求有什么问题?是否有可用的日志文件?或者是否有其他方法来排除故障?
1条答案
按热度按时间4jb9z9bj1#
根据我们之前讨论的内容,您的服务器或计算机上可能存在某些限制PowerShell更新任务组的因素。
无论如何,Postman可以像预期的那样工作得很好。因此,解决方案是使用Postman调用REST API来更新任务组。