一、pipeline介绍
Pipeline是Jenkins2.X的最核心的特性,帮助Jenkins实现从CI到CD与DevOps的转变。
Pipeline,一套运行于Jenkins上的工作流框架, 将原本独立运行于单个或者多个节点的任务连接起来, 实现单个任务难以完成的复杂流程编排与可视化。
二、jenkins2以上版本如果在安装时安装插件,就有了。如果没有请升级你的版本,我现在是 2.258。
三 、Pipeline脚本是由Groovy语言实现(无需专门学习)支持两种语法:Declarative 声明式,Scripted Pipeline 脚本式。
我们以声明式为例写个最简单的:
1、新建一个pipeline(流水线)的工作job,在流水线选择helloworld模板:
2、保存后执行构建。
3、可以在控制台输出信息
四、建立多个阶段脚本,先进行初始化,检查node.js,npm的版本 及python的版本,如果测试环境部署好的可执行python的测试脚本,使用pytest方式执行。脚本请提前自己准备。
1、在流水线上的脚本输入下面的:
pipeline {
agent any
environment {
ENVIRONMENT_TEST_FLAG = 'YES'
}
stages {
stage('初始化 ') {
steps {
script {
BUILD_EXPRESSION = true
DEPLOY_USER = 'linda'
}
}
}
stage('Build') {
steps {
script {
if ( BUILD_EXPRESSION ) {
sh 'echo Build stage ...'
sh 'node -v'
sh 'npm -v'
}
}
}
}
stage('测试 '){
steps {
script {
if ( ENVIRONMENT_TEST_FLAG == 'YES' ) {
sh 'python --version'
sh 'pytest -s -v /test/test_cacu1.py'
}
}
}
}
stage('Deploy') {
steps {
script {
if ( DEPLOY_USER == 'linda' ) {
sh 'echo Deploy stage ...'
}
}
}
}
}
}
2、执行的视图:
控制台输出结果如下: