在Linux下设置Hudson持续集成
哈德森监督执行重复的工作,例如建立一个软件项目或由cron运行的工作。 本文介绍如何在Linux上进行设置。
1准备
1.创建目录结构如下:
/var/hudson/
|+-[.ssh]
|+-[bin]
| +-[slave.jar]
+-[workspace]
+-[container]
+-[ci-tools]
+-[java]
mkdir -p /var /var/hudson /var/hudson/.ssh /var/hudson/bin /var/hudson/workspace /var/hudson/container /var/hudson/ci-tools /var/hudson/java
目录布局的目的是要有一个标准的目录,并在将来易于维护。
2.使用主目录/ var / hudson
创建hudson用户:
useradd -d /var/hudson -c 'Hudson user' hudson
chown -R hudson /var/hudson
3.下载Tomcat 5.5.26并解压到/var/hudson/container/apache-tomcat-5.5.26
文件夹中( http://www.alliedquotes.com/mirrors/apache/tomcat/tomcat-5/v5.5.26/ bin / apache-tomcat-5.5.26.tar.gz ):
su hudson
wget http://www.alliedquotes.com/mirrors/apache/tomcat/tomcat-5/v5.5.26/bin/apache-tomcat-5.5.26.tar.gz
tar -xzf apache-tomcat-5.5.26.tar.gz
mv apache-tomcat-5.5.26 /var/hudson/container/
tomcat的bin
文件夹的路径应为/var/hudson/container/apache-tomcat-5.5.26/bin
。
5.从下载JRE 5并将其安装到/var/hudson/container/jre1.5.0_15中
。
从https://hudson.dev.java.net/files/documents/2402/97742/hudson.war (当前版本为1.218)下载hudson.war
。
7.将hudson.war
放入位于/var/hudson/container/tomcat-5.5.26/webapps
的tomcat的webapps
文件夹中。
8.在/ var / hudson中创建start-server.sh文件,具有以下内容:
#!/ bin / sh
设置JRE_HOME = / var / hudson / container / jre1.5.0_15
设置HUDSON_HOME = / var / hudson / workspace
设置CATALINA_HOME = / var / hudson / container / apache-tomcat-5.5.26
cd /var/hudson/container/apache-tomcat-5.5.26
sh ./bin/startup.sh&
9.在/ var / hudson上创建以下内容的stop-server.sh文件:
#!/ bin / sh
设置JRE_HOME = / var / hudson / container / jre1.5.0_15
设置CATALINA_HOME = / var / hudson / container / apache-tomcat-5.5.26
cd /var/hudson/container/apache-tomcat-5.5.26
./bin/shutdown.sh
10.打开浏览器http:// localhost:8080 / hudson
查看Hudson主页。
11.将位于/var/hudson/container/apache-tomcat-5.5.26/webapps/hudson/WEB-INF文件夹下的slave.jar复制到/ var / hudson / bin文件夹中。
2安装
1.下载并安装以下插件:Active Directory.hpi,violation.hpi,emma.hpi,cobertura.hpi
安装插件:转到Hudson主页>管理Hudson>管理插件,使用上传控件将插件上传到Hudson,然后重新启动Hudson。2.使用以下信息配置Hudson的电子邮件:
一个。 SMTP服务器 :SMTP服务器主机名或IP(即prjmail.cybersoft.vn或mail.cybersoft.vn)。
b。 默认用户电子邮件Postfix :用户电子邮件的默认Postfix如@ cybersoft-vn.com和所有没有电子邮件地址的用户将默认为@ cybersoft-vn.com ie hieult将获得hieult@cybersoft-vn.com。
C。 系统管理员电子邮件地址 :此系统的管理员的电子邮件(用于在“发件人”字段中进行设置)。
d。 哈德逊网址 :电子邮件中使用的某些网址的哈德逊安装的网址。
配置Hudson:转到Hudson主页>管理Hudson> Hudson配置。
3.将JDK下载并安装到/ var / hudson / java子文件夹中。
4.通过Hudson Configuration页面将Java设置添加到Hudson。
5.将Ant下载并提取到/ var / hudson / ci-tools子文件夹中。
6.通过Hudson配置页面将Ant设置添加到Hudson。
7.将Maven下载并解压缩到/ var / hudson / ci-tools子文件夹中。
8.通过Hudson配置页面将Maven设置添加到Hudson。
3创建项目
1.去哈德森首页 > 新工作 。
2.在作业名称文本框中输入作业的名称 ,然后选择构建自由式软件项目单选按钮,然后单击确定按钮。
3.在JDK组合框中选择项目的JDK用途。
4.在“源代码管理”部分中,选择Subversion比率按钮,并输入项目的Subversion URL。
5.使用其余配置下拉,然后单击以下复选框:
- 投票单片机 :哈德森将轮询源控制管理系统进行更改,然后触发构建(这可能会导致增加单片机系统的工作负载)。
- 定期构建 :安装cronjob,以便每天运行构建
- 每分钟: * * * * *
- 每5分钟: 5 * * * *
- 每日: @daily
- 如果项目是Ant,则调用Ant,如果项目是Maven,则调用Ant 。
- 归档工件 :Zip构建工件,并允许通过Hudson Web GUI进行访问。
- 发布Javadoc :如果您为项目使用了javadoc,则可以通过Hudson Web GUI检查以发布javadoc。
- 发布JUnit测试结果报告 :通过Hudson Web GUI发布JUnit报告。
- 记录艾玛覆盖报告 :通过哈德森Web GUI发布艾玛报道报告。
- 报告违规 :通过Hudson Web GUI发布代码分析报告,如PMD,CPD,Checkstyle等。
- 电子邮件通知 :通知用户构建状态。
- 发布Cobertura覆盖报告 :通过Hudson Web GUI发布Cobertura报告。
6.配置JUnit测试报告:如果您已经定义了与框架中指定的相同的目录,则JUnit报告应在** / build / reports / junit / ** / *。xml
7.配置Emma插件:Emma不接受正则表达式作为输入,因此如果您已经定义了与Emma报告应在“WorkspaceName”框架中指定的目录相同的目录,则需要输入emma coverage xml文件的完整路径。 > /build/reports/emma/emma.xml
8.配置Cobertura插件:如果您已经定义了框架中指定的相同目录,则Cobertura报告应在** / build / reports / cobertura / ** / *。xml
9.配置违规插件:如果您已经定义了报告应在框架中指定的目录
一个。 PMD: ** / build / reports / pmd / ** / *。xml
b。 CPD: ** / build / reports / cpd / ** / *。xml
C。 Findbugs: ** / build / reports / findbugs / ** / *。xml
d。 Checkstyle: ** / build / reports / checkstyle / ** / *。xml
10.单击保存按钮保存配置。
11.现在项目已准备就绪,单击“立即生成”按钮构建项目。