研究了半天,终于写成了脚本。实现备份原war,发布新war包。目前依赖Tomcat热部署。后期再优化
#!/bin/bash
webapps="/usr/tomcat/tomcat-admin1/webapps/ROOT.war"
projectDir="/usr/tomcat/tomcat-admin1/webapps/ROOT"
newWar="backend.war"
#创建临时文件夹
tempDirName=`date "+%Y%m%d%H%M%S"`
tempDirName="backend-${tempDirName}"
echo "准备创建临时文件夹:${tempDirName}"
`mkdir ${tempDirName}`
#移动war文件到临时文件夹
`mv ${webapps} ${tempDirName}`
#等待ROOT文件夹消失
echo "等待ROOT文件夹消失"
while :
do
if [ ! -d "${projectDir}" ]
then
break;
fi
echo -e "=\c"
sleep 1s
done
#拷贝发布包到webapps
echo "拷贝发布包到webapps"
`cp ${newWar} ${webapps}`
#等待ROOT文件夹生成
echo "等待ROOT文件夹生成"
while :
do
if [ -d "${projectDir}" ]
then
break;
fi
echo -e "=\c"
sleep 1s
done
echo "发布完毕 O(∩_∩)O~"