Лазурные трубопроводы - параллельные шаги (YAML) - PullRequest
1 голос
/ 18 мая 2019

Я настраиваю свои конвейеры Azure Devops, и у меня есть сборка, требующая некоторых довольно длительных шагов настройки для запуска.Они должны выполняться перед другими задачами, которые могут выполняться параллельно.

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

jobs:
  - job: Run1
     steps:
       - task: Long running setup task
       - task: Run taskA
  - job: Run2
       - task: Long running setup task
       - task: Run taskB  

Есть ли способ запустить эту долго выполняющуюся задачу, и чтобы задачи A / B зависели от этой среды, не выполняя их последовательно?В идеале это было бы что-то вроде:

-job
  steps:
    -task: Long running setup
    -task: Parallel: taskA
    -task: Parallel: taskB

Или же предыдущие задания делали снимок контейнера / изображения и использовали его повторно, если это возможно?

1 Ответ

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

Вы можете использовать 3 задания:

  1. Long running setup
  2. taskA
  3. taskB.

Задачи 2/3 зависят от задачи 1.

Как вы это делаете?добавив dependsOn в рабочих местах.например:

jobs:
- job: setup
    steps:
    - task: anything...
- job: taskA
  dependsOn: setup
    steps:
    - task: anything...
- job: taskB
  dependsOn: setup
    steps:
    - task: anything...

Более подробную информацию вы можете найти здесь .

...