diff uwsgi.init @ 0:9668c317e887

Initial revision
author Guido Berhoerster <guido+packaging@berhoerster.name>
date Wed, 10 Jul 2013 19:23:16 +0200
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/uwsgi.init	Wed Jul 10 19:23:16 2013 +0200
@@ -0,0 +1,118 @@
+#!/bin/sh
+#
+# uwsgi - Manages uWSGI application container server instances
+#
+# chkconfig:   - 20 80
+# description: uWSGI Emperor for managing uWSGI application container server \
+#              instances
+
+### BEGIN INIT INFO
+# Provides: uwsgi
+# Required-Start: $local_fs $network $remote_fs
+# Required-Stop: $local_fs $network $remote_fs
+# Should-Start:
+# Should-Stop:
+# Default-Start:
+# Default-Stop: 0 1 2 3 4 5 6
+# Short-Description: uWSGI emperor
+# Description: uWSGI Emperor for managing uWSGI application container server
+#              instances
+### END INIT INFO
+
+# Source function library.
+. /etc/rc.d/init.d/functions
+
+exec="/usr/sbin/uwsgi"
+prog="$(basename "$exec")"
+config="/etc/uwsgi.ini"
+
+lockfile=/var/lock/subsys/$prog
+rundir=/var/run/$prog
+pidfile=$rundir/$prog.pid
+
+start() {
+    mkdir -p $rundir
+    chown uwsgi:uwsgi $rundir
+    [ -x $exec ] || exit 5
+    [ -f $config ] || exit 6
+    echo -n $"Starting $prog: "
+    daemon --pidfile=$pidfile $exec --ini /etc/uwsgi.ini 2>/dev/null
+    retval=$?
+    if [ $retval -eq 0 ]; then
+        touch $lockfile
+        success
+    else
+        retval=1
+        failure
+    fi
+    echo
+    return $retval
+}
+
+stop() {
+    echo -n $"Stopping $prog: "
+    killproc -p $pidfile $prog -QUIT
+    retval=$?
+    echo
+    [ $retval -eq 0 ] && rm -f $lockfile
+    return $retval
+}
+
+restart() {
+    stop
+    start
+}
+
+reload() {
+    echo -n $"Reloading $prog: "
+    killproc -p $pidfile $prog -HUP
+    retval=$?
+    echo
+    return $retval
+}
+
+force_reload() {
+    restart
+}
+
+rh_status() {
+    # run checks to determine if the service is running or use generic status
+    status $prog
+}
+
+rh_status_q() {
+    rh_status >/dev/null 2>&1
+}
+
+
+case "$1" in
+    start)
+        rh_status_q && exit 0
+        $1
+        ;;
+    stop)
+        rh_status_q || exit 0
+        $1
+        ;;
+    restart)
+        $1
+        ;;
+    reload)
+        rh_status_q || exit 7
+        $1
+        ;;
+    force-reload)
+        force_reload
+        ;;
+    status)
+        rh_status
+        ;;
+    condrestart|try-restart)
+        rh_status_q || exit 0
+        restart
+        ;;
+    *)
+        echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload}"
+        exit 2
+esac
+exit $?