Jenkins流水线是用于实现和集成持续交付(Continuous Delivery,CD)的一系列插件集合,Jenkins流水线可以写入一个叫做JenkinsFile的文本文件中从而能被纳入版本控制中。
目前Jenkins支持两种类型的pipeline语法,一种是声明式(Declarative)的pipeline,另一种是脚本式(Scripted)的pipeline。本项目中采用的是声明式的pipeline。
声明式的流水线结构如下图所示。声明式Pipeline语法遵循与groovy语言一样的规则,其中的一些重要概念如下,包括block、section、Directives等。
每个由花括号括起来的代码块称作block,如每个pipeline都由pipeline{}构成。
Sections是一个或多个指令和步骤的组合,包括agent、post、stages和steps。Agent用于指定pipeline运行的节点,可以减轻Jenkins主节点的负担;post则用于做一些后处理操作,可以根据流水线的执行情况采取不同的行为;stages则包含了一个或多个stage指令,stages是流水线中真正工作的区域;在每个stage指令中,可以使用steps定义一系列步骤执行各种任务,每个step由一系列内置或自定义的插件实现,同时遵循DSL的语法格式。
Directives则包括environment、parameters、stage等。environment用于定义一些环境变量;parameters用于接收传入pipeline的参数。
标签:pipeline,学习,流水线,Jenkins,stages,声明,stage From: https://www.cnblogs.com/ghh82058/p/16925186.html