TFS 2018 以编程方式创建代理池
TFS 2018 Create agent pool programatically
是否可以通过编程方式(最好是通过 PowerShell)在 TFS 2018 中创建代理池?我在 REST API.
中找不到类似的东西
我不知道为什么它不是 well-documented,但这对我来说对 VSTS 有效:
$token = 'myPAT'
$base64AuthInfo = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes((":{0}" -f $token)))
$uri = 'https://<url>/_apis/distributedtask/pools?api-version=4.1-preview.1'
$result = Invoke-RestMethod -Uri $uri -Method Post -ContentType "application/json" -Headers @{Authorization=("Basic {0}" -f $base64AuthInfo)} `
-Body (ConvertTo-Json @{name = 'foo'; autoProvision = $true})
我刚刚查看了 Web 门户中用于创建代理池的 REST API 并复制了它;如果 API 版本在 TFS 2018 中与在 VSTS 中不同,您可以执行相同的操作来找到要使用的正确版本。
TFS 的 REST API 一个未记录的部分 处理应用程序池:_apis/distributedtask/pools
。例如:
获取代理池(请求方式:获取):
http://[TFS URL]/_apis/distributedtask/pools?api-version=x.x-preview.1`
api-version 应匹配您的 TFS 版本
您可以打开 Chrome/IE 网络检查器,发现 API 调用创建代理池操作。具体操作方法请参考:
- Analyzing your webpage's network traffic
- Using Windows Internet Explorer Developer Tools Network Capture
最后,你只需要通过PowerShell调用RESTAPI,看看。
是否可以通过编程方式(最好是通过 PowerShell)在 TFS 2018 中创建代理池?我在 REST API.
中找不到类似的东西我不知道为什么它不是 well-documented,但这对我来说对 VSTS 有效:
$token = 'myPAT'
$base64AuthInfo = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes((":{0}" -f $token)))
$uri = 'https://<url>/_apis/distributedtask/pools?api-version=4.1-preview.1'
$result = Invoke-RestMethod -Uri $uri -Method Post -ContentType "application/json" -Headers @{Authorization=("Basic {0}" -f $base64AuthInfo)} `
-Body (ConvertTo-Json @{name = 'foo'; autoProvision = $true})
我刚刚查看了 Web 门户中用于创建代理池的 REST API 并复制了它;如果 API 版本在 TFS 2018 中与在 VSTS 中不同,您可以执行相同的操作来找到要使用的正确版本。
TFS 的 REST API 一个未记录的部分 处理应用程序池:_apis/distributedtask/pools
。例如:
获取代理池(请求方式:获取):
http://[TFS URL]/_apis/distributedtask/pools?api-version=x.x-preview.1`
api-version 应匹配您的 TFS 版本
您可以打开 Chrome/IE 网络检查器,发现 API 调用创建代理池操作。具体操作方法请参考:
- Analyzing your webpage's network traffic
- Using Windows Internet Explorer Developer Tools Network Capture
最后,你只需要通过PowerShell调用RESTAPI,看看