代码改变世界

Jenkins2构建pipeline流水线

2019-11-29 10:37  那个杰克  阅读(681)  评论(0编辑  收藏  举报

流水线有两种方式:

1、脚本式流水线
2、声明式流水线

构建流水线的简单示例:

  • 脚本式流水线
node ('master'){
    stage("Source"){
        //从Git仓库中获取代码
        git 'https://github.com/brentlaster/gradle-greetings.git'
    }
    stage("Build"){
        
    }
    stage("Test"){
        
    }
    stage("push"){
        
    }
}
  • 声明式流水线

pipeline {
    agent {label 'master'}
    stages {
        stage('Source') {
            //拉取构建源码
            steps {
                //从git仓库中获取代码
                git 'https://github.com/brentlaster/gradle-greetings.git'
            }
        }
        stage('Build') {
            steps {
                //运行构建
                bat "echo 'Build'"
            }
        }
        stage('Test') {
            steps {
                //测试
                bat "echo 'Test'"
            }
        }
        stage('Push') {
            steps {
                //发布上线
                bat "echo Push"
            }
        }
    }
}

脚本式流水线和声明式流水线的区别:

脚本式流水线
  • 优点:脚本灵活性更高、可以构建更复杂的流水线
  • 缺点:脚本代码结构不清晰不容易维护
声明式流水线:
  • 优点:脚本灵活性比脚本式较低,一样可构建流水线,脚本代码结构清晰容易维护
  • 缺点:构建复杂的流水线会变的更困难

流水线的第三中模式:jenkinsfile
Jenkinsfile可以脱离Jenkins,独立存在于其他地方的流水线构建脚本,jenkinsfile可以位于工程项目代码中,当项目被拉取时,Jenkins会自动读取jenkinsfile文件,并自动实现流水线的构造