-
Improvement
-
Resolution: Fixed
-
Major
-
None
The last change to the stage `when {}` block changed to using items like `branch` and `expression`.
Multiple items cannot be used in the same when block. This makes sense because it would unclear whether those items should be "A or B", or if they should be "A and B".
The `when` block should support logical blocks such as `and {}`, `or {}`, `not {}` to allow combining other conditions in a clear fashion.
For example, when branch is master or parameter "FORCE_FULL_BUILD" is true:
stage ('Build') { when { or { branch 'master' expression { return params.FORCE_FULL_BUILD } } } }
Alternative: use `all {}` instead of `and`, and use `any {}` instead of `or {}`:
stage ('Build') { when { any { branch 'master' expression { return params.FORCE_FULL_BUILD } } } }
- relates to
-
JENKINS-41187 Stage "when" should have "stage" condition
- In Progress
- links to