Jenkinsfile-一种跳过整个管道的方法?

时间:2019-04-11 13:19:49

标签: jenkins-pipeline

我使用declarative syntax来开发( multibranch )管道脚本,并且我正在寻找一种方法,根据某些条件跳过整个管道 ,而不必在每个阶段都修改SELECT make_into_serial('foo', 'a');

当前用例:我正在设置一个select ad1.account_id, ad2.name, ad1.value as accountValue, ad2.value as defaulValue from account_data ad1 outer join account_data ad2 on ( ad1.name = ad2.name and ad1.account_id = :account_id and ad2.account_id is null ) 在晚上触发构建,但是我只想说分支whencron在晚上通过管道,而不是其他十几个分支。

release/v1

任何提示将不胜感激。

1 个答案:

答案 0 :(得分:2)

如果您具有Pipeline-definition-plugin 1.3或更高版本(changelog),则可以嵌套阶段。

使用它,您可以将整个作业嵌套在父级中,并在父级上使用when指令。如果跳过父阶段,则将跳过所有子阶段。这是一个示例:

pipeline {
    agent any
    stages {
        stage('Parent') {
            when {
                //...
            }
            stages {
                stage('build') {
                    steps {
                        //..
                    }
                }
                stage('UT') {
                    steps {
                        //...
                    }
                }
            }
        }
    }
}