Jenkins并行流程

Jenkins并行流程

某些环节可能会由很多进程,并且这些进程可以并行执行,我们可以设置并行流程。

例如静态测试包括bug扫描、安全扫描、代码风格扫描、非标软件扫描等,这些进程都可以是并行的,最终某一个失败了则整个环节失败。

官网文档地址:

https://www.jenkins.io/zh/doc/book/pipeline/syntax/#%E5%B9%B6%E8%A1%8C

语法很简单,在步骤中添加parallel语法块,块内还是按照stage的方式编写。

也可以在parallel上添加failFast true,某个进程失败则整个步骤失败。

下面是一个完整Jenkinsfile例子

pipeline {
    agent any
    stages {
        stage("stage2: Static scan") {
            failFast true
            parallel {
                stage("stage1: select result") {
                    input {
                        message "You want to success?"
                        ok "ok"
                    }
                    steps {
                        echo 'Select Result'
                    }
                }
                stage ("code style") {
                    steps {
                        echo 'On code style'
                        echo 'On code style'
                    }
                }
                stage ("find bugs") {
                    steps {
                        echo 'On find bugs'
                        echo 'On find bugs'
                        echo 'On find bugs'
                    }
                }
                stage ("security") {
                    steps {
                        echo 'On security'
                        echo 'On security'
                        echo 'On security'
                        echo 'On security'
                        echo 'On security'
                        echo 'On security'
                        echo 'On security'
                    }
                }
            }
        }
    }
    post {
        always {
            echo 'This will always run'
        }
        success {
            echo 'successful'
        }
        failure {
            echo 'failed'
        }
    }
}

posted @ 2021-12-28 18:15  乐小天  阅读(317)  评论(0编辑  收藏  举报