安装顺序:IIS->.NET->others
首先安装IIS,用测试页面检测IIS无误后,安装VS2005,然后再安装cruisecontrol.net,从控制面板进入IIS控制界面。检查有无名为ccnet的虚拟目录,如果有正常,右键浏览,应该可以看到cruisecontrol.net的default页面。
然后安装CruiseControl.NET Tray【以下简称CCTray】来监视每次提交后的编译状态。
CCTray是一个工具,通过它可以强制执行编译,当然也可以自动编译,然后查看编译的结果。
在服务中找到【cruisecontrol.net server】这项,并启动他。
注意:如果想用浏览器查看cruisecontrol界面,必须关闭迅雷等占用8080端口的程序。
此时要配置CruiseControl.NET安装目录下(我的机器上是:C:/Program Files/CruiseControl.NET/server)下的ccnet.config文件,此文件是指定cruisecontrol.net 怎么运行的,文件中是有关于cruisecontrol.net 的配置。
注意:每次改动了ccnet.config文件的话,都要重启【cruisecontrol.net server】服务。
如果ccnet.config文件中有语法错误,【cruisecontrol.net server】服务启动不了。
至于这个语法吗,上网搜索一下吧,我也是摸索出来的
我写了一个最简单的:
<cruisecontrol>
<project name="Painter">
<triggers>
<intervalTrigger seconds="10"/>
</triggers>
<webURL>http://127.0.0.1/ccnet</webURL>
<artifactDirectory>f:</artifactDirectory>
<sourcecontrol type="svn" autoGetSource="true">
<executable>C:/Program Files/Subversion/bin/svn.exe</executable>
<username>liuli</username>
<password>liuli</password>
<trunkUrl>svn://192.168.1.100/reponsity/</trunkUrl>
<workingDirectory>d:/tmp/</workingDirectory>
</sourcecontrol>
<tasks>
<msbuild>
<executable>C:/windows/Microsoft.NET/Framework/v2.0.50727/MSBuild.exe</executable>
<workingDirectory>D:/tmp/build</workingDirectory>
<projectFile>Painter.sln</projectFile>
<buildArgs>/noconsolelogger /p:Configuration=Debug</buildArgs>
<timeout>15</timeout>
</msbuild>
</tasks>
</project>
</cruisecontrol>
说明:
<sourcecontrol></sourcecontrol>之间写的是从服务器上获得代码的过程。
<triggers> </triggers>是触发器。
这两个加起来的作用是:每个10秒中检测服务器上代码是否有改动,如果有,则更新文件到客户端。
<tasks>是任务
<msbuild>是要进行编译的任务。
但是在配置文件中可以用如下的方式:
1 查看配置
C:/Program Files/CruiseControl.NET/server/ 目录下的
ccnet.config //启动ccnet项目的文件路径
<cruisecontrol xmlns:cb="urn:ccnet.config.builder">
<cb:include href="代码服务器配置文件" xmlns:cb="urn:ccnet.config.builder"/>
<cb:include href="配置文件目录" xmlns:cb="urn:ccnet.config.builder"/>
</cruisecontrol>
代码服务器配置文件.xml
<cb:config-template xmlns:cb="urn:ccnet.config.builder">
<cb:define svn="运行bat文件"/>
<cb:define name="svncomm">
<executable>$(svn)</executable>
</cb:define>
<cb:define name="prjcomm">
<modificationDelaySeconds>2</modificationDelaySeconds>
<maxSourceControlRetries>5</maxSourceControlRetries>
</cb:define>
</cb:config-template>
配置文件目录.xml
<cb:config-template xmlns:cb="urn:ccnet.config.builder">
<cb:include href="test.xml" xmlns:cb="urn:ccnet.config.builder"/>
</cb:config-template>
test.xml:
<cb:config-template xmlns:cb="urn:ccnet.config.builder">
<project name="test">
<cb:prjcomm/>
<workingFile>下载本地目录</workingFile>
<triggers>
<intervalTrigger name="continuous" seconds="30" buildCondition="IfModificationExists" initialSeconds="30"/>
</triggers>
<sourcecontrol type="svn">
<sourceControls>
<svn>
<cb:svncomm/>
<trunkUrl>svn地址</trunkUrl>
</svn>
</sourceControls>
</sourcecontrol>
<initialState>Started</initialState>
<tasks type="multi">
<exec>
<executable>编译器</executable>
<buildArgs>"。。/.dsp" /MAKE "/p:Configuration=Win32 Unicode Release MinSize"</buildArgs>
<buildTimeoutSeconds>300</buildTimeoutSeconds>
<successExitCodes>0</successExitCodes>
</exec>
<exec executable="/xx.bat"></exec>
</tasks>
</project>
</cb:config-template>
修改svn地址后不可以下载本地原来占用的文件夹内