CCNET+MSBuild+SVN实现每日构建
最近开始将源代码迁移到SVN,于是便考虑到如何从SVN定期获取源码,自动编译并部署以减轻工作量并提高工作效率。通过多方搜集资料并进行研究,基本实现了这个功能。对于每日构建的概念就不具体展开了,可以在各大论坛找到答案。这篇文章主要给大家介绍下CCNET(CruiseControl.NET)的安装配置过程以及针对AOS项目的构建全过程。还有很多问题点没有深入研究,欢迎大家跟帖讨论。
CCNET主要包括两部分,一是Server用来配置项目和监视文件修改,二是WebDashboard,是显示项目信息及编译信息的WebSite。我们每次提交代码到SVN服务器后CCNET会自动从SVN服务器上获取最新代码并调用MSBuild进行自动编译。
安装前确保已经安装下列软件:
1.源代码管理工具(本文以SVN为例)
2.Web服务组件IIS
3..NET Framework2.0或更高版本
CCNET安装步骤如下:1.安装CruiseControl.NET-1.8.2.0-Setup.exe CCNET服务端。
2.安装完成后会出现此目录:,网上会说在IIS的虚拟目录下出现名为ccnet的虚拟目录。反正我的没有,没关系,手动添加一个名为ccnet的虚拟目录,物理路径就是..\CruiseControl.NET\webdashboard,端口8080,开启服务CruiseControl.NET Server,点击浏览可正常显示就OK了。
3.安装CruiseControl.NET-CCTray-1.8.2.0-Setup.exe CCNET客户端,在步骤2的网页左侧即可下载。
4.找到Server文件夹下的ccnet.config文件进行配置,整个流程都会读取这个文件中的配置信息。每个构建项目都包含触发器(triggers)、源码管理器(sourcecontrol)、构建任务(tasks)、部署发布(publishers)等,还可以配置多个project。这是我成功配置的文件,大家可以参考下:
5.这是可以运行CCNET客户端CCTray了。File->Settings->Build Projects->Add->Add Server->Connecting directly using .NET remoting->OK。这时在右边可用工程列表中将会出现ccnet.config中配置的工程名称,选中后一路点击OK即可完成配置操作。确保CCNET服务开启后,点击右下角的Start Project,CCNET将开始工作。
6.当编译后右下角出现这个图标证明编译成功。
由于时间比较仓促,目前只是实现了从SVN获取最新代码,进行自动编译并将站点拷贝到发布目录下这些基本功能。还有一些功能,如自动部署、脚本执行、邮件通知运行结果等操作并没有深入展开。如果大家有更好的意见或建议,欢迎拍砖进行讨论。
CCNET+MSBuild+SVN实现每日构建的更多相关文章
- CCNET+MSBuild+SVN实时构建的优化总结
本文不是介绍如何使用CCNET+MSBuild+SVN构建自动编译系统,相关的内容可以从很多地方获取,可以再园子里搜一下. 随着我们的SVN库日益壮大,容量达到10G,几十G 甚至更大时,我们发现自动 ...
- 每日构建【Daily Build Using CruiseControl.NET and MSBuild】(转载)
在上一篇项目 管理实践教程二.源代码控制[Source Control Using VisualSVN Server and TortoiseSVN]中 我们已经讲解了如何使用TortoiseSVN和 ...
- 项目管理实践【三】每日构建【Daily Build Using CruiseControl.NET and MSBuild】
在上一篇项目管理实践教程二.源代码控制[Source Control Using VisualSVN Server and TortoiseSVN]中我们已经讲解了如何使用TortoiseSVN和Vi ...
- 在.NET 环境中实现每日构建(Daily Build)--ccnet,MSBuild篇(转载)
每日构建,对我们团队来说一个全新的概念.随着项目开发的进展,在开发过 程需要及时反馈一些BUG和功能要求的处理情况.而在这种情况下每天或隔一段时间Build一个版本,工作量还是比较大的,所以就特别有必 ...
- 使用Flashbuilder/Flashbuilder-plugins搭建Flex工程每日构建(自动化构建)的方法
前段时间研究flex工程自动编译的时候,遇到了阻碍,就放下了,直到今天每日构建的问题又一次给项目组带来了麻烦,于是我彻底愤怒了. 最后,我的怒火没有白费,写出来以发泄情绪. [基本原理]: adobe ...
- Jenkins+MSbuild+SVN实现快速搭建.net持续集成环境(构建、编辑、部署到服务器)
Jenkins是一个可扩展的持续集成引擎,Jenkins非常易于安装和配置,简单易用,下面开始搭建.net持续集成环境 Jenkins和SVN安装这里就不介绍了 一.准备工作 1.Jenkins中系统 ...
- Jenkins配置MSBuild实现自动部署(MSBuild+SVN/Subversion+FTP+BAT)
所要用到的主要插件: [MSBuild Plugin] 具体操作: 1.配置MSBuild的版本 [系统管理]->[Global Tool Configuration]->[MSBuild ...
- Windows Server配置Jenkins,实现监测SVN提交自动构建.net4.5的项目
1,持续集成 概念:http://baike.baidu.com/view/5253255.htm,对于大多数人而言,自动构建/自动测试/自动部署,已经很发挥它的价值了.选择上: 推荐jenkins, ...
- Jenkins+MSbuild+SVN实现dotnet持续集成 快速搭建持续集成环境
Jenkins是一个可扩展的持续集成引擎,Jenkins非常易于安装和配置,简单易用,下面开始搭建dotnet持续集成环境 一.准备工作 1.系统管理-->管理插件-->可选插件中找到MS ...
随机推荐
- [WinApi] C#获取其他窗口文本框内容(转)
声明部分: const int WM_GETTEXT = 0x000D; const int WM_GETTEXTLENGTH = 0x000E; [DllImport("user32.dl ...
- iOS一些编译运行问题
1.在运行工程时,出现错误如下所示: Undefined symbols for architecture x86_64: "_OBJC_CLASS_$_XXXXX", refer ...
- mysql 主主互备
双机热备的概念简单说一下,就是要保持两个数据库的状态自动同步.对任何一个数据库的操作都自动应用到另外一个数据库,始终保持两个数据库数据一致. 这样做的好处多. 1. 可以做灾备,其中一个坏了可以切换到 ...
- Java实现MySQL数据库备份(一)
下班了,利用闲暇时间总结一下如何使用Java语言实现MySQL数据库备份: import java.io.BufferedReader; import java.io.File; import jav ...
- 浏览器IE与非IE区分
1. window.VBArray IE自带 if(window.VBArray) {console.log("IE 浏览器");} else{console.log(" ...
- [计算机故障]windows8+IE11显示无法登陆网页
同事的一款SURFACE,跑的WINDOWS 8.1.最近发现从开始菜单里的win8.1的浏览器可以上网,但是通过任务栏的快捷方式,又上不了网.尝试重置了IE11,安装了Google Chrome.但 ...
- IP路由选择
当一个ip数据包准备好了,它是如何到达目标主机的? ?首先这个ip数据报文的生命周期即ttl值是否为0了,如果是0就丢弃了 ?搜索路由表中有没有完全匹配的主机地址 ?匹配主机失败后,搜索路由表中同子网 ...
- [css 揭秘]-css coding tips
css 揭秘之css coding tips demo(1) html 代码: <body> <section> <div class="demo1" ...
- Bypass WAF Cookbook
PS.之前一直想把零零碎碎的知识整理下来,作为知识沉淀下来,正好借着wooyun峰会的机会将之前的流程又梳理了一遍,于是就有了下文.也希望整理的内容能给甲方工作者或则白帽子带来一些收获. 0x00 概 ...
- sql存储过程中加引号
ALTER PROCEDURE [dbo].[SaveTerminaInfo] @TerminaNo NVARCHAR(50), @Name NVARCHAR(50), @Value NVARCHAR ...