gpt4 book ai didi

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

转载 作者:行者123 更新时间:2023-12-02 09:08:07 25 4
gpt4 key购买 nike

我使用 declarative syntax用于开发( 多分支 )管道脚本,我正在寻找一种方法来 根据某些条件跳过整个管道 ,无需修改 when在每一个阶段。

当前用例:我正在设置一个 cron在晚上触发构建,但我只想说分支 release/v1develop晚上要通过管道,而不是其他十几个分支。

triggers {
cron('H 21 * * 1-5')
}

// SKIP PIPELINE if triggered by timer AND branch not 'release/v1' OR 'develop'

stages {
stage('build') {
when { ... }
}
stage('UT') {
when { ... }
}
etc...
}

任何提示将不胜感激。

最佳答案

如果您有管道定义插件 1.3 或更高版本 ( changelog ),则可以嵌套阶段。

使用它,您可以将整个工作嵌套在父阶段中,并在父阶段使用 when 指令。如果跳过父阶段,将跳过所有子阶段。下面是一个例子:

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

关于jenkins-pipeline - Jenkinsfile - 一种跳过整个管道的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55633505/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com