文章目录
Jenkins 简介
Jenkins is a self-contained, open source automation server which can be used to automate all sorts of tasks such as building, testing, and deploying software. Jenkins can be installed through native system packages, Docker, or even run standalone by any machine with the Java Runtime Environment installed.
Jenkins是一个独立的开源自动化服务器,可以用来自动化,例如构建、测试和部署软件等各种任务。Jenkins可以通过本地系统包、Docker安装,甚至可以在安装Java运行时环境的机器上独立运行。
Jenkins is a continuous integration system which is very easy to setup and quickly comes into action. It has a nice dashboard. Jenkins can be downloaded from http://jenkins-ci.org. Jenkins comes with a set of plugins which can be enabled from the Jenkins dashboard itself.
Continuous Integration system are very important for any Software development environment. They are like running health stats of your various projects. Jenkins supports all major Source code Management tools like CVS, Subversion, Git. The builds can be configured and can run based on cron rules. Jenkins can automatically fetch the source code and than fire the builds. It has integrated support to Ant and Maven. With it's plugin based infrastructure it can handle various kinds of build system.
Some of the important tasks a Continuous Integration system (CI System) does:
Check out the source code from given Source Code Control Systems (SCM)
Build the artifacts based on provided build instructions.
Run the test cases to determine the sanity of build.
Archive the artifacts at a configured location.
Deploys the artifacts on servers.
Send status mails to various stakeholders
Maintain the metrics of builds along timeline.
And last but not the least, it will provide you with a sense of quality of software products on continuous basis.
持续集成系统(CI系统)的一些重要任务是:
从给定的源代码控制系统中查看源代码(SCM)
根据提供的构建指令构建工件。
运行测试用例来确定构建的完整性。
将工件归档到配置的位置。
在服务器上部署工件。
发送状态邮件到不同的涉众
在时间轴上维护构建的度量标准。
最后,它将为您提供持续的软件产品的质量意识。
Jenkins 历史
Jenkins的前身是Hudson (软件)项目。Hudson 2004年夏天始创于Sun Microsystems,2005年2月首次发布于java.net。[4]
2007年前后,Hudson被称为相对CruiseControl和其他开源的构建服务器(Build Server)更好的选择。[2]
[5]在2010年11月,关于由谁主导来Hudson[7]
,该项目的主要贡献者和Oracle之间展开谈判。尽管在多个方面达成一致,争议集中在是否把Hudson注册为商标[8]
,后来Oracle声明对Hudson的名字拥有权利,并在2010年12月申请将其注册为商标。[9]
因此,2011年1月11日,社区号召投票将项目名称从“Hudson”变更为“Jenkins”。[10]2011年2月1日,Oracle表示他们打算继续Hudson的开发,并认为Jenkins是Hudson的复刻,而非重命名。[13]
Jenkins和Hudson之后继续作为两个独立的项目,均声称对方是自己的复刻。截至2013年12月,在GitHub上的Jenkins组织有567项目成员及约1100公共库(public repository)[14]
,而Hudson组织有32个项目成员和17个公共库[15]
。在2011年,创建者川口耕介收到了O'Reilly开源奖,奖励其在Hudson/Jenkins项目上的工作。2014年,川口耕介成为CloudBees的首席技术官。
总结:Jenkins是一个开源项目,提供了一种易于使用的持续集成系统,使开发者从繁杂的集成中解脱出来,专注于更为重要的业务逻辑实现上。同时Jenkins能实现监控集成中存在的错误,提供详细的日志文件和提醒功能,还能用图表的形式形象地展示项目构建的趋势和稳定性。Jenkins的前身是Hudson,是一个可扩展的持续集成引擎。