pipline 是帮助 Jenkins 实现 CI 到 CD 转变的重要角色,是运行在 jenkins 2.X 版本的核心插件,简单来java
说 Pipline 就是一套运行于 Jenkins 上的工做流框架,将本来独立运行于单个或者多个节点的任务连node
接起来,实现单个任务难以完成的复杂发布流程,从而实现单个任务很难实现的复杂流程编排和任python
务可视化,Pipeline 的实现方式是一套 Groovy DSL,任何发布流程均可以表述为一段 Groovy 脚本。git
可持续性:jenkins 的重启或者中断后不影响已经执行的 Pipline Jobshell
支持暂停:pipline 能够选择中止并等待人工输入或批准后再继续执行。编程
可扩展:经过 groovy 的编程更容易的扩展插件。服务器
并行执行:经过 groovy 脚本能够实现 step,stage 间的并行执行,和更复杂的相互依赖关系。框架
# Stage:阶段,一个 pipline 能够划分为若干个 stage,每一个 stage 都是一个操做, # 好比 clone 代码、代码编译、代码测试和代码部署,阶段是一个逻辑分组,能够跨多个 node 执行。 # Node:节点,每一个 node 都是一个 jenkins 节点,能够是 jenkins master 也能够是 jenkins agent, # node 是执行 step 的具体服务器。 # Step:步骤,step 是 jenkins pipline 最基本的操做单元,从在服务器建立目录到构建容器镜像,由各 类 # Jenkins 插件提供实现,例如: sh “make”
node { stage("code clone"){ echo "git clone" } stage("code build"){ echo "code build" } stage("code test"){ echo "code test" } stage("code deploy"){ echo "code deploy" } }
66分布式
# Slave 服务器建立工做目录,若是 slave 须要执行编译 job,则也须要配置 java 环境: yum install java-1.8.0-openjdk –y mkdir /data/jenkins/slave -pv