首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > XML SOAP >

CruiseControl运用笔记——04.config.xml

2012-08-02 
CruiseControl使用笔记——04.config.xml---------------------------------------------------------------

CruiseControl使用笔记——04.config.xml

--------------------------------------------------------------------------

官方文档: http://cruisecontrol.sourceforge.net/main/configxml.html

其他参考: http://blog.csdn.net/tony1130/archive/2008/01/14/2043646.aspx

--------------------------------------------------------------------------

?

config.xml 的基本内容如下:

<cruisecontrol>  <dashboard />  <project name="demo1">    <!--省略-->    </project>  <project name="demo2">    <!--省略-->    </project></cruisecontrol>

<cruisecontrol> 为 root 元素,其子元素 <project> 即为纳入CI的项目的配置段,该元素的约束为 1..* , 且必须有 name 属性。

?

1. <project> 子元素列表如下:

元素约束说明<listeners> 0 .. 1监听项目状态的变化,如building、passed等<bootstrappers>0 .. 1配置服务启动时该项目执行的操作<modificationset>1配置检查代码是否修改的目录<schedule>1配置构建计划任务<log>0 .. 1配置构建日志<publishers>0 .. 1配置发布相关信息<plugin>0 ..?*配置其他插件

?

?

2. <project> 配置片段如下:

<project name="demo" requiredModifaction="false"> <!--requiredModifaction属性设置为false,表示无论项目代码是否修改都将会进行构建工作,该属性默认为true,表示只有当项目代码改变时才会执行构建-->    <bootstrappers>      <svnbootstrapper LocalWorkingCopy="..." /> <!--表示在启动时进行一次代码检出工作-->    </bootstrappers>       <modificationset> <!--可以配置属性quietperiod,用于监听在quietperiod秒内,Repository是否变化,不配置则为默认值60-->      <!--svn元素表示代码从svn获取,还可以用git、cvs、vss等元素-->      <svn RepositoryLocation="..." /> <!--RepositoryLocation 和 LocalWorkingCopy 属性2选1,前者表示仓库路径,后者表示本地路径-->    </modificationset>       <schedule> <!--可以配置属性interval,用于每隔interval秒,CruiseControl去检查并计划一次构建,不配置则为默认值300-->      <!--maven2元素表示构建代码工具为maven2,还可以用ant、maven等元素-->      <maven2 MvnHome="...\apache-maven-2.0.9" PomFile="...\pom.xml" Goal="package -DskipTests" /> <!--mvnscript 和 MvnHome 属性2选1,前者配置 mvn.bat 或 mvn.sh 的路径,后者配置 maven HOME 路径-->      <!--PomFile、Goal也是必须属性,前者用于指定pom文件路径,后者用于指定构建目标(支持maven的命令行语句)-->    </schedule>       <log> <!--构建的日志文件,默认放在 projects/${project.name} 目录下-->      <merge dir="projects/${project.name}/target/test-results"/> <!--将Build中生成的结果合并-->    </log>    <publishers>      <!--onsuccess用于配置在构建成功的情况下发布哪些内容-->      <onsuccess>        <artifactspublisher dest="artifacts/${project.name}" file="projects/${project.name}/target/${project.name}.jar" />      </onsuccess>      <!--email用于配置将构建结果以邮件形式通知相关人员,还可以用htmlemail,htmlemail配置基本和email一致-->      <email BuildResultsURL="http://localhost:8080/dashboard/tab/build/detail/demo" MailHost="..." ReturnAddress="test@msn.com">         <always address="test@msn.com" /> <!--每次构建后均发邮件至该address-->      </email>    </publishers> </project>

??

热点排行