Jenkins Pipeline 教程:如何创建 JenkinsFile(示例)
什么是 Jenkins Pipeline?
詹金斯管道 是支持集成和实施持续交付管道的插件组合。它具有可扩展的自动化服务器,可通过管道 DSL 将简单和复杂的交付管道创建为代码。管道是一组按顺序相互链接的事件。
什么是持续交付管道?它是如何工作的?
在 Jenkins 管道中,每个作业或事件都对至少一个或多个事件有某种依赖性。

上图表示 Jenkins 中的持续交付流水线。它包含一组状态,称为构建、部署、测试和发布。这些事件相互关联。每个状态都有其事件,它们按称为持续交付流水线的顺序工作。
持续交付管道是一种自动化表达,用于显示获取软件进行版本控制的过程。因此,软件中所做的每项更改在发布之前都要经过许多复杂的过程。它还涉及以可靠和可重复的方式开发软件,以及通过多个阶段推进构建的软件 测试 和部署。
什么是 JenkinsFile?
Jenkins 管道可以使用名为 Jenkins文件。 您可以使用 JenkinsFile 将管道实现为代码,并且可以使用领域特定语言 (DSL) 来定义。使用 JenkinsFile,您可以编写运行 Jenkins 管道所需的步骤。
使用的好处 JenkinsFile 是:
- 您可以自动为所有分支创建管道,并且只需一个即可执行拉取请求 Jenkins文件。
- 您可以在管道上检查您的 Jenkins 代码
- 您可以审计您的 Jenkins 管道
- 这是您的管道的唯一来源,可以由多个用户修改。
JenkinsFile 可以通过 Web UI 或 Jenkins 文件定义。
声明式与脚本式管道语法:
有两种类型的 Jenkins 管道语法用于定义 JenkinsFile。
- 陈述式
- 脚本化
声明:
声明式管道语法提供了一种创建管道的简单方法。它包含一个用于创建 Jenkins 管道的预定义层次结构。它使您能够以简单、直接的方式控制管道执行的所有方面。
脚本:
脚本化的 Jenkins 流水线在轻量级执行器的帮助下在 Jenkins 主服务器上运行。它使用很少的资源将流水线转换为原子命令。声明式和脚本式语法彼此不同,并且定义完全不同。
为什么要使用 Jenkin 的管道?
Jenkins 是一个开放 持续集成服务器 它能够支持软件开发流程的自动化。您可以借助用例创建多个自动化作业,并将它们作为 Jenkins 管道运行。
以下是您应该使用 Jenkins 管道的原因:
- Jenkins 管道以代码的形式实现,允许多个用户编辑和执行管道流程。
- 管道非常强大。因此,如果您的服务器发生意外重启,管道将自动恢复。
- 您可以暂停管道进程并让其等待直到有用户输入后再恢复。
- Jenkins Pipelines 支持大型项目。您可以运行多个作业,甚至可以循环使用管道。
詹金斯管道 Concepts
按揭年数 | 描述 |
---|---|
管道 | 流水线是一套以代码形式给出的持续交付指令,包含整个构建过程所需的指令。通过流水线,您可以构建、测试和交付应用程序。 |
Node | Jenkins 运行的机器称为节点。节点块主要用于脚本化管道语法。 |
阶段 | 阶段块包含管道中的一系列步骤。也就是说,构建、测试和部署过程都集中在一个阶段中。通常,阶段块用于可视化 Jenkins 管道过程。 |
步骤 | 步骤不过是在规定时间执行特定流程的单个任务。管道涉及一系列步骤。 |
在 Jenkins 中安装 Build Pipeline 插件
随着 构建管道 插件,您可以创建传入和传出作业的管道视图,并创建需要手动干预的触发器。
安装方法如下 构建管道 在你的 Jenkins 中插件:
步骤1)插件的设置可以在以下位置找到,
管理 Jenkins > 管理插件。
如果您已经安装了该插件,它将显示在已安装选项卡下。
步骤2)如果您之前没有安装该插件,
它出现在 可提供 标签。
成功安装后 构建管道 在您的 Jenkins 插件中,按照以下步骤创建您的 Jenkins 管道:
如何创建 Jenkins 管道
登录到 Jenkins 仪表板后:
步骤1)点击 “+” 单击 Jenkins 仪表板左侧的按钮来创建管道。
步骤2)
- 系统将要求您为管道视图命名。我们将其命名为“Guru99 管道” 在本演示期间。
- 选择 构建管道视图 下 选项
- 点击 ok
步骤3)在下一页中,您将被要求提供更多详细信息以配置您的 Jenkins 管道。只需接受默认设置,并确保在设置下选择第一个作业。
点击 入学申请 然后 OK.
这将显示您的项目的示例管道视图,如下所示:
运行管道构建
步骤1) 要运行管道构建,您需要先链接您的作业。为此,请转到您的第一个作业并单击配置。
步骤2)现在,在 建立触发器, 检查 在其他项目构建后进行构建 选项。
这样,您所有工作的链条就创建好了。
步骤3)安装 构建管道视图 插件(如果尚未安装)。
步骤4)转到您的 Jenkins 仪表板并单击“+”按钮。选择 构建管道视图 选项并单击 OK.
步骤5) 在下面 管道视图配置,找到 管道流量.
下 管道流量,选择要运行的初始作业。现在选择与其他作业有链的作业,如下所示 步骤1 和 步骤2.
这里我们选择了 Guru99 项目 1 作为初始作业,与其他作业链接。因此,作业将一个接一个地在管道中运行。
当 Jenkins 管道运行时,您可以借助红色和绿色状态符号检查其状态。红色表示管道失败,而绿色表示成功。
在这个 Jenkins 流水线示例中,我们看到按钮是绿色的。因此,流水线成功了。
运行 Jenkins 管道
点击 运行 运行 Jenkins 管道。它看起来会像这样:
在上面的 Jenkins 管道脚本示例中,我们演示了一个简单的“helloworld.java”程序。但在实时项目中,您将负责在 Jenkins 中创建和构建复杂的管道。请参阅下面的示例管道视图。
使用 Jenkins Pipeline 的最佳实践:
- 使用正版 Jenkins Pipeline
- 以代码形式开发您的管道
- 管道中的任何非设置工作都应在阶段块内进行。
- 管道中的任何实质工作都必须在节点块内执行。
- 不要在节点块内使用输入。
- 切勿使用 env 全局变量设置环境变量
- 将输入包装在超时中