Cruisecontrol [原创] cruisecontrol + svn + maven2 配置总结

chengfei112233@hotmail.com · 2009年09月25日 · 5 次阅读

[align=center][color=#4f81bd][font=AR PL UMing CN,serif][b] CruiseControl[/b][/font] [b] 配置总结 [/b] [/align][align=center][color=#4f81bd][b]([/b][font=AR PL UMing CN,serif][b] cruisecontrol+ svn + maven2 [/b][/font][b])[/b] [/align] 本文出自: [url=http://bbs.scmroad.comhttp://bbs.scmroad.com[/url]]

作者: chengfei112233

如需转载请写明出处和作者, 否则将追究法律责任.

[color=#4f81bd][font=AR PL UMing CN,serif][b] CruiseControl[/b][/font][b]:简称 [/b][font=AR PL UMing CN,serif][b] CC[/b][/font][b],持续集成工具,主要提供了基于版本管理工具 [/b][font=AR PL UMing CN,serif]b[/b][/font][b] 感知变化或每天定时的持续集成,并提供持续集成报告、[/b][font=AR PL UMing CN,serif][b] Email[/b][/font][b]、[/b][font=AR PL UMing CN,serif][b] Jabber[/b][/font][b] 等等方式通知相关负责人,其要求是需要进行日构建的项目已编写好全自动的项目编译脚本 [/b][font=AR PL UMing CN,serif]b[/b][/font][b]。[/b]

[color=#4f81bd][b] 在这里以一个项目来简要的说说 [/b][font=AR PL UMing CN,serif][b] cc[/b][/font][b] 的使用,通常项目对于日构建的类型的需求分为两种:[/b] [color=#4f81bd][font=AR PL UMing CN,serif][b] 1[/b][/font][b]、每天的定时自动集成。[/b] [color=#4f81bd][font=AR PL UMing CN,serif][b] 2[/b][/font][b]、感知版本管理工具中的变化而进行自动集成。[/b]

[color=#4f81bd][b] 项目对于日构建的目标通常为:[/b] [color=#4f81bd][font=AR PL UMing CN,serif][b] 1[/b][/font][b]、感知版本管理工具的变化,如发现有变化,则进行集成。[/b] [color=#4f81bd][font=AR PL UMing CN,serif][b] 2[/b][/font][b]、调用项目编译脚本进行项目集成。[/b] [color=#4f81bd][font=AR PL UMing CN,serif][b] 3[/b][/font][b]、合并项目编译脚本产生的单元测试、功能测试的日志。[/b] [color=#4f81bd][font=AR PL UMing CN,serif][b] 4[/b][/font][b]、将集成报告发布至网站中。[/b] [color=#4f81bd][font=AR PL UMing CN,serif][b] 5[/b][/font][b]、将集成的结果以邮件、[/b][font=AR PL UMing CN,serif][b] jabber[/b][/font][b] 等等方式通知相应的负责人。[/b]

[color=#4f81bd][b] 基于上面的要求,项目编译脚本采用 [/b][font=AR PL UMing CN,serif][b] Maven[/b][/font][b],版本管理工具采用 [/b] svn [b],持续集成工具采用 [/b][font=AR PL UMing CN,serif][b] CC[/b][/font][b],假设已编写好了基于 [/b][font=AR PL UMing CN,serif][b] Maven[/b][/font][b] 的项目编译脚本,[/b][font=AR PL UMing CN,serif][b] CruiseControl[/b][/font][b] 的脚本如下编写:[/b]

[list=1] [/list][table=98%][tr][td=1,1,529]




[/td][/tr][/table]

如果对 cruisecontrol 的 config 配置不了解的可参考

[url=http://blog.csdn.net/tony1130/category/360758.aspxhttp://blog.csdn.net/tony1130/category/360758.aspx[/url]]

创建 [font=AR PL UMing CN,serif][color=#4f81bd][font=Verdana,sans-serif][b] cruisecontrol+ svn + maven2 [/b][/font] [/font]

[font=AR PL UMing CN,serif][color=#4f81bd][font=Verdana,sans-serif][b] 1.[/b][/font] [/font][color=#4f81bd][b] 创建 [/b][font=AR PL UMing CN,serif][font=Verdana,sans-serif][b] maven2[/b][/font][/font] [color=#4f81bd][b] 的简单项目 [/b]

[table][tr][td][align=left][color=#00ff00][font=新宋体,monospace] mvn archetype:create -DgroupId=org.sonatype.mavenbook [/font] [/align][align=left][color=#00ff00] [font=新宋体,monospace]-DartifactId=simple [/font] [/align][align=left][color=#00ff00] [font=新宋体,monospace]-DpackageName=org.sonatype.mavenbook [/font] [/align][/td][/tr][/table]

[color=#4f81bd] [font=宋体,SimSun][b] 创建好项目后使用 [/b][/font][font=AR PL UMing CN,serif][font=Verdana,sans-serif][b] mvneclipse[/b][/font][/font] [color=#4f81bd][font=宋体,SimSun][b]:[/b][/font][font=AR PL UMing CN,serif][font=Verdana,sans-serif][b] eclipse[/b][/font][/font] [color=#4f81bd][font=宋体,SimSun][b] 将项目生成为 [/b][/font][font=AR PL UMing CN,serif][font=Verdana,sans-serif][b] eclipse[/b][/font][/font] [color=#4f81bd][font=宋体,SimSun][b] 项目 [/b][/font] [color=#4f81bd][font=宋体,SimSun][b] 在 [/b][/font][font=AR PL UMing CN,serif][font=Verdana,sans-serif][b] eclipse[/b][/font][/font] [color=#4f81bd][font=宋体,SimSun][b] 中导入该项目 [/b][/font]

[color=#4f81bd][font=宋体,SimSun] [/font]

[font=AR PL UMing CN,serif][color=#4f81bd][font=Verdana,sans-serif][b] 2.[/b][/font] [/font][color=#4f81bd][b] 构建 [/b][font=AR PL UMing CN,serif][font=Verdana,sans-serif][b] svn[/b][/font][/font] [color=#4f81bd][b] 服务器 [/b] [b] 由于系统字数限制搭建步骤放到附件中 [/b]

[color=#4f81bd][font=宋体,SimSun][b] 将上面创建的 [/b][/font][font=AR PL UMing CN,serif][font=Verdana,sans-serif][b] example[/b][/font][/font] [color=#4f81bd][font=宋体,SimSun][b] 项目上传到 [/b][/font][font=AR PL UMing CN,serif][font=Verdana,sans-serif][b] svn[/b][/font][/font] [color=#4f81bd][font=宋体,SimSun][b] 服务器上去。[/b][/font]

[font=AR PL UMing CN,serif][color=#4f81bd][font=Verdana,sans-serif][b] 2.cruisecontrol[/b][/font] [/font][color=#4f81bd][font=宋体,SimSun][b] 配置 [/b][/font]

[color=#4f81bd][font=宋体,SimSun][b] 将 [/b][/font][font=AR PL UMing CN,serif][font=Verdana,sans-serif][b] example[/b][/font][/font] [color=#4f81bd][font=宋体,SimSun][b] 项目上传到 [/b][/font][font=AR PL UMing CN,serif][font=Verdana,sans-serif][b] svn[/b][/font][/font] [color=#4f81bd][font=宋体,SimSun][b] 服务器上去后,进入 [/b][/font][font=AR PL UMing CN,serif][font=Verdana,sans-serif][b] cruisecontrol[/b][/font][/font] [color=#4f81bd][font=宋体,SimSun][b] 目录下的 [/b][/font][font=AR PL UMing CN,serif][font=Verdana,sans-serif][b] projects[/b][/font][/font] [color=#4f81bd][font=宋体,SimSun][b] 目录通过下面语句将 [/b][/font][font=AR PL UMing CN,serif][font=Verdana,sans-serif][b] example[/b][/font][/font] [color=#4f81bd][font=宋体,SimSun][b] 项目 [/b][/font][font=AR PL UMing CN,serif][font=Verdana,sans-serif][b] checkout[/b][/font][/font] [color=#4f81bd][font=宋体,SimSun][b] 到 [/b][/font][font=AR PL UMing CN,serif][font=Verdana,sans-serif][b] projects[/b][/font][/font] [color=#4f81bd][font=宋体,SimSun][b] 下。[/b][/font] [table=98%][tr][td][align=left][font=AR PL UMing CN,serif][color=#00ff00][font=新宋体,monospace] svn checkout [url=file:///media/svn] file:///home/svn[/url] [/font] [/font] [/align][/td][/tr][/table]

根据上面的 [font=AR PL UMing CN,serif][font=Verdana,sans-serif] config.xml[/font][/font] 文件配置好 [font=AR PL UMing CN,serif][font=Verdana,sans-serif] config.xml[/font][/font] 文件内容 进入 [font=AR PL UMing CN,serif][font=Verdana,sans-serif] cruisecontrol[/font][/font] 目录 在控制台运行 [font=AR PL UMing CN,serif][font=Verdana,sans-serif]./[/font][/font][color=#4f81bd][font=Verdana,sans-serif][b] cruisecontrol [/b][/font] [color=#4f81bd][font=宋体,SimSun][b] 来启动 [/b][/font][font=AR PL UMing CN,serif][font=Verdana,sans-serif][b] cruisecontrol[/b][/font][/font]

[color=#4f81bd][font=宋体,SimSun][b] 打开浏览器输入 [/b][/font][font=AR PL UMing CN,serif][font=Verdana,sans-serif][b]http://localhost:8080/b]/font]/font][ [color=#4f81bd][font=宋体,SimSun][b] 即可对 [/b][/font][font=AR PL UMing CN,serif][font=Verdana,sans-serif][b] cruisecontrol[/b][/font][/font] [color=#4f81bd][font=宋体,SimSun][b] 进行查看 [/b][/font]

附:gwt1.5 的 maven2 的 pom.xml 代码 其中集成了 cobertura ,checkstyle.pmd,findbugs,jdepend.javancss

[[i] 本帖最后由 laofo 于 2009-9-28 10:15 编辑 ]

请问这是原创文章么?还是转载?

如果是原创文章的话,最好加上作者出处,还有版权声明,谢谢:)

是原创 , 如果是引用 或者 参考 都加了 参考网址的

特别感谢 超级版主 xiaoxiang7788 对我在 cruisecontrol 持续构建过程中的帮助

[[i] 本帖最后由 chengfei112233 于 2009-9-28 09:57 编辑 ]

呵呵. 相互学习, 共同进步.

chengfei112233 于 2009-9-28 09:36 发表
是原创 , 如果是引用 或者 参考 都加了 参考网址的

特别感谢 超级版主 xiaoxiang7788 对我在 cruisecontrol 持续构建过程中的帮助 [/quote]

gxgx

chengfei112233 于 2009-9-28 09:36 发表
是原创 , 如果是引用 或者 参考 都加了 参考网址的

特别感谢 超级版主 xiaoxiang7788 对我在 cruisecontrol 持续构建过程中的帮助 [/quote]

原创就在题目中标明原创,这样也方便我给你标记,加分啊。呵呵,不错不错

xiaoxiang7788 于 2009-9-28 09:47 发表
呵呵. 相互学习, 共同进步. [/quote]

呵呵,你都开始带新人了。gxgx~

呵呵. 一起进步嘛, 和 chengfei112233 讨论的过程中, 我也学习到了很多.

需要 登录 后方可回复。