您的位置:首页 > 产品设计 > UI/UE

自动化持续集成编译 配置 CruiseControl.Net SVN

2010-02-26 09:58 543 查看
还是我的那位宝岛台湾的同事,他是一个很热爱钻研的人,在昨天的公司培训中讲了CruiseControl.Net 的配置,还发给了我一份说明,以前我有知道这个软件,但是没有亲手去配置过,今天有了时间就来亲手配置一下。

 

环境配置

Windows 7 + VSU 2010 + VisualSVN Server + CruiseControl.NET

 

环境安装

Windows、VS 2010 到微软官方下载试用版,安装

VisualSVN Server 是免费软件,可以参照之前我的博文。 EasyPHP 3 + Mantis 1.2 快速搭建安装免费开源的中文缺陷管理平台(图)

CruiseControl.NET 的下载地址:

http://sourceforge.net/projects/ccnet/files/

图中也显示了当前我使用的版本号是多少。





可以选择安装文件或者是Zip的包都可以,我这里下载的是安装文件,全部都下来,包括服务器,客户端和Tools

 

服务器安装





Tools安装





客户端安装



 

安装一路下一步,即可。

 

服务器配置

安装完成之后,可以在系统服务中发先多出来的服务





但是我们发现他是无法启动的,因为持续集成工具,是需要依靠其他工具的辅助来完成工作,需要配置才行

 

可以在IIS中发现多出了一个ccnet 应用程序(在IIS7 中已经不叫虚拟目录了)





 

 

环境配置是比较复杂的工作,对于SVN ,我们之前已经很熟悉了,对与CruiseControl.NET,主要是配置文件的学习

CC.Net 是有准备给我们工具的,看这里 CCValidator 但我发先这个工具只能用来验证,遗憾

CruiseControl.Net 工具,是用来启动CC.Net 服务的,这个程序和Windows Service 中的服务只能有一个启动,相当于两种启动方式,如果你在配置的时候,我更喜欢使用这个exe



 

在默认安装的路径下:C:\Program Files\CruiseControl.NET\Examples 已经有了一些配置好的示例文件,我们可以打开他们来学习如何配置CC.Net Server

server目录中名称为ccnet.config的文档是默认的CC.Net 配置文件,可以替换他

也可以在Server目录中建立一个config目录,把我们自定义好的配置文件放到里面,使用文字编辑器开启server目录中ccservice.exe.config文档。

在配置节<appSettings>下新增子配置节:

<add key="ccnet.config" value=".\config\ccnet.config"/>

这样可以自定义配置文件的位置,

 

配置文件

<project name = "CCNetTest">
<workingDirectory>C:\Continuous_Integration\src\CCNetTest\trunk\src\trunk\CCNETTest</workingDirectory>
<artifactDirectory>$(project_artifact_root_dir)\CCNetTest\Artifacts</artifactDirectory>
<webURL>$(project_url_root_dir)/CCNetTest/ViewProjectReport.aspx</webURL>
<category>GloTrader</category>

<!-- The minimum number of seconds allowed between the last check in and the start of a valid build. -->
<!--  For example if the modification delay is set to 10 seconds and the last checkin was 7 seconds ago the system will sleep for 3 seconds and check again. -->
<modificationDelaySeconds>10</modificationDelaySeconds>

<sourcecontrol type='svn'>
<trunkUrl>file:///C:/Repositories/CCNet</trunkUrl>   <!--在使用VisualSVN 的时候我只是配置成功了这种获取代码方式file-->
<executable>C:\Program Files\VisualSVN Server\bin\svn.exe</executable>
<username>$(svn_user)</username>
<password>$(svn_password)</password>
</sourcecontrol>



 

 

如果将cleanCopy设置为true,那么CC.Net每次获取最新文件的时候是否完全覆盖更新文件。

将autoGetSource设置为true,CC.Net会通过监视VSS中代码的版本变化,自动从版本管理器中获取源代码。Project是要使用的解决方案在vss中的路径

 

 

MSBuild 的位置

C:\Windows\Microsoft.NET\Framework\v4.0.30128





MSTest 的位置

C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE





 

 

 

 

 

 

 

客户端配置

开发人员在自己的计算机安装好CCTray,并完成相关配置之后,CCTray会自动追踪CruiseControl.Net持续集成的结果。例如,有位开发人员将开发完的源代码签入版本库,CruiseControl.Net运行自动集成,结果失败,表示此开发人员的代码无法与整体开发小组的代码整合。CCTray此时会呈现红色,并显示信息告诉开发人员代码无法集成。通过这样的运作方式,开发人员可以在第一时间发现并改正错误。

 

1. 启动CCTray之后,系统托盘中出现CCTray的绿色托盘图标。





2. 鼠标右键点击tray icon,出现如下的视窗之后,点选Settings…。





3. 参考下图。点选Build Projects标签,再点选页面中的Add按钮。

 



4. 参考下图。点选Add Server按钮。

 



5. 参考下图。在TextBox中填入CruiseControl.Net服务器的IP。



 

6. 参考下图。点选Available Projects区块中的Projects。

 



7. 之后我们就可以看到客户端中已经有了一个跟踪项目



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: