持续集成工具CC的一些经验

简介:
CruiseControl(CC)是老牌的开源持续集成工具,支持众多的插件,文档也比较全,普通的持续集成应用使用CC是可以满足要求的,CC已经比较久没有更新了。
团队在选择CI工具时可以考虑使用新的CI工具:hudson 

比较常见的问题:

1.CruiseControl可以用来做什么语言的CI?
CC本身是用java编写的,对于java本身的支持也比较好,当然它可以做其他语言的ci工具,如:cpp, python等,cc基于ant做了很好的整合,本身的核心功能并不多,更多的都是插件完成。如果你想完

全抛开CC基于ant也可以搭建出一个自动构建服务器,只是没有前台UI。

2.与配置库的集成,常见的配置库软件(VSS, CVS, SVN, ClearCase)都有插件支持,svn是目前主流的代码配置管理系统
cc与svn的集成:
A. 在ci server上安装了svn客户端,在project下svn checkout代码

B. 配置cc project代码修改检测
<modificationset quietperiod="30">
<svn LocalWorkingCopy="projects/${project.name}/src"/>
</modificationset>
如果代码未变动,cc不会执行整个构建过程。

C. 代码更新有两种办法:
1)通过exec svn up实现代码更新
2)使用svnant

3.调用分布式的测试服务器脚本
cc对分布式的支持很复杂,建议直接使用ant-contrib,实现分布式服务器之间的调用
调用方:
<remoteant machine="1.2.3.4" port="17000">
<runtarget target="auto_test">
</runtarget>
</remoteant>
执行方:
<antserver port="17000" />
<target name="auto_test">
<echo message="auto_test running" />
</target>

4. 删除默认的Demo项目connectfour
*删除connectfour.ser
*删除projects/connectfour
*删除config.xml <project name="connectfour">节点
*删除logs/connectfour

5. 解决邮件中文乱码
<htmlemail charset="GB2312"

6. 邮件内容的定制
<htmlemail
css="webapps/cruisecontrol/css/cruisecontrol.css"
xsldir="webapps/cruisecontrol/xsl"
logdir="logs/${project.name}" 
主要是修改xsl文件,cc的日志是标准的xml文件,通过xsl转换为html。
其中修改比较多的是errors.xml,可以过滤掉一些不需要显示的message

7. 单元测试
单元测试实际上都是由ant的集成,java语言的支持最好,直接可用junit/junitreport
python可以用pyunit
<py-test>
<fileset dir="${python.src.dir}">
<include name="**/*_test.py"/>
</fileset>

</py-test>



本文转自 念槐聚 博客园博客,原文链接:http://www.cnblogs.com/haochuang/archive/2012/05/07/2487853.html,如需转载请自行联系原作者

相关文章
|
4月前
|
jenkins Java 持续交付
【项目集成工具】Jenkins
【项目集成工具】Jenkins
|
11月前
|
数据采集 存储 安全
「集成架构」ETL工具大比拼:Talend vs Pentaho
「集成架构」ETL工具大比拼:Talend vs Pentaho
|
25天前
|
缓存 Linux iOS开发
【C/C++ 集成内存调试、内存泄漏检测和性能分析的工具 Valgrind 】Linux 下 Valgrind 工具的全面使用指南
【C/C++ 集成内存调试、内存泄漏检测和性能分析的工具 Valgrind 】Linux 下 Valgrind 工具的全面使用指南
62 1
|
2月前
|
弹性计算 前端开发 Java
通义千问API:让大模型写代码和跑代码
基于前面三章的铺垫,本章我们将展示大模型Agent的强大能力。我们不仅要实现让大模型同时使用多种查询工具,还要实现让大模型能查询天气情况,最后让大模型自己写代码来查询天气情况。
59558 448
通义千问API:让大模型写代码和跑代码
|
2月前
|
监控 测试技术 API
自动化测试工具与电脑桌面监控软件的集成:Selenium与Python的无缝整合
在当今数字化时代,软件质量保证是每个软件开发团队都必须面对的重要挑战之一。自动化测试工具和电脑桌面监控软件的结合,为开发团队提供了一种有效的方式来确保软件的稳定性和性能。本文将介绍如何利用Python编程语言中的Selenium库,与桌面监控软件进行无缝整合,以实现对应用程序的自动化测试和桌面监控。
184 5
|
6月前
|
Web App开发 搜索推荐 NoSQL
如何搭建一个集成导航与在线工具的个性化浏览器私有书签(附详细搭建教程)
在这个信息爆炸的时代,我们都希望拥有一个能够轻松解决多端、多浏览器的收藏和笔记同步问题的神奇工具。Mtab书签正是为此而设计的顶级应用。它将基础导航、记事本、在线小工具和多端同步集于一身,为用户提供了更便利的网络浏览体验,并解决了多端同步的烦恼。
168 0
如何搭建一个集成导航与在线工具的个性化浏览器私有书签(附详细搭建教程)
|
2月前
|
小程序 物联网 API
社区每周丨API 集成工具文档更新及开发者日上海站即将举行(6.19-6.23)
社区每周丨API 集成工具文档更新及开发者日上海站即将举行(6.19-6.23)
35 0
|
2月前
|
小程序 IDE 定位技术
【社区每周】小程序支持预拉取地理位置;验收工具组件集成至“商家券”等产品文档(11月第五期)
【社区每周】小程序支持预拉取地理位置;验收工具组件集成至“商家券”等产品文档(11月第五期)
37 0
|
2月前
|
移动开发 小程序 数据管理
9月开发者日回顾|小程序跳转接口等多个JSAPI更新,能力集成提供场景化排查工具
9月开发者日回顾|小程序跳转接口等多个JSAPI更新,能力集成提供场景化排查工具
27 0
|
7月前
|
人工智能 API Docker
智能文档检索和简便集成的开源 AI 问答工具:Danswer
当你使用 Danswer 时,只需以自然的方式提出问题,就像与朋友交谈一样简单,它会自动搜索公司内部的文件和资料,然后给你一个可靠的答案,并附上来源。

热门文章

最新文章