Centos 6.3 x86_64配置hudson3.01

Centos 6.3 x86_64配置hudson3.01

一,介绍:

1Hudson 是一个可扩展的持续集成引擎。

主要用于:

(1)持续、自动地构建/测试软件项目,如CruiseControlDamageControl
(2)监控一些定时执行的任务。

2Hudson拥有的特性包括:

(1)易于安装-只要把hudson.war部署到servlet容器,不需要数据库支持。

(2)易于配置-所有配置都是通过其提供的web界面实现。

(3)集成RSS/E-mail/IM-通过RSS发布构建结果或当构建失败时通过e-mail实时通知。

(4)生成JUnit/TestNG测试报告。

(5)分布式构建支持-Hudson能够让多台计算机一起构建/测试。

(6)文件识别- Hudson能够跟踪哪次构建生成哪些jar,哪次构建使用哪个版本的jar等。

(7)插件支持-Hudson可以通过插件扩展,你可以开发适合自己团队使用的工具。

二,安装tomcatjdk,注意jkdtomcat的版本,如果tomcat版本太低,新版的hudson安装会出错。hudson 3.0要用7.0版本的jdk,hudson2.0用6.0版本的jdk。

[root@master ~]# rpm -vih jdk-7u25-linux-x64.rpm

Preparing...                ########################################### [100%]

  1:jdk                    ########################################### [100%]

Unpacking JAR files...

rt.jar...

jsse.jar...

charsets.jar...

tools.jar...

localedata.jar...

[root@master ~]# cd /usr/java/

[root@master java]# ls

default  jdk1.7.0_25  latest

[root@master java]# ln -s jdk1.7.0_25/ jdk

[root@master java]# . /etc/profile

[root@master ~]# tar xf apache-tomcat-7.0.29.tar.gz  -C /usr/local/

[root@master ~]# cd /usr/local/

[root@master local]# ln -s apache-tomcat-7.0.29/ tomcat

三,配置hudson

[root@master ~]# cp hudson-3.0.1.war  /usr/local/tomcat/webapps/

[root@master ~]# /usr/local/tomcat/bin/catalina.sh  start

打开浏览器:hudson有三个部分组成,

1Core Compatibility Plugins(核心兼容插件):这个必须选择,下面两个可以不选,根据需要来选择。

2Featured Plugins(特色插件)

3Recommended Plugins(推荐插件)

140538840.png

点最下面的install

没提示出错点finish,出现下面的你界面。

装完之后,在当前用户用会生成.hudson的 隐藏目录和/usr/local/tomca/hudson两个目录。

三,hudson里新建作业:

1,新建任务

141633146.png

2,设置svn,和登录svn的用户与密码

141727975.png

3,设置定时编译,跟linux的cron一样,代表分,时,天,月,周,如果不需要可以不勾

142007196.png

4,设置编译,分别表示执行脚本和调用maven

142234301.png

deploy.sh需要根据环境自己编写,maven根据开发的pom.xml文件来设置。


142411337.png

5,设置邮件通知,其实也可以不设置,这里略过

四,编译的脚本文件

1,deploy.sh脚本

#!/bin/sh

tom=tomcat7-pongo

pro=yz-pongo-web

#remote server

host="ssh summba-dev5"


webbase=/home/summba/server/$tom/webapps

local () {

       ps -ef |grep $tom |grep -v grep |awk '{print $2}' |xargs kill -9  &> /dev/null

       rm -rf $webbase/$pro

       rm -rf /home/summba/.hudson/jobs/$pro/workspace/target/$pro*.war

       cp -R /home/summba/.hudson/jobs/$pro/workspace/target/$pro* $webbase/$pro

       cp $HBASE_HOME/conf/hbase-site.xml $webbase/$pro/WEB-INF/classes

       sleep 30

       sh /home/summba/autodeploy/$pro/starttomcat.sh

       }

remote () {

        $host "ps -ef |grep $tom |grep -v grep |awk '{print $2}' |xargs kill -9  &> /dev/null"

        $host "rm -rf $webbase/$pro"

        scp -r $webbase/$pro  summba-dev5:$webbase/$pro

        scp  $HBASE_HOME/conf/hbase-site.xml $webbase/$pro/WEB-INF/classes

        sleep 60

        $host "sh /home/summba/server/$tom/bin/startup.sh"

        echo "please a wait ,is starting"

        sleep 60

       }

local

#remote

2,starttomcat的脚本,最主要是dotKillMe,不然可以将两个脚本合起来。

#!/bin/sh

export BUILD_ID=dontKillMe

sh /home/summba/server/tomcat7-pongo/bin/startup.sh

echo `pwd`

echo "starting"

sleep 100

~                    

到此结束

你可能感兴趣的:(centos,6.3)