什么是 Pipeline ?

简单地说就是一套运行与Jenkins上的工作流框架,将原本独立运行于单个或者多个节点的任务连接起来,实现单个任务那一完成的复杂发布流程。Pipeline的实现方式是一套Groovy DSL,任何发布流程都可以表述为一段Groovy脚本,并且Jenkins支持从代码库直接读取脚本,从而实现了Pipeline as Code的理念。

Pipeline的几个基本概念:

  • Stage:阶段,一个Pipeline可以划分为若干个Stage。每个Stage代表一组操作。注意,Stage是一个逻辑分组的概念,可以跨多个Node;

  • Node:节点,一个Node就是一个Jenkins节点,或者是Master,或者是Agent,是执行Step的具体运行期环境;

  • Step:步骤,Step是最基本的操作单元。小到创建一个目录,大到构建一个Docker镜像,由各类Jenlins Plugin提供。

Pipeline Job Demo

1.创建一个pipeline Job

在jenkins主页上点击“新建”,输入pipeline job的名称,选择Pipeline

2.创建完成后,点击该job —>设置 —> Pipeline,在输入框中输入script语句。

node{
    stage('get clone'){
        //check CODE
       git credentialsId: 'f3eb1fea-42b0-46b2-8342-a2be6a65fe73', url: 'http://xx.xx.xx/xx/qd_api.git'
    }

    //定义mvn环境
    def mvnHome = tool 'M3'
    env.PATH = "${mvnHome}/bin:${env.PATH}"

    stage('mvn test'){
        //mvn 测试
        sh "mvn test"
    }

    stage('mvn build'){
        //mvn构建
        sh "mvn clean install -Dmaven.test.skip=true"
    }

    stage('deploy'){
        //执行部署脚本
        echo "deploy ......"
    }
}

3.保存后点击“立即构建”,即可开始构建,右侧Stage View查看构建流程,点击每个stage,可以查看每个阶段的详细日志输出。

4.内置文档插件

Pipeline配有内置的文档功能,可以更轻松地创建不同复杂性的
Pipeline,根据Jenkins实例中安装的插件自动生成和更新内置文档。如
下图:

作者:Jeebiz  创建时间:2019-10-20 22:30
 更新时间:2023-12-28 09:15