Jenkins教程旨在为初学者和专业人士提供。我们的教程提供了Jenkins的所有基本和高级概念,如Jenkins安装、Jenkins配置、Jenkins流水线等。
Jenkins是一个用Java编程语言编写的开源自动化工具,允许持续集成。
Jenkins构建和测试我们的软件项目,不断地使开发人员更容易集成项目变更,并使用户更容易获取最新的构建。
Jenkins是一个用Java编程语言编写的开源自动化工具,允许持续集成。
Jenkins 构建 并 测试 我们的软件项目,不断地使开发人员更容易集成项目变更,并使用户更容易获取最新的构建。
它还允许我们通过与许多测试和部署技术集成来持续 交付 我们的软件。
Jenkins通过使用流水线以及自动化其他常规开发任务,为几乎任何语言和源代码库的组合提供了建立持续集成或持续交付环境的简单方法。
借助Jenkins的帮助,组织可以通过自动化加快软件开发过程。Jenkins提供各种开发生命周期的流程,包括构建、文档、测试、打包、分阶段部署、静态分析等。
Jenkins通过插件实现CI(持续集成)。插件用于允许各种DevOps阶段的集成。如果您想要集成特定工具,您必须安装该工具的插件。例如:Maven 2项目、Git、HTML发布器、Amazon EC2等。
例如: 如果任何组织正在开发一个项目,Jenkins将不断测试您的项目构建并在开发的早期阶段显示错误。
Jenkins可能执行的步骤例如:
工作流程:
Kohsuke Kawaguchi是一位在SUN Microsystems工作的Java开发人员,他厌倦了不断构建代码和修复错误。在2004年,他创建了一个名为 Hudson 的自动化服务器,用于自动化构建和测试任务。
2011年,Sun Microsystems的所有者Oracle与Hudson开源社区产生了争议,因此他们分叉了Hudson并将其更名为 Jenkins 。
Hudson和Jenkins继续独立运行。但在短时间内,Jenkins吸引了很多贡献者和项目,而Hudson仅保留了32个项目。随着时间的推移,Jenkins变得更加流行,而Hudson不再维护。
持续集成(CI)是一种开发实践,开发人员需要定期将更改提交到共享的代码库中。每次提交在代码库中被构建。这使得开发团队能够及早发现问题。
持续集成要求开发人员进行定期构建。通常的做法是每次提交代码时都会触发一次构建。
让我们考虑一个场景,应用程序的完整源代码被构建并部署到测试服务器上进行测试。这听起来像是一个完美的开发软件的方式,但这个过程有很多问题。
从上述问题可以明显看出,不仅软件交付的过程变慢,软件质量也下降。这导致客户不满意。
为了解决这样的问题,需要一个系统,开发人员可以持续地触发每一次对源代码的更改进行构建和测试。
这就是持续集成(CI)的全部内容。Jenkins是最成熟的持续集成工具,让我们看看Jenkins是如何克服上述缺点的。
让我们看一下Jenkins的持续集成的常见流程图:
让我们看看Jenkins如何工作 。上图代表以下功能:
优点:
缺点:
Jenkins采用主从架构来管理分布式构建。在这种架构中,主节点和从节点通过TCP/IP协议进行通信。
Jenkins架构包含两个组件:
Jenkins主服务器是Jenkins的主要服务器。它是一个由war文件驱动的网页仪表板。默认情况下,它运行在8080端口。通过仪表板,我们可以配置工作/项目,但构建是在节点/从属中进行的。默认情况下,一个节点(从属)被配置并在Jenkins服务器上运行。我们可以使用IP地址、用户名和密码使用ssh、jnlp或webstart方法添加更多节点。
服务器或主服务器的工作是处理:
Jenkins从属用于执行主服务器分派的构建工作。我们可以将一个项目配置为始终在特定的从属机器上运行,或者在特定类型的从属机器上运行,或者简单地让Jenkins选择下一个可用的从属/节点。
正如我们所知,Jenkins是使用Java开发的,是与平台无关的,因此Jenkins的主服务器和从属/节点可以在任何服务器上配置,包括Linux、Windows和Mac。
上面的图表是不言自明的。它由一个负责管理三个Jenkins Slaves的Jenkins Master组成。
在学习Jenkins之前,您应该对测试和Java有基本的了解。
我们的Jenkins教程旨在帮助初学者和专业人士。
我们保证您在本Jenkins教程中不会遇到任何问题。但如果有任何错误,请在联系表单中提出问题。
本文链接:http://so.lmcjl.com/news/287/