jenkins 配置 maven项目之后,需要重新启动tomcat,这就需要使用脚本来实现该功能。
首先在jenkins 配置执行脚本。

此处是jenkins内的脚本
mv /home/xzadmin/.jenkins/workspace/common-root/target/common.war /usr/local/8060/package/
BUILD_ID=DONTKILLME
/usr/local/8060/run.sh restart;
此处是run.sh 的脚本
#!/bin/bash
# author bean.zhang
# DEFINE
RETVAL=$?
#export CATALINA_BASE="$PWD"
export CATALINA_BASE="/usr/local/8060"
export CATALINA_HOME="/data/tomcat"
export resources_path=dev
export CATALINA_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,address=18086,suspend=n,server=y"
port=8060
#export JVM_OPTIONS="-Xms128m-Xmx1024m-XX:PermSize=128m-XX:MaxPermSize=512m"
case "$1" in
start)
if [ -f $CATALINA_HOME/bin/startup.sh ];then
echo $"StartTomcat"
$CATALINA_HOME/bin/startup.sh
fi
;;
stop)
if [ -f $CATALINA_HOME/bin/shutdown.sh ];then
echo $"StopTomcat"
$CATALINA_HOME/bin/shutdown.sh
pid=$(ps -ef| grep "catalina.base=/usr/local/""$port"| grep -v grep | awk '{print $2}')
sleep 3
kill -9 $pid
echo kill tomcat"$port" pid "$pid"
fi
;;
restart)
if [ -f $CATALINA_HOME/bin/shutdown.sh ];then
echo $"RestartTomcat"
$CATALINA_HOME/bin/shutdown.sh
pid=$(ps -ef| grep "catalina.base=/usr/local/""$port"| grep -v grep | awk '{print $2}')
if [ ! -z $pid ];then
sleep 3
kill -9 $pid
echo kill tomcat"$port" pid "$pid"
fi
sleep 3
echo start tomcat"$port"
$CATALINA_HOME/bin/startup.sh
fi
;;
*)
echo $"Usage:$0{start|stop}"
exit 1
;;
esac
exit $RETVAL
补充一下jar包启动的脚本
#!/bin/sh
BUILD_ID=DONTKILLME
pid=`ps -ef | grep seal-admin.jar | grep -v grep | awk '{print $2}'`
if [ -n "$pid" ]
then
#!kill -9 强制终止
echo "kill -9 的pid:" $pid
kill -9 $pid
fi
rm -rf /usr/local/work/seal/seal-admin.jar
mv /root/.jenkins/workspace/seal-admin/target/seal-admin.jar /usr/local/work/seal
cd /usr/local/work/seal
nohup java -jar seal-admin.jar --spring.profiles.active=dev &
echo "启动完毕,请打开链接:http://127.0.0.1:9000/seal-admin/"

292

被折叠的 条评论
为什么被折叠?



