Jenkins DSL booleanCondition() не возвращает true, даже если значение true передано
У меня есть две работы под названием ParentJob
а также ChildJob
, ParentJob
запускает нижестоящую работу ChildJob
,
От ParentJob
я передаю переменную как
parameters {
predefinedProp('RELEASE','true')
}
в ChildJob
я выбираю параметр как
conditionalSteps {
condition {
booleanCondition("RELEASE")
steps {
shell("echo 'Wow !!! condition is parsed as true'")
}
}
в ChildJob
страница параметров, я вижу, что это правильно, как true
:
Еще линия shell("echo 'Wow !!! condition is parsed as true'")
не выполняется. В логах я вижу:
09:35:41 Run condition [Boolean condition] enabling prebuild for step [BuilderChain]
09:35:41 [Boolean condition] checking [RELEASE] against [^(1|y|yes|t|true|on|run)$] (origin token: RELEASE)
09:35:41 Run condition [Boolean condition] preventing perform for step [BuilderChain]
09:35:41 Finished: SUCCESS
Я даже пытался пройти как false
от ParentJob
работа, все тот же результат. Что я делаю неправильно?
1 ответ
Я неправильно получил доступ к токену, где правильный путь booleanCondition('${RELEASE}')
,
Это должно быть правильно:
conditionalSteps {
condition {
booleanCondition('${RELEASE}')
steps {
shell("echo 'Wow !!! condition is parsed as true'")
}
}
}