2006-09-19
Maven2 + Subversion + CruiseControl搭建持续集成环境
1.创建Maven2项目,并import到Subversion Repository。
2.下载CruiseControl,版本2.5。
3.创建CruiseControl的工作目录,结构如下:
注:CruiseControl支持构建多个项目,每个项目涉及:logs、checkout、artifacts。它们的作用分别是:记录build结果、checkout代码的工作目录、部件发布地。这个结构就是为了这三个目的而创建的,每一级下的project_name都是对应的。
4.修改%CruiseControl_Home%/ webapps/cruisecontrol/WEB-INF/web.xml:
- 查找:context-param logDir;修改它的值:…/ccworkplace/logs
- 查找:ArtifactServlet的init-param rootDir;修改它的值:…/ccworkplace/artifacts
5. 修改%CruiseControl_Home%/config.xml,内容:
6.运行%CruiseControl_Home%/cruisecontrol.bat,因为cruisecontrol.bat已经自带了jetty,之后进入:http://localhost:8080/即可。
2.下载CruiseControl,版本2.5。
3.创建CruiseControl的工作目录,结构如下:
ccworkplace\
\logs
\project_name
\checkout
\project_name
\artifacts
\project_name
注:CruiseControl支持构建多个项目,每个项目涉及:logs、checkout、artifacts。它们的作用分别是:记录build结果、checkout代码的工作目录、部件发布地。这个结构就是为了这三个目的而创建的,每一级下的project_name都是对应的。
4.修改%CruiseControl_Home%/ webapps/cruisecontrol/WEB-INF/web.xml:
- 查找:context-param logDir;修改它的值:…/ccworkplace/logs
- 查找:ArtifactServlet的init-param rootDir;修改它的值:…/ccworkplace/artifacts
5. 修改%CruiseControl_Home%/config.xml,内容:
<cruisecontrol>
<property name="cruisedir" value="…/ccworkplace"/>
<property name="logdir" value="${cruisedir}/logs"/>
<property name="checkoutdir" value="${cruisedir}/checkout"/>
<property name="artifactdir" value="${cruisedir}/artifacts"/>
<project name="codelinecomponents">
<listeners>
<currentbuildstatuslistener file="${logdir}/${project.name}/status.txt"/>
</listeners>
<bootstrappers>
<svnbootstrapper localWorkingCopy="${checkoutdir}/${project.name}" />
</bootstrappers>
<modificationset quietperiod="30">
<svn localWorkingCopy="${checkoutdir}/${project.name}"/>
</modificationset>
<schedule interval="300">
<maven2 mvnscript="%M2_Home%/bin/mvn.bat"
pomfile="${checkoutdir}/${project.name}/pom.xml"
goal="clean site package"/>
</schedule>
<log dir="${logdir}/${project.name}">
<merge dir="${checkoutdir}/${project.name}/target/surefire-reports"/>
</log>
<publishers>
<onsuccess>
<artifactspublisher dest="${artifactdir}/${project.name}"
file="${checkoutdir}/${project.name}/target/${project.name}.jar"/>
</onsuccess>
</publishers>
</project>
</cruisecontrol>
6.运行%CruiseControl_Home%/cruisecontrol.bat,因为cruisecontrol.bat已经自带了jetty,之后进入:http://localhost:8080/即可。
发表评论
- 浏览: 6132 次
- 性别:


- 详细资料
搜索本博客
最近加入圈子
链接
最新评论
-
Maven2 + Subversion + Cr ...
请问一下,你的ccworkplace是建在哪个路径下的?谢谢
-- by kevin_gzhz -
Grails中的Controller单元 ...
啥时候又把博客搬到这了,还混成了infoq的编辑。老哥我要离开西安了,有时间一块 ...
-- by sungaofei -
Grails中的Controller单元 ...
会,缺省grails中使用的内存数据库。
-- by foxgem -
Grails中的Controller单元 ...
请问foxgem,new Category(name: "Test1", par ...
-- by yanhua -
Grails中的Controller单元 ...
最简单的做法就是在ant中去调用grails test,因为它本身就是一个命令。 ...
-- by foxgem






评论排行榜