概述

参考:https://www.jenkins.io/zh/doc/book/pipeline/

部署流水线(Deployment pipeline)是指从软件版本控制库到用户手中这一过程的自动化表现形式。通常会把部署流水线简称为pipeline。

Jenkins 1.x只能通过界面手动操作来描述部署流水线。Jenkins 2.x终于支持pipeline ascode了,可以通过代码来描述部署流水线。

使用“代码”而不是UI的意义在于:

  • 更好地版本化:将pipeline提交到软件版本库中进行版本控制。
  • 更好地协作:pipeline的每次修改对所有人都是可见的。除此之外,还可以对pipeline进行代码审查。
  • 更好的重用性:手动操作没法重用,但是代码可以重用。

体验

新建一个pipeline:

image-20200706225203406

保持构建数为3

image-20200706225310327

Pipeline script:

1
2
3
4
5
6
7
8
9
10
11
pipeline {
agent any

stages {
stage('Hello') {
steps {
echo 'Hello World'
}
}
}
}

image-20200706225332563

输出:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Started by user admin
Running in Durability level: MAX_SURVIVABILITY
[Pipeline] Start of Pipeline
[Pipeline] node
Running on Jenkins in /var/lib/jenkins/workspace/test-pipeline
[Pipeline] {
[Pipeline] stage
[Pipeline] { (Hello)
[Pipeline] echo
Hello World
[Pipeline] }
[Pipeline] // stage
[Pipeline] }
[Pipeline] // node
[Pipeline] End of Pipeline
Finished: SUCCESS