Как запустить пять заданий агента одновременно в VSTS (Azure DevOps)? - PullRequest
0 голосов
/ 11 октября 2018

Я создал конвейер выпуска с пятью заданиями агента и хочу запустить все пять заданий одновременно.

пример: vsts

В примере Iнеобходимо одновременно запустить все задания агента и одновременно выполнить уникальное задание (подождать 10 секунд).

Имеет ли VSTS (DevOps Azure) возможность сделать это?

Ответы [ 4 ]

0 голосов
/ 20 июня 2019

Я думаю, что вам нужно создать 5 этапов, поскольку для конвейера выпуска в devops Azure не может быть выполнено параллельное выполнение заданий на одном этапе. см. Документы от Microsoft Или если вы хотите запустить тот же наборнабор задач для нескольких агентов, вы можете использовать опцию Multi-agent , как показано ниже. Опция ADO Multi-agent

0 голосов
/ 11 октября 2018

Если вы хотите, чтобы задание выполнялось параллельно, выберите конфигурацию с несколькими агентами, но если у вас 5 (очень) разных заданий, вы можете выбрать «Даже если предыдущее задание не удалось» из выпадающего меню «Запустить это задание»".

По умолчанию установлено значение" Только после успешного выполнения всех предыдущих заданий ", что означает, что:

  1. Все ваши 5 заданий будут выполняться последовательно в том порядке, в котором вынастроил их
  2. Цепочка заданий остановится, как только одно из заданий завершится сбоем

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

enter image description here

0 голосов
/ 11 октября 2018

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

Я не уверен, чего вы добиваетесь, ожидая 10 секунд, но это очень легко сделать с помощью шага PowerShell.Выберите переключатель «Inline» и введите его:

Start-Sleep -Seconds 10

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

enter image description here

0 голосов
/ 11 октября 2018

В конвейере выпуска нажмите «Задание агента», затем разверните «План выполнения» и нажмите «Мультиагент».

enter image description here

...