ACTION=$1
PROFILE=$2
REDIS_MODE=$3
PORT=8035
APP_NAME=demo-server
JAR_NAME=demo-server.jar
APP_HOME=/app/bp/${APP_NAME}
PACKAGE_HOME=/app/bp/package
#APP_LOG is the app log output.
APP_LOG_HOME=${APP_HOME}/logs
APP_LOG=${APP_LOG_HOME}/${APP_NAME}.log
JDK_HOME=/home/app/jdk/jdk1.8.0_131
check_package(){
[ -d ${APP_LOG_HOME} ] || mkdir -p ${APP_LOG_HOME}
[ -d ${PACKAGE_HOME} ] || mkdir -p ${PACKAGE_HOME}
echo "[INFO] checking package..."
cd ${PACKAGE_HOME}
[ -f ${APP_NAME}.tgz ] || echo "[ERRO] No package found"
}
start_application() {
echo 'exec start ==================================='
#rm -rf ${APP_HOME}/*
#tar -zxvf ${PACKAGE_HOME}/${APP_NAME}.tgz -C ${APP_HOME}
${JDK_HOME}/jre/bin/java -jar -Denv=${PROFILE} -Dspring.profiles.active=${PROFILE} -Dspring.redis.mode=${REDIS_MODE} -Dserver.port=${PORT} ${APP_HOME}/${JAR_NAME} > ${APP_LOG} 2>&1 &
sleep 10
tail -n 200 ${APP_LOG}
}
stop_application() {
echo 'exec stop ===================================='
PID=$(ps -ef|grep $JAR_NAME|grep -v grep|awk '{print $2}')
if test $(pgrep -f $JAR_NAME | wc -l ) -eq 0
then
echo $app_name" is not running, start it now"
else
echo $app_name" is running, stop it first1. pid:$findProc"
kill -9 $PID
fi
}
delete_shell(){
[ -f ${APP_HOME}/deploy.sh ] || echo 'No deploy.sh to delete!'
rm ${APP_HOME}/deploy.sh
}
start() {
check_package
stop_application
start_application
}
stop() {
stop_application
}
case "$ACTION" in
start)
start
;;
startweb)
startweb
;;
startdubbo)
startdubbo
;;
stop)
stop
;;
online)
online
;;
offline)
offline
;;
restart)
stop
start
;;
*)
usage
;;
esac