#!/bin/sh
#kill tomcat pid
#这句尤为重要
export BUILD_ID=apache-tomcat-app_build_id
# 1.关闭Tomcat
pidlist=`ps -ef | grep apache-tomcat-app | grep -v "grep" | awk '{print $2}'`
function stop(){
if [ "$pidlist" == ""]
then
echo "----tomcat 已经关闭----"
else
echo "tomcat进程:$pidlist"
kill -9 $pidlis
echo "KILL $pidlis:"
fi
}
stop
pidlist2=`ps -ef | grep apache-tomcat-app | grep -v "grep" | awk '{print $2}'`
if [ "$pidlist2" == ""]
then
echo "----关闭 Tomcat 成功----"
else
echo "----关闭 Tomcat 失败 ----"
fi
# 2.移除原来Tomcat中webapps中的项目文件夹
rm -rf /home/eli/apache-tomcat-app/webapps/ROOT*
# 3.复制jenkins生成的 war包到Tomcat的webapps中
cp -r /home/eli/.jenkins/workspace/enjoy-eli/target/jenkins-demo-1.0.war /home/eli/apache-tomcat-app/webapps
sleep 3s
# 4.修改war包名称
mv /home/eli/apache-tomcat-app/webapps/jenkins-demo-1.0.war /home/eli/apache-tomcat-app/webapps/ROOT.war
# 5.启动Tomcat
cd /home/eli/apache-tomcat-app/bin
./startup.sh
说明:export 配置环境变量
1.启动 shell 脚本(进程)拉 Tomcat(子进程)
2.shell 脚本执行完成,Jenkins 执行完成,任务结束
3.结束 shell 脚本,Tomcat 子进程也会跟着结束
4.配置 export 环境变量,配置的进程不会结束(apache-tomcat-app_build_id 进程就不随着 shell 脚本的执行完成而结束)