Как установить другой пул агентов TFS по умолчанию - PullRequest
0 голосов
/ 25 июня 2019

У нас есть несколько пулов агентов в TFS.Есть ли способ установить агент по умолчанию для одного из пулов?В настоящее время все сборки проекта имеют агента по умолчанию при создании сборки.Вместо агента по умолчанию, который будет отображаться как первый в списке, мы хотим, чтобы агент сравнения был по умолчаниюЯвляется ли это возможным?Цени любую помощь!

Спасибо,

1 Ответ

1 голос
/ 26 июня 2019

Вместо агента по умолчанию, который будет отображаться как первый в списке, мы хотим иметь агент по умолчанию в качестве агента по умолчанию. Возможно ли это?

Боюсь, что существует готовая настройка для установки другого пула агентов по умолчанию.

На веб-портале мы могли бы выбрать другой пул агентов TFS по умолчанию в опции Очередь агента по умолчанию на вкладке Параметры сборки и сохранить it:

enter image description here

Эта настройка сохранена. Когда вы ставите в очередь сборку, пулом агентов по умолчанию будет агент, который вы указали выше:

enter image description here

И когда вы в следующий раз создадите очередь, агент по умолчанию будет тем, который вы установили ранее.

С другой стороны, мы могли бы добавить спецификацию требований , которые соответствуют конкретному агенту, например:

Agent.Name -equals AgentNameHere

enter image description here

Затем создайте очередь с помощью REST API и укажите требования:

Param(
   [string]$collectionurl = "http://server:8080/tfs/DefaultCollection/",
   [string]$projectName = "0323ScrumTFVC",
   [string]$keepForever = "true",
   [string]$BuildDefinitionId = "1",
   [string]$user = "username",
   [string]$token = "password"
)

# Base64-encodes the Personal Access Token (PAT) appropriately
$base64AuthInfo = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(("{0}:{1}" -f $user,$token)))

function CreateJsonBody
{

    $value = @"
  {
  "definition": {
    "id": $BuildDefinitionId
  },

  "sourceBranch": "$/0323ScrumTFVC",
  "demands":["Agent.Name -equals AgentNameHere"]
 }           

}
"@

 return $value
}

$json = CreateJsonBody

$uri = "$($collectionurl)/$($projectName)/_apis/build/builds?api-version=2.0"
$result = Invoke-RestMethod -Uri $uri -Method Post -Body $json -ContentType "application/json" -Headers @{Authorization=("Basic {0}" -f $base64AuthInfo)}

Билет здесь: Указание агента во время построения очереди с TFS 2015 .

Но , этот метод не работает для пользовательского интерфейса .

Проверьте документ Предопределенные переменные и Требования .

...