Можно задать условие, в соответствии с которым работа конвейера будет продолжаться либо останавливаться в зависимости от результата выполнения той или иной задачи. Для привязки работы конвейера к результату выполнения задачи используется тип задач «Условие».

Тип задач Условие используется в конвейере в качестве точки принятия решения. С помощью задач «Условие» и заданных выражений условий можно выполнять оценку любых свойств конвейера, этапов и задач.

Результат выполнения задачи «Условие» определяет, будет ли запущена следующая задача в конвейере.

  • Если результат соответствует выражению условия (истина), работа конвейера продолжается.
  • Если результат не соответствует выражению условия (ложь), работа конвейера останавливается.

Примеры того, как результат выполнения одной задачи используется в качестве входных данных следующей задачи за счет связывания этих задач с помощью задачи «Условие», см. в разделе Как использовать привязки переменных в конвейерах vRealize Automation Code Stream.

Табл. 1. Связь между задачей «Условие», выражением условия и конвейером
Тип задач «Условие»... На что влияет... Функции...

Задача «Условие»

Конвейер

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

Выражение условия

Результат выполнения задачи «Условие»

В ходе работы конвейера выражение условия, входящее в задачу «Условие», присваивает результату выполнения задач значение «Истина» или «Ложь». Например, можно задать выражение условия, требующее, чтобы результат выполнения задачи «Условие» имел состояние Завершено или содержал номер сборки 74.

Выражение условия отображается на вкладке «Задача» в области типа задач «Условие».

Выражение условия в задаче «Условие».

Тип задач «Условие» отличается по принципу работы и поведению от настройки При условии, доступной в других типах задач.

Настройка «При условии» в других типах задач.

Настройка При условии в других типах задач:

  • Управляет выполнением текущей задачи (а не последующих задач) на основании того, было ли соблюдено предварительно заданное условие. В ходе работы конвейера выражение условия, заданное для настройки «При условии», присваивает состояние «Истина» или «Ложь» результату текущей задачи.
  • Отображается на вкладке «Задача» вместе с соответствующим выражением условия.

В этом примере рассматривается использование задачи «Условие».

Необходимые условия

  • Убедитесь в наличии конвейера, включающего в себя несколько этапов и задач.

Процедура

  1. Задайте точку принятия решения в конвейере для вставки задачи «Условие».
  2. Добавьте задачу «Условие» перед задачей, выполнение которой должно определяться истинным или ложным результатом предыдущей задачи.
  3. Добавьте выражение условия в задачу «Условие».
    Например: "${Stage1.task1.output.status}" == "COMPLETED" || ${input.buildNumber} == 74
    Добавление условия в тип задач «Условие».
  4. Проверьте задачу.
  5. Сохраните конвейер, затем включите и запустите его.

Результаты

Обратите внимание на поведение конвейера при выполнении задач «Условие»: продолжается ли его работа или же останавливается.

Дальнейшие действия

Тип задач «Условие» также можно использовать для выполнения отката развертывания конвейера. Например, если добавить задачу «Условие» в конвейер с возможностью отката, служба vRealize Automation Code Stream сможет помечать случаи аварийного завершения работы конвейера в соответствии с заданным выражением условия и инициировать запуск единой процедуры отката при возникновении различных сбоев.

Чтобы выполнить откат развертывания, см. раздел Как откатить развертывание в vRealize Automation Code Stream.