mirror of https://github.com/midoks/mdserver-web
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
87 lines
2.0 KiB
87 lines
2.0 KiB
2 years ago
|
#!/bin/sh
|
||
|
# chkconfig: 2345 55 25
|
||
|
# description: Tgbot Service
|
||
|
|
||
|
### BEGIN INIT INFO
|
||
|
# Provides: Tgbot
|
||
|
# Required-Start: $all
|
||
|
# Required-Stop: $all
|
||
|
# Default-Start: 2 3 4 5
|
||
|
# Default-Stop: 0 1 6
|
||
|
# Short-Description: starts Tgbot
|
||
|
# Description: starts the MDW-Web
|
||
|
### END INIT INFO
|
||
|
|
||
|
# Simple Tgbot init.d script conceived to work on Linux systems
|
||
|
# as it does use of the /proc filesystem.
|
||
|
|
||
|
PATH=/usr/local/bin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
|
||
|
export LANG=en_US.UTF-8
|
||
|
|
||
|
|
||
|
mw_path={$SERVER_PATH}
|
||
|
PATH=$PATH:$mw_path/bin
|
||
|
|
||
|
if [ -f $mw_path/bin/activate ];then
|
||
|
source $mw_path/bin/activate
|
||
|
fi
|
||
|
|
||
|
tg_start(){
|
||
|
|
||
|
isStart=`ps -ef|grep 'tgclient.py' |grep -v grep | awk '{print $2}'`
|
||
|
if [ "$isStart" == '' ];then
|
||
|
echo -e "starting tgclient... \c"
|
||
|
cd $mw_path
|
||
|
echo "python3 {$APP_PATH}/tgclient.py"
|
||
|
python3 {$APP_PATH}/tgclient.py >> {$APP_PATH}/task.log &
|
||
|
isStart=""
|
||
|
while [[ "$isStart" == "" ]];
|
||
|
do
|
||
|
echo -e ".\c"
|
||
|
sleep 0.5
|
||
|
isStart=`ps -ef|grep 'tgclient.py' |grep -v grep | awk '{print $2}'`
|
||
|
let n+=1
|
||
|
if [ $n -gt 20 ];then
|
||
|
break;
|
||
|
fi
|
||
|
done
|
||
|
if [ "$isStart" == '' ];then
|
||
|
echo -e "\033[31mfailed\033[0m"
|
||
|
echo -e "\033[31mError: tgclient service startup failed.\033[0m"
|
||
|
return;
|
||
|
fi
|
||
|
echo -e "\033[32mdone\033[0m"
|
||
|
else
|
||
|
echo "starting tgclient...(pid $(echo $isStart)) already running"
|
||
|
fi
|
||
|
}
|
||
|
|
||
|
|
||
|
tg_stop(){
|
||
|
echo -e "stopping tgclient ... \c";
|
||
|
arr=`ps aux|grep 'tgclient.py'|grep -v grep|awk '{print $2}'`
|
||
|
for p in ${arr[@]}
|
||
|
do
|
||
|
kill -9 $p > /dev/null 2>&1
|
||
|
done
|
||
|
echo -e "\033[32mdone\033[0m"
|
||
|
}
|
||
|
|
||
|
case "$1" in
|
||
|
start)
|
||
|
tg_start
|
||
|
;;
|
||
|
stop)
|
||
|
tg_stop
|
||
|
;;
|
||
|
restart|reload)
|
||
|
tg_stop
|
||
|
sleep 0.3
|
||
|
tg_start
|
||
|
;;
|
||
|
*)
|
||
|
echo "Please use start or stop as first argument"
|
||
|
;;
|
||
|
esac
|
||
|
|