Hudson参考:http://jdonee.iteye.com/blog/310497
持续集成服务器:
1、hudson(微核+插件+Web部署)
2、CruiseControl(牌子大+手写配置文件)
3、luntbuild(漂亮的界面+功能完整)
Hudson
Hudson主页:
http://hudson-ci.org/
Hudson Dowload:
http://hudson.gotdns.com/latest/hudson.war
Hudson基础介绍:
http://www.uml.org.cn/jchgj/200904231.asp
Hudson-Eclipse:
http://code.google.com/p/hudson-eclipse/downloads/list
使用方法:
1、下载hudson.war。(下载:http://hudson.gotdns.com/latest/hudson.war ,官方网站:http://hudson-ci.org/)
2、命令行运行:java -jar hudson.war (应该先按照了jdk1.5或者1.6,并且命令行能运行java命令)
3、访问:http://localhost:8080 (如果之前此端口已占用,要先关闭。在运行命令2)
使用方法参见:
http://www.blogjava.net/xiaodu/archive/2008/07/08/213298.html
附件是一位网友分享的安装/使用经验:
http://www.iteye.com/wiki/topic/326921
本文出自 “果冻的软件技术博客” 博客,请务必保留此出处http://sinojelly.blog.51cto.com/479153/268167
2、命令行运行:java -jar hudson.war (应该先按照了jdk1.5或者1.6,并且命令行能运行java命令)
3、访问:http://localhost:8080 (如果之前此端口已占用,要先关闭。在运行命令2)
使用方法参见:
http://www.blogjava.net/xiaodu/archive/2008/07/08/213298.html
附件是一位网友分享的安装/使用经验:
http://www.iteye.com/wiki/topic/326921
本文出自 “果冻的软件技术博客” 博客,请务必保留此出处http://sinojelly.blog.51cto.com/479153/268167
Maven
Maven持续集成最佳实践:http://www.cublog.cn/u1/55983/showart_2096561.html
continuum官方文档:http://continuum.apache.org/
2、Hudson源代码SVN地址:
Hudson源码修改相关文章:
3、Hudson配置文件:~/.hudson
/config.xml
在此文件中查找<useSecurity>true</useSecurity> 元素。用false替换true。启动Hudson 。这时候的Hudson又回归到无认证模式,任何人都能拥有该系统的全部权限。
<useSecurity>false</useSecurity>
4、Hudson插件开发, 如贸易通消息
Hudson插件开发样例:
5、Hudson的启动
Linux启动:
nohup java -jar /usr/ali/hudson/hudson.war --webroot=/data/hudson/war --prefix=/hudson --httpPort=7001 --ajp13Port=7002 &
其中:
httpPort表示外面可访问的端口
windows启动:
C:\hudson> java -jar hudson.war
6、Hudson插件描述
7、Hudson源代码
(1)插件下载:
(2)Hudson的War包下载:http://hudson-ci.org/download/war/
(3)Hudson的SVN地址:https://hudson.dev.java.net/svn/hudson/trunk/hudson/
***8、邮件服务器配置
(1)E-mail Notification 设置: 系统管理 -> 系统设置-> E-mail Notification 中进行设置
SMTP server:email.company-inc.com
Default user e-mail suffix:@company-inc.com
System Admin E-mail Address:abc@company-inc.com
Hudson URL:http://ip:7001/hudson/
Use SMTP Authentication:勾上
User Name:kjw
Password:******
SMTP Port:587
Charset:UTF-8
点击测试按钮,
Email was successfully sent则表示配置成功, 同时将收到一封email
(2)Extended E-mail Notification设置
SVN:https://svn.dev.java.net/svn/hudson/trunk/hudson/plugins/email-ext, 无需用户名和密码
前面几项和
E-mail Notification 设置的选项相同, 后面为设置邮件的格式:
Default Content Type:HTML
Default Subject:$PROJECT_NAME - Build第 $BUILD_NUMBER 次 - $BUILD_STATUS!
Default Content:
- <font size="2" font-family="微软雅黑">
- <center>
- <font color="#8E001D"><h2>${PROJECT_NAME}持续集成测试报告</h2></font>
- </center>
- <font color="#8E001D" size="2.5"><b><li>项目名称</li></b></font><br>
- ................................................................................................................................................................
- <br>
-    ${PROJECT_NAME}<br><br>
- <font color="#8E001D" size="2.5"><b><li>构建状态</li></b></font><br>
- ................................................................................................................................................................
- <br>
-    ${BUILD_STATUS}<br><br>
- <font color="#8E001D" size="2.5"><b><li>访问如下url查看详情</li></b></font><br>
- ................................................................................................................................................................
- <br>
-    ${BUILD_URL}<br><br>
- <font color="#8E001D" size="2.5"><b><li>本次build的更新记录</li></b></font><br>
- ................................................................................................................................................................
- <br>
-     ${CHANGES}<br><br>
- <font color="#8E001D" size="2.5"><b><li>集成测试具体运行情况</li></b></font><br>
- ................................................................................................................................................................
- <br>
-     ${FAILED_TESTS}<br><br>
- <font color="#8E001D" size="2.5"><b><li>本次构建的日志</li></b></font><br>
- ................................................................................................................................................................
- <br>
-    ${BUILD_LOG, maxLines=20, escapeHtml =false}<br><br>
- </font>
- <p style="font-size:35px"><center><b>持续集成测试报告</b></center></p>
- <p style="padding-bottom: 0pt; padding-top: 0pt; " class="Title" />
- 1、 项目名称:${PROJECT_NAME}, 构建状态:<b>${BUILD_STATUS}</b> <br />
- <br/>
- 2、访问如下url查看详情: ${BUILD_URL} <br/>
- <p style="padding-bottom: 0pt; padding-top: 0pt; " class="Body" />
- 3、本次build的更新记录:
- <br />
- ${CHANGES}
- <br/>
- 4、集成测试具体运行情况:
- <br />
- ${FAILED_TESTS}
- <br/>
【注意】需要配置邮件的触发条件【在各个工程中配置】
(3) 邮件通知的建议稿
http://b2b-doc.alibaba-inc.com/pages/viewpage.action?pageId=45200894
【参考】董松洁使用的邮件模板:http://10.249.196.70:8080/hudson
${JELLY_SCRIPT,template="default"}
9、Sonar插件
(2)源代码目录:
https://svn.codehaus.org/sonar/
取出主干代码trunk:
svn checkout https://svn.codehaus.org/sonar/trunk sonar
Sonar的使用说明:
http://babyhe.blog.51cto.com/1104064/383517
(3)在使用eclipse的eclipse goals来进行操作的使用,sonar的2.3.0和2.3.1版本中出现eclipse插件与公司插件不一致性的问题, 其他版本也应该存在同样的问题。
在pom中制定了enforce插件的时候,可能存在外面默认的插件与公司的插件不一致的情况,出现的错误如下: