基于jenkins的持续集成使用指南Word格式文档下载.docx
- 文档编号:16351513
- 上传时间:2022-11-23
- 格式:DOCX
- 页数:11
- 大小:278KB
基于jenkins的持续集成使用指南Word格式文档下载.docx
《基于jenkins的持续集成使用指南Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《基于jenkins的持续集成使用指南Word格式文档下载.docx(11页珍藏版)》请在冰豆网上搜索。
而每次的集成都是通过自动化的构建来验证,包括自动编译、发布和测试,从而尽快地发现集成错误,让团队能够更快的开发内聚的软件。
持续集成的核心价值在于:
1.持续集成中的任何一个环节都是自动完成的,无需太多的人工干预,有利于减少重复过程以节省时间、费用和工作量;
2.持续集成保障了每个时间点上团队成员提交的代码是能成功集成的。
换言之,任何时间点都能第一时间发现软件的集成问题,使任意时间发布可部署的软件成为了可能;
3.持续集成还能利于软件本身的发展趋势,这点在需求不明确或是频繁性变更的情景中尤其重要,持续集成的质量能帮助团队进行有效决策,同时建立团队对开发产品的信心。
持续集成的原则
业界普遍认同的持续集成的原则包括:
1)需要版本控制软件保障团队成员提交的代码不会导致集成失败。
常用的版本控制软件有IBMRationalClearCase、CVS、Subversion等;
2)开发人员必须及时向版本控制库中提交代码,也必须经常性地从版本控制库中更新代码到本地;
3)需要有专门的集成服务器来执行集成构建。
根据项目的具体实际,集成构建可以被软件的修改来直接触发,也可以定时启动,如每半个小时构建一次;
4)必须保证构建的成功。
如果构建失败,修复构建过程中的错误是优先级最高的工作。
一旦修复,需要手动启动一次构建。
持续集成系统的组成
由此可见,一个完整的构建系统必须包括:
1.一个自动构建过程,包括自动编译、分发、部署和测试等。
2.一个代码存储库,即需要版本控制软件来保障代码的可维护性,同时作为构建过程的素材库。
3.一个持续集成服务器。
本文中介绍的Jenkins就是一个配置简单和使用方便的持续集成服务器。
Jenkins
Jenkins是一个开源项目,提供了一种易于使用的持续集成系统,使开发者从繁杂的集成中解脱出来,专注于更为重要的业务逻辑实现上。
同时Jenkins能实施监控集成中存在的错误,提供详细的日志文件和提醒功能,还能用图表的形式形象地展示项目构建的趋势和稳定性。
下面将介绍Jenkins的基本功能。
Jenkins的安装非常简单,只需要从Jenkins的主页上下载最新的jenkins.war文件然后运行java-jarjenkins.war。
同时,还可以点击Jenkins页面上的launch按钮完成下载和运行Jenkins。
图1.JenkinsLaunch按钮
启动Jenkins后,会有一个后台进程在命令行模式下运行。
此时在浏览器地址栏中打开http:
//localhost:
8080就可以看到Jenkins的页面了。
Jenkins的可贵之处在于具有非常高的可用性,从它的界面中能很轻松地完成各种配置,更多的配置和使用信息,可以在Jenkins的官方网站上查询。
图2.命令行模式下运行Jenkins
图3.Jenkins主界面
非常有趣的是,Jenkins还提供了非常丰富的插件支持,这使得Jenkins变得越来越强大。
我们可以方便的安装各种第三方插件,从而方便快捷的集成第三方的应用。
比如Jenkins提供了对于IBMRationalClearCase的插件支持。
图4.Jenkins可以集成ClearCase插件
此外,Jenkins提供了丰富的管理和配置的功能,包括系统配置、管理插件、查看系统信息、系统日志、节点管理、Jenkins命令行窗口、信息统计等功能。
试试看,您就会发现Jenkins非常好上手使用。
图5.Jenkins提供了丰富的管理功能
基于Jenkins快速搭建持续集成环境
正如前文中所描述的那样,一个持续集成环境需要包括三个方面要素:
代码存储库、构建过程和持续集成服务器。
对Jenkins有了初步了解后,我们通过一个实例来集中展示如何快速搭建一个简单的基于Jenkins的持续集成环境。
我们使用的代码存储库是IBMRationalClearCase。
Jenkins提供了对ClearCase的插件支持,它能方便地让我们连接到BaseClearCase或者UCMClearCase,使其成为JenkinsProject的代码控制器。
另外,这个插件是基于cleartool命令的,所以必须在Jenkins的持续集成服务器上安装ClearCase的客户端程序。
在Jenkins的插件管理界面中选择ClearCasePlugin,点击页面下方的Install按钮。
图6.选择ClearCase插件
在打开的页面中提示安装完成后,Jenkins需要重新启动来激活这个插件。
重新执行java-jarJenkins.war后,在Jenkins的页面中,我们就能看到ClearCaseplugin已经被安装到Jenkins了。
图7.ClearCase插件安装成功
类似IBMRationalClearCase,SVN(subversion)是目前比较流行的版本管理工具。
很多开源软件都是用SVN作为代码版本管理软件。
为了让实例更具有代表性,本文中我们使用SVN作为代码存储器。
接下来,我们开始新建一个Jenkins项目,由于我们需要连接SVN的代码存储器,我们选择Buildafree-stylesoftwareproject。
图8.新建JenkinsTestJob
然后我们就可以很方便的配置这个JenkinsTest项目了。
Jenkins很人性化的一点是在每个配置项的右侧都有一个帮助的图标,点击这个图标,Jenkins会告诉您如何配置这个配置项。
图9.配置JenkinsTest
根据实际的SVN服务器服务器信息配置SourceCodeManagement,这能让Jenkins知道如何从哪里获取最新的代码。
本例中假设Repository就在本地。
图10.配置连接到SVN服务器
根据开发需要,假设每一个小时我们需要重新构建一次。
选择Buildperiodically,在Schedule中填写0****。
第一个参数代表的是分钟minute,取值0~59;
第二个参数代表的是小时hour,取值0~23;
第三个参数代表的是天day,取值1~31;
第四个参数代表的是月month,取值1~12;
最后一个参数代表的是星期week,取值0~7,0和7都是表示星期天。
所以0****表示的就是每个小时的第0分钟执行一次构建。
图11.选择如何触发构建
接下来就是要添加build的步骤了。
Jenkins提供了四个选项供我们选择,可以根据需要执行或调用外部命令和脚本。
图12.四种buildstep供选择
在本例中,我们通过调用和执行Windowsbatchcommand,将SVNrepository中Java代码编译并生成Jar文件。
也可以根据项目的实际编写自己的shell脚本配置在这里。
图13.配置ExecuteWindowsbatchcommand
选择和配置其他的选项,比如邮件提醒,然后点击save保存。
图14.配置邮件提醒
接下来的每小时的第0分钟,JenkinsTestJob就会被构建。
我们可以在Jenkins中观察构建的进度和最终的状态——成功或者失败。
太阳代表之前的构建没有任何失败,蓝色的小球代表构建成功。
图15.JenkinsTest开始构建
同时我们可以点击JenkinsTest查看单次构建的Console的输出结果。
从中我们能看到构建的第一步是从SVN服务器上checkout代码,然后调用我们先前配置的Windowsbatchcommand。
图16.JenkinsTest构建的console输出
最后,我们可以看到build的最后结果Success,表明本次构建成功。
图17.构建成功的Console输出
接下来我们再次新建一个Jenkins的Job,用于将生成的build分发到不同的节点上。
这次buildtriggers我们选择Buildafterotherprojectsarebuilt,让这个Job在JenkinsTest成功build后触发。
这样一来就能达到我们自动build和自动分发的功能。
图18.新建Distributejob
不同的是,这次我们选择调用Ant脚本来完成分发的工作。
只需要将Ant脚本的XML的文件配置在Targets中供Jenkins调用。
图19.Distribute调用外部Ant脚本
然后我们就可以在Jenkins中观察构建的状态了。
一旦构建失败我们能看到相应的警示图标,同时,如果配置了邮件提醒,相关人员也会受到邮件。
记住我们先前所提醒的那样,分析和处理构建的失败是优先级最高的工作。
接下来,我们还可以加入更多的Jenkins项目来实现自动化测试等功能,让持续集成更方便有效地服务于项目开发。
图20.查看持续集成状态
结束语
本文简单介绍了持续集成的概念并着重介绍了如何基于Jenkins快速构建持续集成环境。
通过具体实例的描述,相信读者对Jenkins的基本功能和实现方法有个更清楚地认识和理解。
其实,Jenkins的功能远不至文中所述的这些,Jenkins还有详尽的日志处理和持续集成构建状态的分析等功能。
希望在进一步的学习和应用中与大家分享。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 jenkins 持续 集成 使用指南