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
CruiseControl.NET 的安装与配置的更多相关文章
- Maven的安装、配置及使用入门
Maven的安装.配置及使用入门 本书代码下载 大家可以从我的网站下载本书的代码:http://www.juvenxu.com/mvn-in-action/,也可以通过我的网站与我取得联系,欢迎大家与 ...
- JDK安装与配置
JDK安装与配置 一.下载 JDK是ORACLE提供免费下载使用的,官网地址:https://www.oracle.com/index.html 一般选择Java SE版本即可,企业版的选择Java ...
- Node.js 教程 01 - 简介、安装及配置
系列目录: Node.js 教程 01 - 简介.安装及配置 Node.js 教程 02 - 经典的Hello World Node.js 教程 03 - 创建HTTP服务器 Node.js 教程 0 ...
- 烂泥:redis3.2.3安装与配置
本文由ilanniweb提供友情赞助,首发于烂泥行天下 想要获得更多的文章,可以关注我的微信ilanniweb 前一段时间写过一篇codis集群的文章,写那篇文章主要是因为当时的项目不支持redis自 ...
- mysql源码包手动安装、配置以及测试(亲测可行)
笔记编者:小波/qq463431476博客首页:http://www.cnblogs.com/xiaobo-Linux/ 记下这篇mysql笔记,望日后有用! redhat6采用centos yum源 ...
- 环境搭建系列-系统安装之centos 6.5安装与配置
按照国际惯例,系列目录先奉上: 系列一:系统安装之centos 6.5安装与配置 系列二:准备工作之Java环境安装 系列三:数据为先之MySQL读写集群搭建 系列四:谈分布式之RabbitMQ集群搭 ...
- ZooKeeper安装与配置
一. 单机安装.配置: 1. 下载zookeeper二进制安装包下载地址:http://apache.dataguru.cn/zookeeper/zookeeper-3.4.3/zookeeper-3 ...
- mac 下JDK 与 tomcat 的安装与配置
一.Mac下JDK的安装 1.先检测Mac是否已经安装过JDK,在终端中输入java 或者 javac 显示说明,表明已经安装过JDK,JDK版本查询终端键入java -version,终端会返回JD ...
- 烂泥:zabbix3.0安装与配置
本文由ilanniweb提供友情赞助,首发于烂泥行天下 想要获得更多的文章,可以关注我的微信ilanniweb 这个月又快过完了,最近也比较忙,没时间写文章,今天挤点时间把zabbix3.0安装与配置 ...
随机推荐
- 一个带关闭按钮的Div窗口,很漂亮
<html><head><title>JS+CSS实现带关闭按钮的DIV弹出窗口</title><script> function lock ...
- auto类型推导
引言 auto : 类型推导. 在使用c++的时候会经常使用, 就像在考虑STL时迭代器类型, 写模板的时候使用auto能少写代码, 也能帮助我们避免一些隐患的细节. auto初始化 使用auto型别 ...
- exist not exist 分析
结果集1 结果集2: 最后连接条件 执行过程: 一行一行遍历结果集1的数据,然后结果集1中的连接条件执行子查询,如果有值返回那么在看是exist 还是not exist 在决定最后的结果集是否要要不 ...
- Django 初学
一.什么是web框架 框架,即framework ['fremwɝk],特指为解决一个开放性问题而设计的具有一定约束性的支撑结构,使用框架可以帮你快速开发特定的系统,简单地说,就是你用别人搭建好的舞 ...
- PAT 1034. Head of a Gang
1034. Head of a Gang (30) One way that the police finds the head of a gang is to check people's phon ...
- 【IntelliJ IDEA】idea上安装Translation插件后,需要AppKey才能生效的解决方案
使用idea安装的翻译插件translation,但是使用的时候并不友好 无奈,如果想使用翻译软件并且更方便的话,可以如下: 可以选择将translation进行卸载 清除缓存并进行重启 然后再启动之 ...
- [luoguP2342] 叠积木(并查集)
传送门 up[i] 表示一个木块上面有多少个 all[i] 表示整个连通块内有多少个 那么 一个木块下面的木块个数为 all[root[i]] - up[i] - 1 注意:up[i] 可以在 fin ...
- Java重载和覆盖
重写 Overriding 如果在子类中定义某方法与其父类有相同的名称和参数,我们说该方法被重写 (Overriding) 1.参数列表必须完全与被重写的方法相同,否则不能称其为重写而是重载. 2.返 ...
- 认识GIT之入门
前言 GIT是非常优秀的源代码版本管理工具,经过几年的发展,已经变得非常成熟以及流行,不同于其他的源代码管理系统,值得使用.GIT官网下载在线安装包,经常会中途退出,很有可能的原因是被墙了,所以建议使 ...
- Extjs学习笔记——Ext.data.JsonStore使用说明
Ext.data.JsonStore继承于Ext.data.Store.使得从远程JSON数据创建stores更为方便的简单辅助类. JsonStore合成了Ext.data.HttpProxy与Ex ...