Как выполнить задачу условно, если результат предыдущей задачи был успешным, но с ошибками - PullRequest
1 голос
/ 21 октября 2019

Как выполнить задачу условно, если результат предыдущей задачи был успешным, но с ошибками?

У меня есть следующая структура задачи:

  • задача 1
  • задача 2
  • задача 3
  • больше задач

Основная цель - запустить Задача 3 , если любая из задач 1 или задание 2 выполнено успешно. Также - запустить задачу 2, если в задаче 1 не были выполнены определенные условия (например, были ошибки).

Мои текущие настройки:

Задача 1 может завершиться с ошибками, поэтому опция "Продолжить при ошибке "был включен. Я хотел бы запустить задачу 2 только в том случае, если задача 1 завершается с ошибками (и опция «Только в случае сбоя предыдущей задачи» в этом случае не работает, а «Продолжить при ошибке» включена). В задаче 3 прямо сейчас включена опция «Только после успешного выполнения всех предыдущих задач».

Может быть, я должен попробовать другой подход? Или, может быть, есть подходящие «Пользовательские условия» для такого случая?

Ответы [ 2 ]

1 голос
/ 22 октября 2019

Как выполнить задачу условно, если результат предыдущей задачи был успешным, но с ошибками?

Вы можете установить следующие пользовательские условия для задачи 2 с пользовательскими условиями:

in(variables['Agent.JobStatus'], 'Succeeded', 'SucceededWithIssues')

enter image description here

Кроме того, если вашей главной целью является запуск Задачи 3, если задача 1 или задача 2 была успешной, то вы также можете установить следующие пользовательские условия дляЗадание 3:

in(variables['Agent.JobStatus'], 'Succeeded', 'SucceededWithIssues')

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

Надеюсь, это поможет.

1 голос
/ 21 октября 2019

Вы можете сослаться на ответ в этом посте и создать переменные для назначения статуса задачи.> Пользовательские условия сборки TFS для запуска задачи - проверить, не прошла ли конкретная предыдущая задача

Затем используйте пользовательские условия для проверки предыдущих задач: in (переменные ['task.A.status'], 'SucceededWithIssues')

См. Дополнительные функции проверки задания здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...