Pipeline介绍
Jenkins Pipeline(或简称为 “Pipeline”)是一套插件,将持续交付的实现和实施集成到 Jenkins 中。简而言之,就是一套运行于Jenkins上的工作流框架,将原本独立运行于单个或者多个节点的任务连接起来,实现单个任务难以完成的复杂流程编排与可视化。
创建Pipeline
新建任务 —》 流水线
创建后自动打开,让用户自行编辑
创建第一个Pipeline
Pipeline运行Python的两种方式:
1、声明式 Jenkinsfile (Declarative Pipeline)
pipeline {
agent any
stages {
stage('see python version') {
steps {
sh 'python --version'
}}
stage('install pytest') {
steps {
sh 'pip install pytest'
}}
}
}
agent 部分指定Jenkins构建过程中的环境位置
stages 包含一个或多个stage的序列,Pipeline的大部分工作在此执行。建议stages至少包含至少一个stage指令,用于连接各个交付过程,如构建,测试和部署等。
stage 阶段,过程中的一部分
如下,在图一添加脚本后运行,如果脚本没有语法上的错误,那么它会将所有步骤显示如图二。因容器部署方式的作用域是容器本身,因此调用宿主命令时会报错(原因可能是该指令在容器里不存在)。
2、脚本式 Toggle Scripted Pipeline (Advanced)
Jenkinsfile (Scripted Pipeline)
/* Requires the Docker Pipeline plugin */
node('docker') {
checkout scm
stage('Build') {
docker.image('python:3.5.1').inside {
sh 'python --version'
}
}
}