小编Roq*_*qux的帖子

在执行某些步骤(例如 when 指令)后,如何跳过 Jenkins 阶段?

如何在执行过程中跳过 Jenkins 阶段?一旦确定了跳过条件,这就像when在某些步骤之后或步骤中间使用一样。我知道我可以进一步分解阶段/步骤并使用全局变量来实现此目的,但似乎应该有一种更简单的方法。

该步骤应该显示为已跳过,而不是失败或不稳定。

stage('Builds') {
    failFast true
    parallel {
        stage('FlagA') {
            steps {
                BuildWithFlag("FlagA")
            }
        }
        stage('FlagB') {
            steps {
                BuildWithFlag("FlagB")
            }
        }
        ...

void BuildWithFlag(String flag) {
    skipCondition = false
    <setup-steps>
    if(skipCondition) {
        currentStage.result = '' // Doesn't work
        return
    }
    <build-steps>
}
Run Code Online (Sandbox Code Playgroud)

相关:
Jenkins 管道中的条件步骤/阶段
如何在声明性管道中执行 when..else
Jenkins 管道阶段跳过基于管道中定义的常规变量

所有这些都when在阶段开始时使用。我需要在一个步骤中模仿它。

jenkins jenkins-groovy jenkins-pipeline

3
推荐指数
1
解决办法
4238
查看次数

标签 统计

jenkins ×1

jenkins-groovy ×1

jenkins-pipeline ×1