diff --git a/gringotts-web/bin/start.sh b/gringotts-web/bin/start.sh index e4b4c4f..593b84a 100755 --- a/gringotts-web/bin/start.sh +++ b/gringotts-web/bin/start.sh @@ -1,2 +1,2 @@ export JASYPT_ENCRYPTOR_PASSWORD='r#(R,P"Dp^A47>WSn:Wn].gs/+"v:q_Q*An~zF*g-@j@jtSTv5H/,S-3:R?r9R}.' -/home/iap/gringotts/jdk/jdk-11.0.25+9/bin/java -jar /home/iap/gringotts/gringotts-web-1.0.0-SNAPSHOT.jar --spring.profiles.active=build \ No newline at end of file +nohup /home/iap/gringotts/jdk/jdk-11.0.25+9/bin/java -jar /home/iap/gringotts/gringotts-web-1.0.0-SNAPSHOT.jar --spring.profiles.active=build > run.log 2>&1 & \ No newline at end of file diff --git a/gringotts-web/bin/stop.sh b/gringotts-web/bin/stop.sh new file mode 100755 index 0000000..d390d76 --- /dev/null +++ b/gringotts-web/bin/stop.sh @@ -0,0 +1,40 @@ +#!/bin/bash + +original_command="$0" +application_name="gringotts-web-1.0.0-SNAPSHOT.jar" + +function get_pid() { + ID=$(ps ef | grep "$application_name" | grep -v grep | grep -v $original_command | awk '{ print $2 }') + if [[ -z "$ID" ]]; then + ID=$(ps aux | grep "$application_name" | grep -v grep | grep -v $original_command | awk '{print $2}') + if [[ -z "$ID" ]]; then + ID=$(/home/iap/gringotts/jdk/jdk-11.0.25+9/bin/jps -lmvV | grep "$application_name" | awk '{print $1}') + fi + fi + echo $ID +} + +pid=$(get_pid) + +if [[ -z "$pid" ]]; then + echo "Application is already stopped." + exit 0 +fi + +echo "Stopping $pid..." +kill $pid + +LOOPS=0 +while (true); do + cpid=$(get_pid) + if [[ -z "$cpid" ]]; then + echo "Oook! cost:$LOOPS" + break + fi + LOOPS=$(($LOOPS+1)) + if [[ $(($LOOPS%15)) -eq 0 ]]; then + echo "Wait timeout, try to force kill $pid..." + kill -9 $pid + fi + sleep 1s +done \ No newline at end of file