一点不难配置的CruiseControl持续集成

发表于:2008-5-05 12:10

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:未知    来源:网络转载

分享:

        江湖上口口相传CruiseControl很难配置,很不好用。

    但其实,你很难说下面这段东西复杂吧,但这个config.xml 就是CC的全部配置了。

<cruisecontrol>
    <project name="lh_erp" buildafterfailed="flase">
    <modificationset >
         <cvs localworkingcopy="E:/lh_erp/" />
    </modificationset>
    <schedule interval="1800">
         <ant buildfile="E:/lh_erp/lh_erp.xml" target="all"/>
     </schedule>
    <log dir="logs/"/>
    <publishers>
         <currentbuildstatuspublisher file="logs/buildstatus.txt"/>
     </publishers>
   </project>
 </cruisecontrol>

    config.xml 简单解释

    节点<project>: 表明CC支持多个Project。
    
    节点<modificationset >:CC能在侦测到CVS有动静之后才进行动作。如果无论如何每天都要集成一次的,可以把cvs子节点换成<alwaysbuild/>

    节点<schedule> : interval="1800"表示半小时醒来一次执行它的子节点

    节点<ant> : CC主要靠Ant执行动作,除了指定build.xml文件和target,ant还有三个属性来进一步控制自己的执行时间。

            time="1830" 表明每天晚上6点半进行一次持续集成。条件是 上一次醒来的时间<18:30<本次醒来的时间。
            mutibale="5",醒来五次执行一次,适合有几个ant节点,有的醒来一次做一次,有的醒来几次才做一次。
            day="Monday" 同理

    <log>和<publishers>节点:由名字可知功用, CC还支持其他形式的通知比如email

    运行cruisecontrol.bat

    cruisecontrol.bat会找到你当前所在目录里的config.xml并执行它。CC里面特别用到的jar如statcvs.jar,需要在bat里面写好路径。

    查看集成结果

    在reporting/jsp/建一个override.properties,内容为

    user.log.dir=E:/lh_erp/logs
    cruise.build.artifacts.dir=E:/lh_erp/logs
    user.build.status.file=currentbuildstatus.txt

    然后build war获得war文件扔到tomcat里通过http://localhost/cruisecontrol/buildresults/浏览

    从此,我们有了持续集成。

《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号