CruiseControl.NET 的安装与配置
CC.NET 是 CruiseControl.NET 的简称,官方网站在这里。 官方的定义是自动连续集成服务, 使用Microsoft .NET Framework实现. 另外它还有Java的版本叫做CruiseControl。
1)CC.NET 单独是不起什么作用的,在部署CC.NET 之前,还需要安装版本控制服务,它支持下列表所示的代码控制,下面我们以Subversion为例来说明, 在另一部机器装上VisualSVN Service,机器名为greg-pc1, 本机安装TortoiseSVN客户端。
2)首先,确保你的电脑上已经安装了IIS(因为CC.NET会在IIS里面建立一个虚拟目录作为Web服务DashBoard)。在上面可以查看集成的详细信息。要安装这个模块之前必须配置好IIS, 下面以Win7下的IIS7.5为例来说明, IIS是Windows操作系统自带的组件。
如果在安装操作系统的时候没有安装IIS,请打开“控制面板”->“添加或删除程序”->“添加/删除Windows组件”->双击“Internet信息服务”-> 选择“World Wide Web 服务器 ”安装。 , 这里在”Web管理工具“的选项,要勾选"IIS元数据库和IIS6配置兼容性“,然后尝试在VS2010下新建一个Web应用,发布一下,如果能发布成功,才可以成功安装CC.NET。
3)下面是CC.NET的安装过程。
首先从这个目录下载最新版本的软件 http://sourceforge.net/projects/ccnet
一直点击Next,选择软件安装路径,等待软件安装完成,界面如下:
软件安装完成之后,在系统windows服务中将增加名为CruiseControl.Net Server的系统服务,如下:
命令行敲入Services.msc ,可以看到,CC服务为手动,初始未启动状态。
在【开始】-》【CruiseControl.NET】-》打开ccnet.config配置文件,开始配置,
或者打开C:\Program Files (x86)\CruiseControl.NET\server(即ccnet的安装路径),将ccnet.config文件写改如下:
1: <project name="NMBCommon" description="Project Config for NMBCommon">
2:
3:
4: <!--项目的WebDashboard地址,CruiseControl.NET包括二部分, 一是Server用来配置项目和监视文件修改,
5: 二是WebDashboard,是一个显示项目信息及编译信息的Website,该地址即编译后信息显示的网址,可以直接
6: 输入该网址来查看编译信息,ccnet是服务器的默认路径必须有,NMBCommon是项目名-->
7: <webURL>http://127.0.0.1/ccnet/ViewFarmReport.aspx</webURL>
8: <workingDirectory>E:\CCProject\SRC</workingDirectory>
9: <artifactDirectory>E:\CCProject\SRC</artifactDirectory>
10: <category>ISS</category>
11:
12: <!--构建触发条件-->
13: <triggers>
14: <!--定时触发,触发时间是晚上8:30, 构建条件是强制-->
15: <scheduleTrigger time="20:30" buildCondition="ForceBuild" >
16: <weekDays>
17: <!--每个星期的星期几执行-->
18: <weekDay>Monday</weekDay>
19: </weekDays>
20: </scheduleTrigger>
21: </triggers>
22:
23: <!--如果发现修改,延迟多久开始编译,下面是2秒-->
24: <modificationDelaySeconds>2</modificationDelaySeconds>
25:
26: <!--提取源代码控制节点,类型是SVN, 自动获取源码-->
27: <sourcecontrol type="svn" autoGetSource="true">
28: <!--SVN地址,这里注意只获取本解决方案的源码-->
29: <trunkUrl>https://greg-pc1/svn/SRC/trunk/NMBCommon</trunkUrl>
30: <!--工作目录也是限制在本解决方案的目录-->
31: <workingDirectory>E:\CCProject\SRC\NMBCommon</workingDirectory>
32: <!--SVN的可执行文件路径-->
33: <executable>C:\Program Files\TortoiseSVN\bin\svn.exe</executable>
34: <!--登陆用户密码-->
35: <username>user</username>
36: <password>pass</password>
37: </sourcecontrol>
38:
39:
40: <tasks>
41: <!--msbuild任务配置,用来编译项目-->
42: <msbuild>
43: <!--MSBuild.exe的路径-->
44: <executable>C:\Windows\Microsoft.NET\Framework\v3.5\MSBuild.exe</executable>
45: <!--从SVN迁出的源代码的存放位置,可以不配置,下面的即为默认值 -->
46: <workingDirectory>E:\CCProject\SRC\NMBCommon</workingDirectory>
47: <!--要编译的项目名称 一定要确定在SVN服务器中对应项目下要有这个sln文件否则会编译出错,导致无法加载svn的配置文件-->
48: <projectFile>NMBCommon.sln</projectFile>
49: <!-- MSBuild编译时的参数,具体参数信息可以查看MSDN上的说明-->
50: <buildArgs>/t:rebuild /v:quiet /noconlog /p:Configuration=Release </buildArgs>
51: <!--编译目标-->
52: <targets>rebuild</targets>
53: <!--超时时间-->
54: <timeout>900</timeout>
55: <!--指定日志记录模块-->
56: <logger>C:\Program Files (x86)\CruiseControl.NET\server\ThoughtWorks.CruiseControl.MsBuild.dll</logger>
57: </msbuild>
58: </tasks>
59:
60: <publishers>
61: <!--如果编译成功,那么下面的配置,会将源代码复制到指定目录HistoryVersion 下,名称为版本标识(自动增长,labeller配置)的子目录下-->
62: <buildpublisher>
63: <!--源代码路径-->
64: <sourceDir>E:\CCProject\SRC\NMBCommon</sourceDir>
65: <!--编译成功后保存源代码到该目录下名称为版本标示labeller的目录中-->
66: <publishDir>E:\CCProject\SRC\NMBCommon\HistoryVersion</publishDir>
67: </buildpublisher>
68:
69: <!--xml日志-->
70: <xmllogger />
71:
72: <!--显示历史修改记录列表, 在Web Dashboard中可以查看-->
73: <modificationHistory/>
74:
75: <!--所有编译信息的统计, 在Web Dashboard中可以查看-->
76: <statistics/>
77:
78: <artifactcleanup cleanUpMethod="KeepLastXBuilds" cleanUpValue="50" />
79: </publishers>
80:
81: <!--标示类型,有多种类型。下面为默认标示,作为每次编译时生成的日志文件的名称-->
82: <labeller type="defaultlabeller">
83: <!--标志的前缀-->
84: <prefix>NMBCommon-Build-</prefix>
85: <!--格式-->
86: <labelFormat>00000</labelFormat>
87: <!--就算编译失败,也要加1-->
88: <incrementOnFailure>true</incrementOnFailure>
89: </labeller>
90: </project>
编辑完配置,启动CC服务,打开浏览器地址http://localhost/ccnet/ViewFarmReport.aspx,就进入Dashboard
最新文章
- ubuntu系统虚拟机下共享文件夹
- CentOS6.5上Oracle11gR2静默安装
- setTimeout传递参数
- angular $emit发送 后退时$on多次接收
- caffe windows学习:第一个测试程序
- 网页地图map
- php使用第三方登录
- 一周学会Mootools 1.4中文教程:(4)类型
- hdu2412(树形dp)
- Django—入门
- org.apache.spark.rpc.RpcTimeout$$anonfun$1.applyOrElse
- Python PEP8 编码规范中文版
- centos 网卡配置
- 警察与小偷的实现之中的一个client与服务端通信
- tmux安装
- ZOJ 3469Food Delivery(区间DP)
- ultraedit开发使用技巧
- mac如何运行vue项目
- Problem X: 双层金字塔
- C# 二进制文件操作(内容搜索、数据截取)