Если ваш конвейер написан по сценарию, то
import org.jenkinsci.plugins.pipeline.modeldefinition.Utils
def call(boolean condition, body) {
def config = [:]
body.resolveStrategy = Closure.OWNER_FIRST
body.delegate = config
if (condition) {
body()
} else {
Utils.markStageSkippedForConditional(STAGE_NAME)
}
}
решит проблему, поскольку пометит этап как пропущенный ( jenkins-source ) вместо того, чтобы заставить его исчезнуть. Но вам придется реорганизовать свой код, чтобы использовать это. Предложение о том, где разместить ее, - общая библиотека в качестве статического вызова для легкого доступа.
Используется
when(shouldSkip == false) {
yourStage()
}