每次面对Jenkins构建管道都一头雾水?别担心,这篇指南能让你轻松上手。
1 Jenkins管道:不只是“流水线”那么简单
在Jenkins的世界里,管道(Pipeline)是一组事件或任务,它们按顺序相互链接。简单来说,它就像一条自动化生产线,代码从提交到部署要经过的各个环节都被串联起来,形成一个完整、可视化的流程。
管道为何如此重要? 传统Jenkins任务像是单独的工作点,而管道则是把所有这些点连接成一条完整的生产线。Jenkins Pipeline是一套运行于Jenkins上的工作流框架,用于实现复杂流程的编排与可视化。它帮助Jenkins实现从CI(持续集成)到CD(持续交付)与DevOps的转变。
管道即代码 是Jenkins 2.X最核心的特性。这意味着你的构建、测试、部署流程都可以用代码来描述,并像其他源代码一样进行版本管理。这一理念的实现,使得管道不再是通过Web界面手动配置,而是通过存储在项目根目录的Jenkinsfile文件定义。
2 Jenkins管道基础概念:先听懂行话
2.1 声明式 vs 脚本式:两种语法,两种风格
Jenkins管道有两种语法:声明式(Declarative)和脚本化(Scripted)管道语法。
声明式管道是Jenkins 2.5后支持的语法,它提供了更简单、更结构化的方式定义管道。它的特点是:
- 最外层必须由pipeline{ //do something }包裹
- 不需要分号作为分隔符,每个语句必须在一行内
- 不能直接使用groovy语句(例如循环判断等),需要被script {}包裹
// Jenkinsfile (Declarative Pipeline)
pipeline {
agent any
stages {
stage('Build') {
steps {
sh 'echo "Hello World"'
sh '''
echo "Multiline shell steps works too"
ls -lah
'''
}
}
}
}
脚本化管道在轻量级执行程序的帮助下在Jenkins主机上运行,它更灵活,可以直接使用Groovy语法:
// Jenkinsfile (Scripted Pipeline)
node {
stage('Build') {
sh 'echo "Hello World"'
}
stage('Test') {
sh 'echo "Testing..."'
}
}
对于新手,推荐从声明式管道开始,因为它结构更清晰,学习曲线更平缓。
2.2 管道核心概念:这些术语你得懂
- 节点(Node):Jenkins安装和运行的地方,它负责解析job脚本,处理任务,调度计算资源
- 阶段(Stage):管道中的一个逻辑划分,代表流程中的一个主要步骤,如构建、测试、部署
- 步骤(Step):单个操作,如执行一个shell命令
- 代理(Agent):指定管道运行的位置,可以是任何可用代理,也可以是特定标签的代理
3 手把手创建你的第一个管道
3.1 基础Hello World管道
让我们从最简单的Hello World管道开始:
- 打开Jenkins首页,单击“New Item”按钮
- 输入Job名称,选择“Pipeline”作为项目类型,然后单击“Create Item”按钮
- 在Job配置页面中,找到“Pipeline”选项卡
- 在Pipeline脚本区域输入以下

最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



