基于Jenkins 搭建持续集成环境

本篇为入门基础篇,因此宅鸟引用IBM developerWorks(在此感谢IBM软件工程师 刘华婷)上的博文让你们快速了解jenkins. 好了介绍概念:java


持续集成概述git

什么是持续集成api

随着软件开发复杂度的不断提升,团队开发成员间如何更好的协同工做以确保软件开发的质量已经慢慢成为开发过程当中不可回避的问题。尤为是近年来浏览器

敏捷开发在软件领域愈来愈火,如何能再不间断变化的需求中快熟适应和保证软件的质量显得尤为的重要.bash


持续集成正式针对这一类问题的一种软件开发实践。它倡导团队开发成员必须常常集成他们的工做,甚至天天均可能发生屡次集成。而每次的集成都是服务器

经过自动化的构建来验证,包括自动编译、发布和测试,从而尽快的发现集成错误,让团队能更快的开发内聚的软件。ide


持续集成的核心价值在于:测试

一、持续集成中的任何一个环节都是自动完成的,无需太多人工干预,有利于减小重复过程以节省时间、费用和工做量;网站

二、持续集成保障每一个时间点上团队成员提交的代码是能成功集成的。换言之,任什么时候间点都能第一时间发现软件的集成问题,使任意时间发布可部署ui

软件成为可能;

三、持续集成还能利于软件自己的发展趋势,这点在需求不明确或是频繁性变动的情景中尤为重要,持续集成的质量可以帮助团队进行有效决策,同时

简历团队对开发产品的信心。


持续集成的原则

业界广泛认同的持续集成的原则包括:

一、须要版本控制软件保障团队成员提交的代码不会致使集成失败。经常使用的版本控制软件有cvs,subversion,git,sourcesafe等;

二、开发人员须及时向版本控制库中提交代码,也需常常性的从版本控制库中更新代码到本地;

三、须要有专门的集成服务器来执行集成构建。根据项目的具体实际,集成构建能够被软件的修改来直接触发,也能够定时启动,

如每半小时构建一次;

四、必须保证构建的成功。若是构建失败,修复构建过程当中的错误是优先级最高的工做。一旦修复,需手动启动一次构建。


持续集成系统的组成

因而可知,一个完整的构建系统必须包括:

一、一个自动构建过程,包括自动编译、分发、部署和测试等。

二、一个代码库,即须要版本控制软件来保障代码的可维护性,同时做为构建过程的素材库。

三、一个持续集成服务器。即将介绍的jenkins就是一个配置简单和使用方便的持续集成服务器。



Jenkins 简介

Jenkins是一个开源项目,提供了一种易于使用的持续集成系统,使开发者从繁杂的集成中解脱出来,专一于更重要的业务逻辑实现上。同时Jenkins能

实施监控集成中存在的错误,提供详细的日志文件和提醒功能,还能用图表的形式形象的展现项目构建的趋势和稳定性。下面将介绍Jenkins的基本功能。


Jenkins的安装很是简单

服务器环境: Ubuntu 12.04.1 LTS

安装jenkins

wget -q -O - http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key | sudo apt-key add -
sudo sh -c 'echo deb http://pkg.jenkins-ci.org/debian binary/ > /etc/apt/sources.list.d/jenkins.list'
sudo apt-get update
sudo apt-get install jenkins

启动中止jenkins

sudo /etc/init.d/jenkins start
sudo /etc/init.d/jenkins stop


Jenkins home: /var/lib/jenkins

log路径/var/log/jenkins/jenkins.log


152151169.jpg


能够看到Jenkins默认使用的是:8080端口

启动Jenkins后,咱们看到一个后台进程在命令行模式下运行。此时在浏览器地址栏中打开 http://serverip:8080 就能够看到Jenkins的页面了

Jenkins的难得之处在于具备很是搞的可用性,从它的界面中能轻松地完成各类配置,更多的配置和使用信息,能够在Jenkins的官方网站上查询。

Jenkins的主界面是:

153121547.jpg

Jenkins提供了很是丰富的插件支持,使得Jenkins变得愈来愈强大。咱们能够方便的安装各类第三方插件,从而方便快捷的集成第三方的应用。

好比Jenkins提供了对于IBM Rational ClearCase的插件支持。

154425563.jpg此外,Jenkins还提供了强大的的管理和配置功能,包括系统配置、管理插件、查看系统信息、系统日志、节点管理、Jenkins命令行窗口、信息统计等功能。

试试看,你就会发现Jenkins很是好用上手。

155120251.jpg

基于Jenkins快速搭建持续集成环境

正如前面所述,一个持续集成环境须要包括三个方面的要素:代码库、构建过程和持续集成服务器。对于Jenkins有初步了解后,咱们经过一个实例来集中

展现如何快速搭建一个简单的基于Jenkins的持续集成环境。


咱们使用Git做为版本控制库,Jenkins默认状况下是没有安装Git的.咱们须要到插件管理界面中选中Git,而后点击安装从新启动来激活这个插件。安装成功

后,能够在已安装选项卡上看到如下信息。


170254208.jpg


接下来,咱们开始新建一个Jenkins项目,咱们选择 "构建一个自由风格的软件项目"

170744280.jpg而后咱们能够很方便的配置个JenkinsTest项目了。Jenkins很任性的一点是在每一个配置的右侧都有一个帮助的图标,点击图标Jenkins会告诉你

如何配置这个选项。


个人Git代码库地址是:/home/jenkins/api.git

171703107.jpg


根据开发须要,设置分钟咱们须要构建一次。选择 Build periodically,在日程表中填写 * * * * *

第一个参数表明的是分钟 minute,取值 0~59;

第二个参数表明的是小时 hour,取值 0~23;

第三个参数表明的是天 day,取值 1~31;

第四个参数表明的是月 month,取值 1~12;

最后一个参数表明的是星期 week,取值 0~7,0 和 7 都是表示星期天。

因此 *  * * * * 表示的就是每分钟执行一次构建。


在"增长构建步骤"选择 Execute Shell

172215181.jpg

选择和配置其余的选项,好比邮件提醒,而后点击 save 保存。

172419456.jpg

接下来每分钟,jenkinsTest就会构建一次。咱们能够在Jenkins中观察构建进度和最终的状态 成功或失败。太阳表示以前的构建没有任何失败,

蓝色的小球表示构建成功。

172953501.jpg

同时咱们能够点击JenkinsTest查看单词构建的Console的输出结果。从中咱们能够看到构建的第一步是从git服务器上checkout代码而后调用咱们配置的命令

173358573.jpg


173456411.jpg



咱们能够看没分钟构建的列表。咱们模拟一次构建失败的状况,咱们把git版本库地址/home/jenkins/api.git的第一个"/"去掉后为:home/jenkins/api.git

再看构建过程会发生什么...


174012491.jpg


JenkinsTest构建发生了错误.查看详细信息以下:提示找不到版本库

174155981.jpg


查看一下邮件:


174346974.jpg


174507279.jpg


而后咱们就能够在 Jenkins 中观察构建的状态了。一旦构建失败咱们能看到相应的警示图标,同时,若是配置了邮件提醒,相关人员也会受到邮件。记住咱们先前所提醒的那样,

分析和处理构建的失败是优先级最高的工做。接下来,咱们还能够加入更多的 Jenkins 项目来实现自动化测试等功能,让持续集成更方便有效地服务于项目开发。

本次分享到此结束,谢谢耐心观看。

下次博文 宅鸟将带零你们了解jenkins的自动测试自动发布功能

相关文章
相关标签/搜索