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

还是我的那位宝岛台湾的同事,他是一个很热爱钻研的人,在昨天的公司培训中讲了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/

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

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

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

 

服务器安装

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

Tools安装

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

客户端安装

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

安装一路下一步,即可。

 

服务器配置

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

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

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

 

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

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

 

 

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

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

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

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

在默认安装的路径下: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

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

MSTest 的位置

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

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

 

 

 

 

 

 

 

客户端配置

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

 

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

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

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

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

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

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

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

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

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

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

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

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

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

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

posted on 2010-02-26 09:58 冯瑞涛 阅读(...) 评论(...) 编辑 收藏