设为首页 收藏本站
查看: 867|回复: 0

[经验分享] 使用CruiseControl搭建自己的持续集成环境

[复制链接]

尚未签到

发表于 2017-2-28 11:27:26 | 显示全部楼层 |阅读模式
  (本文为原创,转载请说明出处:http://www.cnblogs.com/xiaocheng)   
  在敏捷开发过程中我们会实施很多优秀实践,比如站立式会议、结对编程、持续集成等等。本文主要讲解如何运用CruiseControl搭建你的持续集成环境。
  一:CruiseControl介绍
  CruiseControl(有时我们简称CC)是使用java语言编写的一个持续集成工具,他有着良好的框架,所以你可以在他基础上二次开发成我们自己定制的持续集成工具。CruiseControl集成了很多第插件,比如:源码控制、邮件通知、实时消息通知等等。而且他提供了一个web界面使我们更加方便的查看构建项目的当前以及历史状态。虽然CruiseControl使用java语言编写,但他并不限制你只能构建JAVA项目,你可以通过ant等脚本构建各种语言的持续集成环境。
  工具的整体架构如下图:
DSC0000.jpg

  从上图可以看出,CC主要包括了三个组件:
  A、Build Loop组件:主要负责根据外部的xml配置,定时、周期性的根据外部SCM的状态启动构建任务,并将构建结果通过Email/IM/RSS等方式通知到相应的客户端。
  B、JSP的报告组件:提供了一个web页面供我们查看构建结果以及每次构建发布的工件。
  C、Dashboard组件:提供了一个可视化的界面,让我们可以清楚的看到各个项目的构建状态 。
  工具的官方网站:http://cruisecontrol.sourceforge.net/
  二:CruiseControl持续集成环境的配置安装
  第一步:
  A、从上面的官方网站下载最新的稳定版本,当前最新的稳定版本为2.8.2   
  B、下载JAVA安装包
  第二步:解压下载的工具包(由于CC是绿色版的,所以解压即可不需安装),并在你的环境变量中增加两个环境变量   
  A、JAVA_HOME设置为你的JAVA安装目录
  B、设置ANT_HOME为CC解压目录下的apache-ant-1.7.0目录,并且将“你的下载目录\cruisecontrol-bin-2.8.2\apache-ant-1.7.0\bin”加入你的path路径中
  (这样我们就可以在命令行直接调试ant脚本)
  第三步:直接运行CC解压目录下的cruisecontrol.bat即可
  第四步:在你的浏览器地址栏输入:http://localhost:8080/dashboard/tab/dashboard ,如果出现下面的界面表示安装成功
DSC0001.jpg

  第三:如何搭建自己的构建项目
  第一步:熟悉CC的目录结构   
DSC0002.jpg

  在上面粉红色的方框中,我们大部分时间只需要配置一下文件即可:
  1、confile.xml文件    -------所有项目的信息配置,包含了你的SCM以及发布信息等等
  2、cruisecontrol.bat -------启动CC工具
  3、apache-ant-1.7.0文件夹  -----这里存放了ant工具所有内容,包括lib
  4、artifacts文件夹               -----存放了每次构建发布的工件,以项目进行区分
  5、etc文件夹                      -----存放了工具的配置,包括jetty容器、数据库连接配置等
  6、lib文件夹                       -----存放了所有CC依赖的lib库
  7、log文件夹                      -----存放了所有日志信息
  8、projects文件夹              ------存放了你的构建项目的描述信息,构建自己的项目需要在这里面配置
  9、webapps文件夹             ------存放了CC的WEB部署,如果你想定制自己的界面,就需要在这里配置,如上图的TestAnalusis的Tab就是我定制的一个页面
  第二步:熟悉总的项目文件的配置config.xml
  第三步:熟悉每个项目的Build.xml的编译控制
  上面的第二步和第三步可以参加它的带有的帮助文件和工程实例connectfour,因为这里面的配置项,所以这里就不一一列举讲解。如果大家有什么疑问可以给我留言我们一起讨论。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-348388-1-1.html 上篇帖子: Maven 搭建环境(http://dearshor.javaeye.com/blog/272274) 下篇帖子: Myeclipse8.5GA优化笔记,附图
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表