跑步

持续集成工具CC介绍

2019-09-13 19:55:23来源:励志吧0次阅读

CruiseControl:简称CC,持续集成工具,主要提供了基于版本管理工具(如CVS)感知变化或每天定时的持续集成,并提供持续集成报告、Email、Jabber等等方式通知相关负责人,其要求是需要进行日构建的项目已编写好全自动的项目编译脚本(可基于Maven或Ant)。

在这里以一个项目来简要的说说cc的使用,通常项目对于日构建的类型的需求分为两种:

1、每天的定时自动集成。

2、感知版本管理工具中的变化而进行自动集成。

项目对于日构建的目标通常为:

1、感知版本管理工具的变化,如发现有变化,则进行集成。

2、调用项目编译脚本进行项目集成。

3、合并项目编译脚本产生的单元测试、功能测试的日志。

4、将集成报告发布至网站中。

5、将集成的结果以邮件、jabber等等方式通知相应的负责人。

基于上面的要求,项目编译脚本采用Maven,版本管理工具采用CVS,持续集成工具采用CC,假设已编写好了基于Maven的项目编译脚本,CruiseControl的脚本如下编写:

<?xml version=1.0 encoding=UTF-8?>

<cruisecontrol>

<project name=demo buildafterfailed=true>

<!--每次检测是否有变化时先运行此处 -->

<bootstrappers>

<currentbuildstatusbootstrapper file=logs/demo/buildstatus.txt/>

</bootstrappers>

<!--检测是否有变化,如有变化则开始集成 -->

<modificationset quietperiod=10>

<!-- 基于cvs的检测 -->

<cvs localworkingcopy=demo/>

</modificationset>

<!-- 持续集成-->

<schedule interval=18>

<!-- 项目的编译脚本 -->

<maven mavenscript=D:/tools/maven/bin/maven.bat

projectfile=demo/project.xml

goal=demo:build/>

</schedule>

<!--持续集成过程的日志记录以及需要合并的日志 -->

<log dir=logs/demo>

<!-- 合并项目编译脚本中产生的单元、功能测试日志 -->

<merge dir=demo/target/test-reports/>

</log>

<!--持续集成后结果的公布 -->

<publishers>

<currentbuildstatuspublisher file=logs/demo/buildstatus.txt/>

<!-- 发布持续集成的结果至网站中,此方法还不是最理想的 -->

<execute command=D:/tools/cc/reporting/jsp/build.bat war/>

<!-- 邮件通知相关的负责人 -->

<email mailhost=smtp.yourdomain.com

returnaddress=buildmaster@yourdomain.com

skipusers=true

reportsuccess=fixes

subjectprefix=[CruiseControl]

buildresultsurl=http://buildserver:8080/cruisecontrol/buildresults>

<failure address=developers@yourdomain.com />

<success address=developers@yourdomain.com />

</email>

</publishers>

</project>

</cruisecontrol>

关于CC 的脚本中xml的规范、cc的安装和运行请参考CruiseControl的官方网站:

cruisecontrol.sourceforge.net

查看本文来源

热淋清颗粒多少钱一盒
孩子老是咳嗽怎么办
小孩咳嗽怎么办
什么中药调理便秘
分享到: