jenkins自动部署tomcat脚本
来源:互联网 发布:贝尔 知乎 编辑:程序博客网 时间:2024/05/17 22:42
DIR=`dirname $0`
TOMCAT_DIR=/root/NetWorkFlow/apache-tomcat-8.5.16
WEBAPP_DIR=$TOMCAT_DIR/webapps
TMPDIR=/root/NetWorkFlow/tmp
JAVA_HOME=/lib/jvm/jdk1.8.0_131
echo "tomcat dir is ${TOMCAT_DIR}"
if [ $# -ne 1 ] ; then
echo ". deploy.sh <appName>"
exit 1
fi
APP_NAME=$1
APP_FILE=${APP_NAME}.war
TMPFILE_WAR=$TMPDIR/$APP_FILE
export JAVA_HOME
echo "Deploying file [$APP_file],TMPDIR is [$TMPDIR],DIR is [$DIR]"
if [ ! -f "$TMPFILE_WAR" ] ; then
echo "$TMPFILE_WAR is not exists"
exit 1
fi
echo "Remove old backup $TMPDIR/${APP_NAME}_bak"
rm -fr $TMPDIR/${APP_NAME}_bak
cd $TMPDIR
echo "Backup the old app"
mv $WEBAPP_DIR/$APP_NAME $TMPDIR/
mv $APP_NAME ${APP_NAME}_bak
echo "mv war to webapp"
cd $WEBAPP_DIR
mkdir $APP_NAME
cd $APP_NAME
mv $TMPDIR/$APP_FILE $WEBAPP_DIR/$APP_NAME/
unzip $APP_FILE
rm $APP_FILE
cd $TOMCAT_DIR/bin
echo "Stop server system"
#./shutdown.sh
#count=`ps -efc|grep tomcat|wc -l`
#killedNum=0
#echo "count pid num: ${count}"
#if [ $count -gt 1 ]; then
# PIDS=`ps -efc|grep tomcat|awk -F ' ' '{print $2}'`
# for PID in $PIDS
# do
# let killedNum++
# echo "kielledNum :${killedNum} pid ${PID}"
# if [ $count -gt $killedNum ]; then
# echo "kill current pid ${PID}"
# kill ${PID}
# fi
# done
#fi
set fileformat=unix
#force shutdown tomcat,copy this sh file to tomcat/bin dir
path=${DIR}
#path=/root/Middleware/apache-tomcat-7.0.28-system/bin/
ps -ef|grep $path|grep java|awk '{print $2}'
echo "exec ./shutdown.sh"
./shutdown.sh
sleep 3s
#kill -9 pid
ps -ef|grep $path|grep java|awk '{print $2}'|xargs kill -9
#success msg
echo "shutdown success"
ps -ef|grep $path|grep java|awk '{print $2}'
echo "Start server"
./startup.sh > /dev/null 2>&1
TOMCAT_DIR=/root/NetWorkFlow/apache-tomcat-8.5.16
WEBAPP_DIR=$TOMCAT_DIR/webapps
TMPDIR=/root/NetWorkFlow/tmp
JAVA_HOME=/lib/jvm/jdk1.8.0_131
echo "tomcat dir is ${TOMCAT_DIR}"
if [ $# -ne 1 ] ; then
echo ". deploy.sh <appName>"
exit 1
fi
APP_NAME=$1
APP_FILE=${APP_NAME}.war
TMPFILE_WAR=$TMPDIR/$APP_FILE
export JAVA_HOME
echo "Deploying file [$APP_file],TMPDIR is [$TMPDIR],DIR is [$DIR]"
if [ ! -f "$TMPFILE_WAR" ] ; then
echo "$TMPFILE_WAR is not exists"
exit 1
fi
echo "Remove old backup $TMPDIR/${APP_NAME}_bak"
rm -fr $TMPDIR/${APP_NAME}_bak
cd $TMPDIR
echo "Backup the old app"
mv $WEBAPP_DIR/$APP_NAME $TMPDIR/
mv $APP_NAME ${APP_NAME}_bak
echo "mv war to webapp"
cd $WEBAPP_DIR
mkdir $APP_NAME
cd $APP_NAME
mv $TMPDIR/$APP_FILE $WEBAPP_DIR/$APP_NAME/
unzip $APP_FILE
rm $APP_FILE
cd $TOMCAT_DIR/bin
echo "Stop server system"
#./shutdown.sh
#count=`ps -efc|grep tomcat|wc -l`
#killedNum=0
#echo "count pid num: ${count}"
#if [ $count -gt 1 ]; then
# PIDS=`ps -efc|grep tomcat|awk -F ' ' '{print $2}'`
# for PID in $PIDS
# do
# let killedNum++
# echo "kielledNum :${killedNum} pid ${PID}"
# if [ $count -gt $killedNum ]; then
# echo "kill current pid ${PID}"
# kill ${PID}
# fi
# done
#fi
set fileformat=unix
#force shutdown tomcat,copy this sh file to tomcat/bin dir
path=${DIR}
#path=/root/Middleware/apache-tomcat-7.0.28-system/bin/
ps -ef|grep $path|grep java|awk '{print $2}'
echo "exec ./shutdown.sh"
./shutdown.sh
sleep 3s
#kill -9 pid
ps -ef|grep $path|grep java|awk '{print $2}'|xargs kill -9
#success msg
echo "shutdown success"
ps -ef|grep $path|grep java|awk '{print $2}'
echo "Start server"
./startup.sh > /dev/null 2>&1
阅读全文
0 0
- Jenkins tomcat自动部署脚本
- jenkins自动部署tomcat脚本
- Jenkins自动部署Tomcat项目
- jenkins自动部署到tomcat
- jenkins 自动部署脚本 自动启停tomcat并部署项目
- Jenkins+Shell脚本实现自动部署
- Jenkins+maven+svn+tomcat自动编译部署
- Jenkins自动部署到(远程)tomcat服务器
- jenkins + maven + svn + tomcat+nexus 自动部署
- jenkins svn tomcat ant自动部署
- Jenkins+Maven+SVN+Tomcat自动部署
- jenkins + maven + svn + tomcat 自动部署
- jenkins sonar tomcat git实现自动部署
- jenkins sonar tomcat git实现自动部署
- Jenkins+maven+svn+tomcat自动编译部署
- jenkins+svn+tomcat 配置自动部署流程
- Jenkins自动部署maven项目到tomcat
- jenkins + maven +svn+ tomcat 自动构建部署
- JAVA中String类型的几种替换空格的方式
- hdu1372 Knight Moves
- 关于model的运用
- Android 图片加载框架最全解析(五),Glide强大的图片变换功能
- ceph工作原理及安装
- jenkins自动部署tomcat脚本
- mybatis入门(二)——mybatis开发项目五部曲
- 浅谈数据库索引
- opencv开发笔记(十四):创建包围轮廓的矩形边界
- springmvc常用注解标签详解
- 【个人笔记重点,不作为参考】主题:provisional headers are shown 原因分析
- mui.fire传值首次无效
- java学习内容
- Java单例的由浅入深----懒汉式的升级(1 双重检查)