#!/bin/sh # # unitd NGINX Unit # # chkconfig: - 86 14 # description: NGINX Unit ### BEGIN INIT INFO # Provides: unitd # Required-Start: $local_fs $network $named $syslog # Required-Stop: $local_fs $network $named $syslog # Default-Start: # Default-Stop: 0 1 2 3 4 5 6 # Short-Description: NGINX Unit # Description: NGINX Unit ### END INIT INFO # Source function library. . /etc/rc.d/init.d/functions exec="/usr/sbin/unitd" prog="unitd" config="/etc/unit/unit.conf" if [ -n "$2" ]; then config=$2 fi [ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog lockfile=/var/lock/subsys/$prog start() { [ -x $exec ] || exit 5 echo -n $"Starting $prog: " daemon $exec $UNITD_OPTIONS retval=$? echo [ $retval -eq 0 ] && touch $lockfile return $retval } stop() { echo -n $"Stopping $prog: " killproc $prog retval=$? echo [ $retval -eq 0 ] && rm -f $lockfile return $retval } restart() { stop start } rh_status() { status $prog } rh_status_q() { rh_status &>/dev/null } case "$1" in start) rh_status_q && exit 0 $1 ;; stop) rh_status_q || exit 0 $1 ;; restart) $1 ;; reload|force-reload) echo "Not implemented." >&2 exit 1 ;; status) rh_status ;; condrestart|try-restart) rh_status_q || exit 0 restart ;; saveconfig) curl -sS --unix-socket /var/run/control.unit.sock localhost >${config}.new if [ $? -ne 0 ]; then echo "Could not retreive configuration" >&2 rm -f ${config}.new exit 1 fi mv ${config}.new ${config} echo "The following configuration has been saved to ${config}:" cat ${config} ;; loadconfig) if [ ! -e ${config} ]; then echo "Could not find ${config} for loading" >&2 exit 1 fi echo "Loading configuration from ${config}..." curl -sS -X PUT --data-binary @${config} --unix-socket /var/run/control.unit.sock localhost if [ $? -ne 0 ]; then echo "Loading failed!" >&2 exit 1 fi ;; *) echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|saveconfig|loadconfig}" exit 2 esac exit $?