搭建你的持续集成服务器 - CruiseControl step by step(1)

CruiseControl是CI服务器的老者,诞生已是多年,在许多方面,CruiseControl服务器已经成为持续集成实践的同义词。而现在,CruiseControl已发展成为一个家族式系统,包括CruiseControl.java、CruiseControl.net、CruiseControl.ruby等适应不同语言环境的实现,其强大的插件和扩展能力也是诸多同类系统无法比你的。而在这里,我只介绍该家族的本家CruiseControl.java,即CruiseControl。CruiseControl是一个不错的持续集成服务器,不过国内社区的普遍反应是:它的配置太麻烦,无从下手。从本篇文章开始,我将逐步介绍CruiseControl的环境搭建与配置,以及持续集成中的一些实践。我们将从最简单的使用方式(stand-alone)开始,以便您可以快速开始您的持续集成之旅,而不必面对“千奇百怪”的问题。
好!先让我们简单搭建个持续集成服务器再说吧


--------------------------------------------------------------------------------

一、我使用的CruiseControl版本

CruiseControl是一个java开源项目,我将以它最近的一个分支版本来介绍它的使用。CruiseControl最近发布的版本是V2.7.1。这个分支版本就是在V2.7.1基础之上。
这个分支版本包含一个Dashboard,可以方便地看到各项目的构建状态。
这个分支版本当然还支持多个Build Loop,你可以在多个机器上部署独立的Build Loop,从而建立你自己的Build Grid。
二、得到CruiseControl的分支版本

要得到这个分支版本,你可以使用subversion不用任何密码从CruiseControl的Repository中检出。命令如下:
svn checkout https://cruisecontrol.svn.sourceforge.net/svnroot/cruisecontrol/branches/cce/cruisecontrol/

三、构建CruiseControl

0. 你机器上至少要安装有JAVA 1.4,并在环境变量中设置有JAVA_HOME,并把java/bin加入到path中。CruiseControl自带了ANT,所以不用事先安装。


从源代码中构建CruiseControl
如果从源码中构建CruiseControl,要确保你的机器可以访问互联网。因为构建过程中要检查一些license。另外,最好有SVN 客户端软件,因为在构建时,它会用到javahl。
在刚刚checkout出来的CruiseControl目录下,有一个批处理文件,名为release.bat。运行这个批处理文件,你会在target目录下发现一个压缩文件,名这cruisecontrol-bin-2.7.2-dev.zip。将其解压到一个目录,我们这里解压到C盘根目录下。解压后,目录结构如下:

2. 直接使用已构建完成的CruiseControl
如果你不想做这一步,也可以在binaryrelease目录下发现解压后的文件,把它们拷贝到相应的目录下也可以。

四、运行CruiseControl

CruiseControl可以运行在多种应用服务器中,当然,它自己也捆绑了一个开源应用服务器,那就是Jetty 6。为了尽快建立我们的环境,我们这里暂时使用它自己捆绑的Jetty,快速开始我们的持续集成之旅。
直接运行CruiseControl目录下的CruiseControl.bat,它会自行启动Jetty6,当从Console中看到它启动完毕后,你就可以在浏览器中访问http://localhost:8080/dashboard,此时你会看到一个名为connectFour的示例项目在Dashboard上显示了。


(如果你足够快的话,你会发现Dashboard 上的小方块是从灰色变成深绿色的。为什么呢?我们以后再说。)
“绿色”表示该项目构建通过。如果要是有多个项目的话,应该看到多个小方块。

点击“Builds” Tab页,就到了 Builds 页。这一页会以列表的方式显示所有的项目。当前只有一个项目,所以在列表中只有一行,如下图所示:

在该页面上点击某个项目时,会打开Build Detail页,显示该项目最近一次Build的信息。页面右侧是该项目所有历史构建信息。你会发现,这时connectFour项目有两个构建历史版本,一个是刚刚构建完成的,另一个是两年前的构建。这些信息是来自于CruiseControl对该项目的日志文件。此时,点击这两个构建结果中的任何一个,都会打开该次构建的Build Detail页面,显示相关的构建历史信息。如下图所示:


我们将在下一篇文章中简要介绍CruiseControl的配置文件,为您加入自己的构建项目做准备
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值