Jenkins系列之pipeline语法介绍与案例

本文介绍了Jenkins Pipeline的核心概念,包括Pipeline的定义、创建方式、核心关键字和使用案例。内容涉及Pipeline作为工作流框架的功能,如何在Web UI中定义Pipeline,Pipeline的Stage、Node和Steps等核心概念,以及如何通过Pipeline进行自动化测试并发送飞书消息。
摘要由CSDN通过智能技术生成

Python微信订餐小程序课程视频

https://edu.csdn.net/course/detail/36074

Python实战量化交易理财系统

https://edu.csdn.net/course/detail/35475

Jenkins Pipeline 的核心概念:

  • Pipeline 是一套运行于Jenkins上的工作流框架,将原本独立运行于单个或者多个节点的任务连接起来,实现单个任务难以完成的复杂流程编排与可视化。
  • PipelineJenkins2.X最核心的特性,帮助Jenkins 实现从CI到CD与DevOps的转变。
  • Pipeline是一组插件,让Jenkins可以实现持续交付管道的落地和实施。

持续交付管道(CD Pipeline)是将软件从版本控制阶段到交付给用户或客户的完整过程的自动化表现。软件的每一次更改(提交到源代码管理系统)都要经过一个复杂的过程才能被发布。

Pipeline提供了一组可扩展的工具,通过Pipeline Domain Specific Language(DSL)syntax可以达到Pipeline as Code(Jenkinsfile存储在项目的源代码库)的目的。

Pipeline入门:

先决条件
要使用Jenkins Pipeline,您将需要:

  • Jenkins 2.x或更高版本
  • Pipeline插件(请自行在插件管理中安装。)

Pipeline 定义

脚本Pipeline是用Groovy写的 。Groovy相关语法请移步>

Pipeline支持两种语法:

  • Declarative 声明式
  • Scripted pipeline 脚本式
    在这里插入图片描述
如何创建基本Pipeline
  • 直接在Jenkins网页界面中输入脚本。
  • 通过创建一个Jenkinsfile可以检入项目的源代码管理库。

用任一方法定义Pipeline的语法是一样的,但是Jenkins支持直接进入Web UI的Pipeline,通常认为最佳实践是在Jenkinsfile Jenkins中直接从源代码控制中加载Pipeline。

在Web UI中定义Pipeline

要在Jenkins Web UI中创建基本Pipeline

  1. 单击Jenkins主页上的New Item。
    在这里插入图片描述
  2. 输入Pipeline的名称,选择Pipeline,然后单击确定。
    在这里插入图片描述
  3. 在脚本文本区域中,输入Pipeline,然后单击保存。
    在这里插入图片描述
  4. 单击立即生成以运行Pipeline,查看控制台输出。
    在这里插入图片描述
Pipeline几个核心概念:
  • Stages:阶段组/Stage:阶段

    1. 一个 Pipeline 有多个 Stage 组成,每个 Stage 包含一组 Step。
    2. 注意一个 Stage 可以跨多个 Node 执行,即 Stage 实际上是 Step 的逻辑分组。
    3. 一个Jenkinsfile 可以分为大的阶段,如打包、构建、 部署。测试
    4. 构建的流程,可以分为这几步,获取源代码,然后打包,构建,进行编译,替换配置文件,编译完打包,进行部署 这个阶段就是stage
  • Node:节点,一个Node就是一个Jenkins节点,或者是Master,或者是Agent,是执行Step的具体运行环境。

  • Steps:步骤,Step是最基本的操作单元,小到创建一个目录,大到构建一个Docker镜像,由各类Jenklins Plugin提供,例如:sh ‘make’

Pipeline几个核心关键字:
  • 块(blocks{}):
    由大括号括起来的语句,如pipeline{},Section{},parameters{},script{}
  • 章节(Sections):
    通常包含一个或多个指令或步骤。如 agent 、post、stages、steps
  • 指令(Directives):
    environment、options、parameters、triggers(触发)、stage、tools、when
  • 步骤(Steps):
    执行脚本式pipeline:在该语句块内使用script{}
  • agent
    必须存在,agent必须在pipeline块内的顶层定义,但stage内是否使用是可选的
    参数:any/none/label/node/docker/dockerfile
    常用选项 label/cuetomWorkspace/reuseNode
指令名 说明 作用域
agent 定义执行任务的代理 stage 或pipeline
input 暂停pipeline,提示输入内容 stage
environment 设置环境变量 stage或pipeline
tools 自动下载并安装指定的工
  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

[虚幻私塾】

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值