【注】本文译自:
https://www.edureka.co/blog/j…
本文将重点介绍 Jenkins 架构和 Jenkins 构建管道,并向您展现如何在 Jenkins 中创立一个构建。
当初是理解 Jenkins 架构的正确机会。
Jenkins 架构
让咱们批改一下我在上一个博客中向您解释的独立 Jenkins 架构,下图描述了雷同的架构。
单台 Jenkins 服务器不足以满足某些要求,例如:
- 有时您可能须要几个不同的环境来测试您的构建。单个 Jenkins 服务器无奈实现此操作。
-
如果定期构建更大、更重的我的项目,则单个 Jenkins 服务器将无奈简略地解决整个负载。
为了满足上述需要,引入了 Jenkins 分布式架构。Jenkins 分布式架构
Jenkins 应用主从架构治理分布式构建。在这种架构中,主站和从站通过 TCP / IP 协定进行通信。
Jenkins 主节点
您的次要 Jenkins 服务器是主节点。主节点的工作是解决:
- 调度构建作业。
- 将构建分派给理论执行的从节点。
- 监督从节点(可能依据须要使它们联机和脱机)。
- 记录并显示构建后果。
-
Jenkins 的主节点也能够间接执行构建作业。
Jenkins 从节点
从节点是在近程计算机上运行的 Java 可执行文件。以下是 Jenkins 从节点的特点:
- 接管来自 Jenkins 主接点的申请。
- 从节点能够在各种操作系统上运行。
- 从节点的工作就是依照命令执行,包含执行主节点调配的构建作业。
- 您能够将我的项目配置为始终在特定的从节点或特定类型的从节点上运行,或者仅让 Jenkins 抉择下一个可用的从节点。
下图是不言自明的。它由一个 Jenkins 主节点治理三个 Jenkins 从节点。
当初,让咱们看一个示例,其中 Jenkins 用于在不同的环境中进行测试,例如:Ubuntu、MAC、Windows 等。
如下图所示:
上图中执行以下性能: - Jenkins 会定期检查 Git 存储库中是否有任何源代码更改。
- 每个构建都须要不同的测试环境,这对于单个 Jenkins 服务器是不可能的。为了在不同的环境中执行测试,Jenkins 应用了各种从节点,如图所示。
-
Jenkins 主节点要求这些从节点执行测试并生成测试报告。
Jenkins 构建管道
它用于理解 Jenkins 以后正在执行的工作。通常,几位开发人员会同时进行几项不同的更改,因而理解哪些更改正在测试中,哪些更改正在排队中或哪些构建已损坏是很有用的。这是管道呈现的中央。Jenkins 管道为您提供了测试范畴的概述。在构建管道中,整个构建被细分为多个局部,例如单元测试、验收测试、打包、报告和部署阶段。管道阶段能够串行或并行执行,如果一个阶段胜利,它将主动移至下一个阶段(因而具备“管道”名称的相关性)。下图显示了多个构建管道的外观。
心愿你曾经了解了实践概念。当初,让咱们来体验一下入手的乐趣。
我将在 Jenkins 创立一个新作业,这是一个 自由式我的项目。然而,还有 3 个可用选项。让咱们看一下 Jenkins 中可用的构建作业的类型。自由式我的项目:
自由式构建作业是通用构建作业,它提供了最大的灵活性。自由式构建作业是最灵便和可配置的选项,可用于任何类型的我的项目。设置绝对简略,咱们在此处配置的许多选项也呈现在其余构建作业中。
多配置作业:
“多配置我的项目”(也称为“矩阵我的项目”)容许您在不同的环境上运行雷同的构建作业。它用于在不同环境、不同数据库甚至不同构建机器上测试应用程序。
监督内部作业:
通过“监督内部作业”构建作业,您能够关注非交互式流程,例如 cron 作业。
Maven 我的项目:
“maven2/3 我的项目”是专门适应 Maven 我的项目的构建工作。Jenkins 了解 Maven pom 文件和我的项目构造,并且能够应用从 pom 文件中收集的信息来缩小设置我的项目所需的工作。
应用 Jenkins 创立一个构建
第 1 步:在 Jenkins 界面主页中,抉择 New Item。
第 2 步:输出名称并抉择 Freestyle project。
第 3 步: 在下一页中,您能够指定作业配置。您会很快发现,创立新我的项目时有许多可用设置。在这个配置页面上,您还能够抉择增加构建步骤来执行额定的操作,例如运行脚本。我将执行一个 shell 脚本。
这将为您提供一个文本框,您能够在其中增加所需的任何命令。您能够应用脚本来运行各种工作,例如服务器保护、版本控制、读取零碎设置等。我将应用它来运行简略的脚本。
第 4 步:保留我的项目,您将进入我的项目概述页面。在这里,您能够查看无关我的项目的信息,包含其构建历史。
第 5 步:点击左侧的 立刻构建 开始构建。
第 6 步:要查看更多信息,请在构建历史记录区域中单击该构建,随后您将进入带有构建信息概述的页面。
第 7 步:控制台输入 链接页面对于具体查看作业后果特地有用。
第 8 步:如果您回到 Jenkins 主页面,您将看到所有我的项目的概述及其信息,包含状态。
生成状态通过两种形式示意,一种是天气图标,另一种是黑白球。天气图标特地有用,因为它能够在一张图像中显示多个版本的记录。
如上图所示,太阳代表着我的所有建造都是胜利的。球的色彩为咱们提供了该特定构建的状态,在上图中,球的色彩为蓝色,这示意该特定构建胜利了。