CruiseControl.Net学习记录
2016-07-22 17:47
627 查看
一、下载
官网
二、安装
本文版本:1.8.5.0
运行安装程序,按照提示"下一步”,直到完成即可。
安装完毕之后,
生成一个windows服务,CruiseControl.NET Server ;
生成一个webdashboard网站(可自行在IIS中配置)。
三、启动
在服务管理控制台,启动服务CruiseControl.NET Server;也可以不启动windows服务,而采用ccnet.exe控制台程序,需以管理员身份运行。
在IIS中配置启动webdashboard站点。
四、配置
在server目录中的ccnet.config文件中进行项目配置。
github(git协议)
gitlab(ssh协议)
五、配置节点详解
六、需要注意的问题
1、ccnet的webdashboard站点基于.net2.0运行;
2、ccnet通过git控制源代码时,需要首先确保在cmd命令行中可以执行git的各个命令,即需要配置环境变量Path:安装目录\Git\cmd,如 E:\ProgramFiles\Git\cmd;
3、使用github时,在ccnet.config中sourcecontrol节点的repository需采用git协议,而不是http协议和ssh协议,并且git协议获取的文件是只读的(待确认);如
七、参考资料
使用CruiseControl.Net全面实现持续集成
.NET环境下每日集成系列
使用CruiseControl.NET进行自动化构建总结
每日集成CruiseControl.NET + SVN + Msbuild + NAnt
项目管理实践三、每日构建【Daily Build Using CruiseControl.NET and MSBuild】
官网
二、安装
本文版本:1.8.5.0
运行安装程序,按照提示"下一步”,直到完成即可。
安装完毕之后,
生成一个windows服务,CruiseControl.NET Server ;
生成一个webdashboard网站(可自行在IIS中配置)。
三、启动
在服务管理控制台,启动服务CruiseControl.NET Server;也可以不启动windows服务,而采用ccnet.exe控制台程序,需以管理员身份运行。
在IIS中配置启动webdashboard站点。
四、配置
在server目录中的ccnet.config文件中进行项目配置。
github(git协议)
<cruisecontrol xmlns:cb="urn:ccnet.config.builder"> <project name="ccnet.test" description="ccnet.test"> <!--项目编译状态信息的保存位置--> <state type="state" directory="E:\CCNet\State" /> <!--对这个项目的监控过程的日志记录目录--> <artifactDirectory>E:\CCNet\BuildArtifacts\ccnet.test</artifactDirectory> <!--源代码控制系统--> <sourcecontrol type="git"> <repository>git://github.com/shashoutian/ccnet.test.git</repository> <branch>master</branch> <executable>E:\ProgramFiles\Git\cmd\git.exe</executable> <committerName>shashoutian</committerName> <committerEMail>shashoutian2008@126.com</committerEMail> <workingDirectory>D:\Projects\GitProjects\ccnet.test</workingDirectory> </sourcecontrol> <!--配置具体执行的任务--> <tasks> <exec> <!-- if you want the task to fail, ping an unknown server --> <executable>ping.exe</executable> <buildArgs>localhost</buildArgs> <buildTimeoutSeconds>15</buildTimeoutSeconds> <description>Pinging a server</description> </exec> <!--msbuild任务配置,用来编译项目--> <msbuild> <!--MSBuild.exe的路径--> <executable>C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe</executable> <!--源代码的存放位置,不配置的时候为默认值 --> <workingDirectory>D:\Projects\GitProjects\ccnet.test\CCNet.Test</workingDirectory> <!--要编译的项目名称 --> <projectFile>CCNet.Test.sln</projectFile> <!-- MSBuild编译时的参数,具体参数信息可以查看MSDN上的说明--> <buildArgs>/p:VisualStudioVersion=14.0;Configuration=Debug;OutputPath=E:\Publish\ccnet.test /v:diag</buildArgs> <!--编译目标--> <targets>Build</targets> <!--超时时间--> <timeout>900</timeout> <!--日志记录模块--> <logger>E:\ProgramFiles\CCNet\CruiseControl.NET\server\ThoughtWorks.CruiseControl.MsBuild.dll</logger> </msbuild> <!--发布和部署配置--> <buildpublisher> <sourceDir>E:\Publish\ccnet.test\_PublishedWebsites\CCNet.Test</sourceDir> <publishDir>E:\Publish\ccnet.test\_PublishedWebsites\CCNet.Test</publishDir> <useLabelSubDirectory>false</useLabelSubDirectory> <alwaysPublish>false</alwaysPublish> </buildpublisher> </tasks> </project> </cruisecontrol>
gitlab(ssh协议)
<cruisecontrol xmlns:cb="urn:ccnet.config.builder"> <!-- This is your CruiseControl.NET Server Configuration file. Add your projects below! --> <project name="Disney" description="Disney ManageWeb"> <!--分类--> <category>后台系统</category> <!--日志目录--> <state type="state" directory="C:\CCNet\State" /> <artifactDirectory>C:\CCNet\BuildArtifacts\Disney</artifactDirectory> <!--源码控制--> <sourcecontrol type="git"> <repository>git@gitlab.mtime-dev.com:partner/disney-mw.git</repository> <branch>develop</branch> <executable>C:\Program Files (x86)\Git\cmd\git.exe</executable> <workingDirectory>D:\GitProjects\partner\abc</workingDirectory> </sourcecontrol> <!--任务--> <tasks> <exec> <!-- if you want the task to fail, ping an unknown server --> <executable>ping.exe</executable> <buildArgs>localhost</buildArgs> <buildTimeoutSeconds>15</buildTimeoutSeconds> <description>Pinging a server</description> </exec> <!--编译项目--> <msbuild> <executable>C:\Windows\Microsoft.NET\Framework64\v4.0.30319\MSBuild.exe</executable> <workingDirectory>D:\GitProjects\partner\abc\Disney.Manage.Web</workingDirectory> <projectFile>Disney.Manage.Web.csproj</projectFile> <logger>E:\ccnet\CruiseControl.NET\server\ThoughtWorks.CruiseControl.MSBuild.dll</logger> <targets>Build</targets> <timeout>900</timeout> <!--/p 最后一对属性值后面不需要分号(切记)--> <buildArgs>/p:OutputPath=E:\BuildOutput\disney;Configuration=Release;Platform=AnyCPU</buildArgs> </msbuild> <!--发布到站点--> <buildpublisher> <sourceDir>E:\BuildOutput\disney</sourceDir> <publishDir>E:\websites\disney\</publishDir> <useLabelSubDirectory>false</useLabelSubDirectory> </buildpublisher> </tasks> <publishers> <xmllogger /> <artifactcleanup cleanUpMethod="KeepLastXBuilds" cleanUpValue="50" /> </publishers> </project> </cruisecontrol>
五、配置节点详解
六、需要注意的问题
1、ccnet的webdashboard站点基于.net2.0运行;
2、ccnet通过git控制源代码时,需要首先确保在cmd命令行中可以执行git的各个命令,即需要配置环境变量Path:安装目录\Git\cmd,如 E:\ProgramFiles\Git\cmd;
3、使用github时,在ccnet.config中sourcecontrol节点的repository需采用git协议,而不是http协议和ssh协议,并且git协议获取的文件是只读的(待确认);如
<repository>git://github.com/shashoutian/ccnet.test.git</repository>
七、参考资料
使用CruiseControl.Net全面实现持续集成
.NET环境下每日集成系列
使用CruiseControl.NET进行自动化构建总结
每日集成CruiseControl.NET + SVN + Msbuild + NAnt
项目管理实践三、每日构建【Daily Build Using CruiseControl.NET and MSBuild】
相关文章推荐
- NBOJv2 1034 Salary Inequity(DFS序+线段树区间更新区间(最值)查询)
- 学习笔记- AVFoundation Programming Guide - Editing
- 详细解析BluetoothAdapter的详细api
- UIcollectionView的使用(首页的搭建4)
- easyui权限系统改造备忘
- Xilium.CefGlue CEF Chrome 自动上传文件不弹出对话框 CefDialogHandler
- UIcollectionView的使用(首页的搭建3)
- iOS 分类之UIButton+POImagePosition
- 高可用集群技术之heartbeat+NFS实现web服务高可用(文本方式配置接口--gui图形配置)
- Android进阶UI之BadgeView(数字提醒)
- Android UI(Button)详解
- 升级FlashBuilder 4.6的Air SDK
- UITABBAR特殊样式设置
- NSDictionary里的keysSortedByValueUsingSelector排序时使用
- request.setAttribute()、session.setAttribute()和request.getParameter()的联系与区别
- C#中ExecuteReader、ExecuteScalar、ExecuteNonQuery
- easyui tree树
- Untiy CurvedUI 的使用的bug修正
- Untiy CurvedUI 的使用的bug修正
- NHibernate-通过SQL-Query返回DataSet