- 22, Oct 2024
- #1
У меня есть задание, определенное как декларативный конвейер, который запускается рядом различных вышестоящих заданий. В зависимости от того, какое вышестоящее задание вызвало мое задание, мне не обязательно запускать все этапы моего конвейера, поэтому я хочу указать список триггеров для каждого этапа.
Я надеялся использовать
when {
anyOf {
triggeredBy cause: 'UpstreamCause', detail: 'Job A'
triggeredBy cause: 'UpstreamCause', detail: 'Job C'
}
}
clause and 'UserIdCause'
условия для определения времени запуска каждого этапа, но документация не очень подробно:
вызвано
Выполнить этап, когда текущая сборка была запущена указанным параметром. Например:
когда { TriggedBy 'SCMTrigger' }
когда { TriggedBy 'TimerTrigger' }
когда { TriggedBy 'UpstreamCause' }
когда { TriggedBy Cause: "UserIdCause", подробно: "vlinde" }
Есть ли 'UpstreamCause'
equivalent to the example for triggeredBy
это позволило бы мне указать который вышестоящая причина должна запускать конкретную стадию? Если да, то каков точный синтаксис? В основном я хочу сделать что-то вроде:
when
Я также открыт для других подходов для достижения этой цели.
#jenkins-pipeline #jenkinsfile