Jenkinsfile并行阶段-如何在第一阶段失败时立即停止管道,但在第二阶段失败时继续

f2uvfpb9  于 12个月前  发布在  Jenkins
关注(0)|答案(1)|浏览(167)

下面是使用并行级的jenkinsfile流水线的示例。如果第一阶段失败,我想立即中止流水线,但如果第二阶段失败,我想继续。使用failfast并不好,因为无论哪个阶段失败,它都会失败。知道吗?

pipeline {
    stages {
        stage('Hello') {
            stages{
                stage('parallel')
                {
                    parallel {
                        stage('1'){
                            steps{
                                echo '1'
                            }
                        }
                        stage('2'){
                            steps{
                                echo '2'
                                }
                            }
                        }
                    }
                }
            }
        }
    }

尝试使用catchError,但无法解决此问题

hc8w905p

hc8w905p1#

在jenkins中有一个failFast选项。官方文档可以在此jenkins文档页面的示例26中找到。

pipeline {
agent any
options {
    parallelsAlwaysFailFast()
}
stages {
        stage('Hello') {
            stages{
                stage('parallel')
                {
                    parallel {
                        stage('1'){
                            steps{
                                echo '1'
                            }
                        }
                        stage('2'){
                            steps{
                                echo '2'
                                }
                            }
                        }
                    }
                }
            }
        }
    }

相关问题