赵走x博客
网站访问量:151872
首页
书籍
软件
工具
古诗词
搜索
登录
34、触发pipeline执行:事件触发
33、触发pipeline执行:时间触发
32、当我们谈质量时,谈的是什么
31、Allure测试报告:更美观的测试报告
30、SonarQube:持续代码质量检查
29、性能测试
28、单元测试
27、静态代码分析
26、利用tools作用域实现多版本编译
25、利用环境变量支持更多的构建工具
24、构建工具
23、环境变量
22、小贴士
21、pipeline内置基础步骤:其他步骤
20、pipeline内置基础步骤:命令相关步骤
19、pipeline内置基础步骤:制品相关步骤
18、pipeline内置基础步骤:文件目录相关步骤
17、在声明式pipeline中使用脚本
16、配置pipeline本身
15、pipeline支持的指令
14、 post部分
13、pipeline的组成
12、必要的Groovy知识
11、使用Maven构建Java应用
10、从版本控制库拉取pipeline
9、创建第一个pipeline
8、pipeline语法的选择
7、Jenkinsfile又是什么
6、pipeline是什么
5、Jenkins与DevOps
4、Jenkins介绍
3、从另一个角度看“提高软件工程生产力”
2、前言
1、内容简介
13、pipeline的组成
资源编号:76387
Jenkins 2.x 实战指南
微服务
热度:79
Jenkins pipeline其实就是基于Groovy语言实现的一种DSL(领域特定语言),用于描述整条流水线是如何进行的。流水线的内容包括执行编译、打包、测试、输出测试报告等步骤。
Jenkins pipeline其实就是基于Groovy语言实现的一种DSL(领域特定语言),用于描述整条流水线是如何进行的。流水线的内容包括执行编译、打包、测试、输出测试报告等步骤。 本章对Jenkins pipeline的结构、语法进行详细介绍。 # 1、pipeline最简结构 前文中,我们已经了解到:从软件版本控制库到用户手中这一过程可以分成很多阶段,每个阶段只专注处理一件事情,而这件事情又是通过多个步骤来完成的,这就是软件工程的pipeline。Jenkins对这个过程进行抽象,设计出一个基本的pipeline结构。  * pipeline:代表整条流水线,包含整条流水线的逻辑。 * stage部分:阶段,代表流水线的阶段。每个阶段都必须有名称。本例中,build就是此阶段的名称。 * stages部分:流水线中多个stage的容器。stages部分至少包含一个stage。 * steps部分:代表阶段中的一个或多个具体步骤(step)的容器。steps部分至少包含一个步骤,本例中,echo就是一个步骤。在一个stage中有且只有一个steps。 * agent部分:指定流水线的执行位置(Jenkins agent)。流水线中的每个阶段都必须在某个地方(物理机、虚拟机或Docker容器)执行,agent部分即指定具体在哪里执行。我们会在第14章中进行详细介绍。 以上每一个部分(section)都是必需的,少一个,Jenkins都会报错。 # 2、步骤 pipeline基本结构决定的是pipeline整体流程,但是真正“做事”的还是pipeline中的每一个步骤。步骤是pipeline中已经不能再拆分的最小操作。前文中,我们只看到两个步骤:sh和echo。sh是指执行一条shell命令;echo是指执行echo命令。这两个步骤只是Jenkins pipeline内置的大量步骤中的两个。 那是不是说,Jenkins pipeline内置了所有可能需要用到的步骤呢?显然没有必要。因为有些步骤我们可能一辈子也不会用到。 更好的设计是:步骤是可插拔的,就像Jenkins的插件一样。如果现有的插件不用修改或者只需要简单修改,就能在Jenkins pipeline中当成一个步骤来使用,该多好?这样就不用重新实现一遍已经存在的插件了。 Jenkins就是这样做的,只需要对现有的插件进行一些修改,就可以在pipeline中被当成一个步骤使用。这样大大降低了从现有依赖于界面的插件过渡到pipeline中步骤的成本。 已经有哪些插件适配了Jenkins pipeline呢?pipeline plugin的GitHub仓库给出了一个列表(https://github.com/jenkinsci/pipeline-plugin/blob/master/COMPATIBILITY.md )方便大家检索,如图3-1所示(只截取了一部分)。 只要安装了这些适配了Jenkins pipeline的插件,就可以使用其提供的pipeline步骤。 Jenkins官方还提供了pipeline步骤参考文档(https://jenkins.io/doc/pipeline/steps/ )。  图3-1 适配了Jenkins pipeline的部分插件列表