Azure DevOps Rest API 将现有代理池添加到项目
Azure DevOps Rest API add existing Agent Pool to Project
当我创建一个新项目时,缺少代理池,它们在集合中可用。是否缩进,我需要将代理池添加到新项目中。因此你有这个菜单:
是否可以通过 Azure DevOps Rest API 执行此过程?
我翻阅了文档,但只找到了 Pools - Get Agent Pools。这里的问题是没有项目范围,只有收集范围。所以这个电话给了我集合中的所有代理池,但不是来自单个项目。
即使有从项目中获取所有池的调用,您仍然需要调用以将现有代理池添加到项目中。
我该如何解决这个问题?
Azure DevOps 2020.1 (on prem)
Self hosted agents
is it possible to execute this process by Azure DevOps Rest API?
是的。您可以使用 Rest API 添加现有代理池。
您需要检查浏览器控制台才能获得此 Rest API。
Azure DevOps 2020.1(本地)
您可以使用以下 Rest API:
POST https://{instance}/{collection}/{project}/_apis/distributedtask/queues?authorizePipelines=true&api-version=5.0-preview.1
请求正文:
{
"name":"xx",
"pool":
{
"id":2
}
}
您可以在 Organization Settings -> Agent Pools -> Target Agent Pool
中获取代理池 ID。
更新:
要获取所有项目代理池,您可以使用以下剩余 api:
Get https://{instance}/{collection}/{project}/_apis/distributedtask/queues?api-version=5.0-preview.1
更新版本 6 API:
从以下调用获取代理池 ID:
curl -u user:pat --location --request GET 'https://dev.azure.com/{ORGANIZATION}/_apis/distributedtask/pools?poolName={POOL-NAME}&api-version=6.0'
将现有代理池添加到项目:
curl -u user:pat --location --request POST 'https://dev.azure.com/{ORGANIZATION}/{PROJECT-NAME}/_apis/distributedtask/queues?authorizePipelines=true&api-version=6.1-preview.1' --data '{"name" : "POOL-NAME", "pool" : {"id": POOL-ID}}' --header "Content-type: application/json"
当我创建一个新项目时,缺少代理池,它们在集合中可用。是否缩进,我需要将代理池添加到新项目中。因此你有这个菜单:
是否可以通过 Azure DevOps Rest API 执行此过程?
我翻阅了文档,但只找到了 Pools - Get Agent Pools。这里的问题是没有项目范围,只有收集范围。所以这个电话给了我集合中的所有代理池,但不是来自单个项目。
即使有从项目中获取所有池的调用,您仍然需要调用以将现有代理池添加到项目中。
我该如何解决这个问题?
Azure DevOps 2020.1 (on prem)
Self hosted agents
is it possible to execute this process by Azure DevOps Rest API?
是的。您可以使用 Rest API 添加现有代理池。
您需要检查浏览器控制台才能获得此 Rest API。
Azure DevOps 2020.1(本地)
您可以使用以下 Rest API:
POST https://{instance}/{collection}/{project}/_apis/distributedtask/queues?authorizePipelines=true&api-version=5.0-preview.1
请求正文:
{
"name":"xx",
"pool":
{
"id":2
}
}
您可以在 Organization Settings -> Agent Pools -> Target Agent Pool
中获取代理池 ID。
更新:
要获取所有项目代理池,您可以使用以下剩余 api:
Get https://{instance}/{collection}/{project}/_apis/distributedtask/queues?api-version=5.0-preview.1
更新版本 6 API:
从以下调用获取代理池 ID:
curl -u user:pat --location --request GET 'https://dev.azure.com/{ORGANIZATION}/_apis/distributedtask/pools?poolName={POOL-NAME}&api-version=6.0'
将现有代理池添加到项目:
curl -u user:pat --location --request POST 'https://dev.azure.com/{ORGANIZATION}/{PROJECT-NAME}/_apis/distributedtask/queues?authorizePipelines=true&api-version=6.1-preview.1' --data '{"name" : "POOL-NAME", "pool" : {"id": POOL-ID}}' --header "Content-type: application/json"