jenkins+ant+resin自动化部署

来源:互联网 发布:中奖概率算法 编辑:程序博客网 时间:2024/05/16 16:16

jenkinsdeploy plugin 插件并不支持resin,所以这里分享一下用shell脚本做的远程动态部署war包到resin.

1.下载安装jenkins 从http://mirrors.jenkins-ci.org/war/latest/jenkins.war下载war包,丢到web容器中 就可以访问了

2.配置job的过程可参照http://blog.csdn.net/littlechang/article/details/8642149 

3.由于需要部署的机器和当前机器不是同一台机器,需要配置ssh免密登录,配置方法参见:http://www.cnblogs.com/shuaiwhu/archive/2010/08/24/2065091.html,这里我打war包的机器ip为192.168.100.5, 需要部署的机器ip为192.168.100.6

4.在配置job并生成war包无误后,在配置job中选择 增加构建步骤 --execute shell一项,command中填写

rm /home/apache-tomcat-7.0.59-jenkins/webapps/deplory/manager.warcp /home/.jenkins/jobs/am_test/workspace/build/testwar/manager.war /home/apache-tomcat-7.0.59-jenkins/webapps/deplory/ssh -p 20755 192.168.100.6 'bash -x -s' < /home/scripts/autodeploy.sh

这里 我的ssh端口是20755 

上边这段脚本的意思是 把tomcat目录中原有的manager.war删掉,替换成新打的war包并在需要部署的机器 192.168.100.6 上执行/home/scripts/autodeploy.sh这段脚本

#!/bin/bashexport JAVA_HOME=/usr/local/java/jdk1.6.0_21resin_pid=`/usr/sbin/lsof -n -P -t -i :8888`watch_dog_pid=`/usr/sbin/lsof -n -P -t -i :6666`echo $watch_dog_pidecho $resin_pid[ -n "$watch_dog_pid" ] && kill -9 $watch_dog_pid[ -n "$resin_pid" ] && kill -9 $resin_pidcd /home/resin-pro-3.1.12/uploadmv manager.war manager.war.bakwget '192.168.100.5:8080/deplory/manager.war'rm -rf /home/resin-pro-3.1.12/webapps/manager*cp /home/resin-pro-3.1.12/upload/manager.war /home/resin-pro-3.1.12/webapps/sh /home/resin-pro-3.1.12/bin/httpd.sh start
这里我resin的端口为8888 watchdag的端口为6666

运行一遍,查看jenkins job的控制台输出没有问题,部署ok

0 0
原创粉丝点击