Azure DevOps YAML передает спецификацию матрицы через переменную сборки - PullRequest
0 голосов
/ 26 января 2019

У меня есть следующая работа:

- job: CB_Jobs
  displayName: CB jobs
  pool: server
  strategy:
    matrix:
      Libs: 
        Dir: 'src/hw/libs'
      Apps:
        Dir: 'src/hw/apps'
  steps:

Который просто указывает список каталогов. Мне нужно иметь возможность указать этот список в переменной сборки (которая устанавливается во время очереди). Это возможно в потоке, отличном от YAML, указав задание как мультиконфигурацию с именем переменной построения в качестве множителей. Как мне сделать это в YAML?

1 Ответ

0 голосов
/ 03 мая 2019

Вы можете назначить строку в формате JSON, и она будет проанализирована Azure:

Пример: (вам может понадобиться настроить синтаксис)

На предыдущей работе (JobA):

$json="{'job1': {'Work': 'work1'}, 'job2': {'Work': 'work2'}}"
Write-Host "##vso[task.setvariable variable=$jobsToRunInParallel;isOutput=true]$json"

В задании, выполняемом параллельно:

matrix: $[ dependencies.JobA.outputs['jobsToRunInParallel'] ]
...