update start script
This commit is contained in:
parent
9a561e66bb
commit
6e2635fe30
@ -1,133 +1,99 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
#!/bin/sh
|
||||
### BEGIN INIT INFO
|
||||
# Provides: tisbackup_gui-uwsgi
|
||||
# Required-Start: $all
|
||||
# Required-Stop: $all
|
||||
# Default-Start: 2 3 4 5
|
||||
# Default-Stop: 0 1 6
|
||||
# Short-Description: starts the uwsgi app server for tisbackup_gui
|
||||
# Description: starts uwsgi app server for tisbackup_gui using start-stop-daemon
|
||||
# Provides:
|
||||
# Required-Start: $remote_fs $syslog
|
||||
# Required-Stop: $remote_fs $syslog
|
||||
# Default-Start: 2 3 4 5
|
||||
# Default-Stop: 0 1 6
|
||||
# Short-Description: Start daemon at boot time
|
||||
# Description: Enable service provided by daemon.
|
||||
### END INIT INFO
|
||||
set -e
|
||||
|
||||
VERSION=$(basename $0)
|
||||
PATH=/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
|
||||
DAEMON=/usr/local/bin/$VERSION
|
||||
RUN=/var/run/
|
||||
NAME=$VERSION
|
||||
CONFIG_FILE=/etc/tis/tisbackup_gui.ini
|
||||
LOGFILE=/var/log/$NAME.log
|
||||
OWNER=root
|
||||
DESC=$VERSION
|
||||
OP=$1
|
||||
dir="/opt/tisbackup/"
|
||||
cmd="python tisbackup_gui.py"
|
||||
user="root"
|
||||
|
||||
DAEMON_OPTS=""
|
||||
name=`basename $0`
|
||||
pid_file="/var/run/$name.pid"
|
||||
stdout_log="/var/log/$name.log"
|
||||
stderr_log="/var/log/$name.err"
|
||||
|
||||
# Include uwsgi defaults if available
|
||||
if [[ -f /etc/default/$VERSION ]]; then
|
||||
. /etc/default/$VERSION
|
||||
fi
|
||||
|
||||
do_pid_check()
|
||||
{
|
||||
local PIDFILE=$1
|
||||
[[ -f $PIDFILE ]] || return 0
|
||||
local PID=$(cat $PIDFILE)
|
||||
for p in $(pgrep $VERSION); do
|
||||
[[ $p == $PID ]] && return 1
|
||||
done
|
||||
return 0
|
||||
get_pid() {
|
||||
cat "$pid_file"
|
||||
}
|
||||
|
||||
|
||||
do_start()
|
||||
{
|
||||
# for config in $ENABLED_CONFIGS; do
|
||||
local PIDFILE=$RUN/$NAME.pid
|
||||
if do_pid_check $PIDFILE; then
|
||||
uwsgi -d $LOGFILE --pidfile $PIDFILE --ini $CONFIG_FILE
|
||||
|
||||
# sudo -u $OWNER -i $VERSION $config $DAEMON_OPTS --pidfile $PIDFILE
|
||||
else
|
||||
echo "Already running!"
|
||||
fi
|
||||
# done
|
||||
is_running() {
|
||||
[ -f "$pid_file" ] && ps `get_pid` > /dev/null 2>&1
|
||||
}
|
||||
|
||||
send_sig()
|
||||
{
|
||||
local PIDFILE=$RUN/$NAME.pid
|
||||
set +e
|
||||
[[ -f $PIDFILE ]] && kill $1 $(cat $PIDFILE) > /dev/null 2>&1
|
||||
set -e
|
||||
}
|
||||
|
||||
wait_and_clean_pidfiles()
|
||||
{
|
||||
local PIDFILE=$RUN/$NAME.pid
|
||||
until do_pid_check $PIDFILE; do
|
||||
echo -n "";
|
||||
done
|
||||
rm -f $PIDFILE
|
||||
}
|
||||
|
||||
do_stop()
|
||||
{
|
||||
send_sig -3
|
||||
wait_and_clean_pidfiles
|
||||
}
|
||||
|
||||
do_reload()
|
||||
{
|
||||
send_sig -1
|
||||
}
|
||||
|
||||
do_force_reload()
|
||||
{
|
||||
send_sig -15
|
||||
}
|
||||
|
||||
get_status()
|
||||
{
|
||||
send_sig -10
|
||||
}
|
||||
|
||||
case "$OP" in
|
||||
case "$1" in
|
||||
start)
|
||||
echo "Starting $DESC: "
|
||||
do_start
|
||||
echo "$NAME."
|
||||
;;
|
||||
if is_running; then
|
||||
echo "Already started"
|
||||
else
|
||||
echo "Starting $name"
|
||||
cd "$dir"
|
||||
if [ -z "$user" ]; then
|
||||
sudo $cmd >> "$stdout_log" 2>> "$stderr_log" &
|
||||
else
|
||||
sudo -u "$user" $cmd >> "$stdout_log" 2>> "$stderr_log" &
|
||||
fi
|
||||
echo $! > "$pid_file"
|
||||
if ! is_running; then
|
||||
echo "Unable to start, see $stdout_log and $stderr_log"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
;;
|
||||
stop)
|
||||
echo -n "Stopping $DESC: "
|
||||
do_stop
|
||||
echo "$NAME."
|
||||
;;
|
||||
reload)
|
||||
echo -n "Reloading $DESC: "
|
||||
do_reload
|
||||
echo "$NAME."
|
||||
;;
|
||||
force-reload)
|
||||
echo -n "Force-reloading $DESC: "
|
||||
do_force_reload
|
||||
echo "$NAME."
|
||||
;;
|
||||
if is_running; then
|
||||
echo -n "Stopping $name.."
|
||||
kill `get_pid`
|
||||
for i in {1..10}
|
||||
do
|
||||
if ! is_running; then
|
||||
break
|
||||
fi
|
||||
|
||||
echo -n "."
|
||||
sleep 1
|
||||
done
|
||||
echo
|
||||
|
||||
if is_running; then
|
||||
echo "Not stopped; may still be shutting down or shutdown may have failed"
|
||||
exit 1
|
||||
else
|
||||
echo "Stopped"
|
||||
if [ -f "$pid_file" ]; then
|
||||
rm "$pid_file"
|
||||
fi
|
||||
fi
|
||||
else
|
||||
echo "Not running"
|
||||
fi
|
||||
;;
|
||||
restart)
|
||||
echo "Restarting $DESC: "
|
||||
do_stop
|
||||
sleep 3
|
||||
do_start
|
||||
echo "$NAME."
|
||||
;;
|
||||
status)
|
||||
get_status
|
||||
;;
|
||||
*)
|
||||
N=/etc/init.d/$NAME
|
||||
echo "Usage: $N {start|stop|restart|reload|force-reload|status}" >&2
|
||||
$0 stop
|
||||
if is_running; then
|
||||
echo "Unable to stop, will not attempt to start"
|
||||
exit 1
|
||||
;;
|
||||
fi
|
||||
$0 start
|
||||
;;
|
||||
status)
|
||||
if is_running; then
|
||||
echo "Running"
|
||||
else
|
||||
echo "Stopped"
|
||||
exit 1
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
echo "Usage: $0 {start|stop|restart|status}"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
exit 0
|
||||
|
||||
|
99
scripts/tisbackup_huey
Executable file
99
scripts/tisbackup_huey
Executable file
@ -0,0 +1,99 @@
|
||||
#!/bin/sh
|
||||
### BEGIN INIT INFO
|
||||
# Provides:
|
||||
# Required-Start: $remote_fs $syslog
|
||||
# Required-Stop: $remote_fs $syslog
|
||||
# Default-Start: 2 3 4 5
|
||||
# Default-Stop: 0 1 6
|
||||
# Short-Description: Start daemon at boot time
|
||||
# Description: Enable service provided by daemon.
|
||||
### END INIT INFO
|
||||
|
||||
dir="/opt/tisbackup/"
|
||||
cmd="huey_consumer.py -n tisbackup_gui.huey"
|
||||
user="root"
|
||||
|
||||
name=`basename $0`
|
||||
pid_file="/var/run/$name.pid"
|
||||
stdout_log="/var/log/$name.log"
|
||||
stderr_log="/var/log/$name.err"
|
||||
|
||||
get_pid() {
|
||||
cat "$pid_file"
|
||||
}
|
||||
|
||||
is_running() {
|
||||
[ -f "$pid_file" ] && ps `get_pid` > /dev/null 2>&1
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
if is_running; then
|
||||
echo "Already started"
|
||||
else
|
||||
echo "Starting $name"
|
||||
cd "$dir"
|
||||
if [ -z "$user" ]; then
|
||||
sudo $cmd >> "$stdout_log" 2>> "$stderr_log" &
|
||||
else
|
||||
sudo -u "$user" $cmd >> "$stdout_log" 2>> "$stderr_log" &
|
||||
fi
|
||||
echo $! > "$pid_file"
|
||||
if ! is_running; then
|
||||
echo "Unable to start, see $stdout_log and $stderr_log"
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
;;
|
||||
stop)
|
||||
if is_running; then
|
||||
echo -n "Stopping $name.."
|
||||
kill `get_pid`
|
||||
for i in {1..10}
|
||||
do
|
||||
if ! is_running; then
|
||||
break
|
||||
fi
|
||||
|
||||
echo -n "."
|
||||
sleep 1
|
||||
done
|
||||
echo
|
||||
|
||||
if is_running; then
|
||||
echo "Not stopped; may still be shutting down or shutdown may have failed"
|
||||
exit 1
|
||||
else
|
||||
echo "Stopped"
|
||||
if [ -f "$pid_file" ]; then
|
||||
rm "$pid_file"
|
||||
fi
|
||||
fi
|
||||
else
|
||||
echo "Not running"
|
||||
fi
|
||||
;;
|
||||
restart)
|
||||
$0 stop
|
||||
if is_running; then
|
||||
echo "Unable to stop, will not attempt to start"
|
||||
exit 1
|
||||
fi
|
||||
$0 start
|
||||
;;
|
||||
status)
|
||||
if is_running; then
|
||||
echo "Running"
|
||||
else
|
||||
echo "Stopped"
|
||||
exit 1
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
echo "Usage: $0 {start|stop|restart|status}"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
exit 0
|
||||
|
Loading…
Reference in New Issue
Block a user