Для yaml-файла Azure Pipelines я хочу запустить набор задач один раз для каждого агента в определенном пуле. Когда я смотрел на матрицу стратегии занятости, это выглядело как хорошее решение для этого, но в настоящее время он не может подобрать переменную, которую я использую для этого.
Файл yaml конвейера, относящийся к этой проблеме, является этой частью:
resources:
- repo: self
trigger: none
jobs:
- job: RunOnEveryAgent
strategy:
maxParallel: 3
matrix:
agent_1:
agentName: Hosted Agent
agent_2:
agentName: Hosted VS2017 2
agent_3:
agentName: Hosted VS2017 3
pool:
name: Hosted VS2017
demands:
- msbuild
- visualstudio
- Agent.Name -equals $(agentName)
steps:
- (etc.)
С помощью этого сценария я попытался настроить матрицу для запуска по одному на каждом из трех агентов в пуле. Однако, когда я пытаюсь сослаться на агента в списке требований, он не подхватывает его. Фактическое сообщение об ошибке выглядит следующим образом:
[Ошибка 1] Не найден агент в пуле Hosted VS2017, который удовлетворяет указанным требованиям:
MSBuild
VisualStudio
Agent.Name -equals $ (agentName)
Agent.Version -gtVersion 2.141.1
Если я жестко задаю имя агента, оно работает и работает:
demands:
- msbuild
- visualstudio
- Agent.Name Hosted VS2017 3
Поддерживается ли использование этих переменных в требованиях пула? Или я должен использовать другую переменную или выражение?