diff options
Diffstat (limited to 'network/hiawatha/rc.hiawatha')
-rw-r--r-- | network/hiawatha/rc.hiawatha | 63 |
1 files changed, 63 insertions, 0 deletions
diff --git a/network/hiawatha/rc.hiawatha b/network/hiawatha/rc.hiawatha new file mode 100644 index 0000000000..1911cc3d5b --- /dev/null +++ b/network/hiawatha/rc.hiawatha @@ -0,0 +1,63 @@ +#!/bin/sh + +# Start/stop/restart the hiawatha web server +# Copyright (c) 2009 Antonio Hernández Blas <hba.nihilismus@gmail.com> + +CONF='/etc/hiawatha' +CMMD="/usr/sbin/hiawatha -c $CONF" + +hiawatha_start() { + if [ -x /usr/sbin/hiawatha ]; then + if [ -d $CONF ]; then + PIDOF=$(pgrep -f "$CMMD") + if [ ! -z "$PIDOF" ]; then + echo "Error, hiawatha is already running." + else + echo "Starting hiawatha: $CMMD" + $CMMD + fi + else + echo "Error, directory $CONF does not exist." + fi + fi +} + +hiawatha_stop() { + PIDOF=$(pgrep -f "$CMMD") + if [ -z "$PIDOF" ]; then + echo "Error, hiawatha is not running." + else + echo "Stoping hiawatha: kill $PIDOF" + kill $PIDOF + fi +} + +hiawatha_status() { + PIDOF=$(pgrep -f "$CMMD") + if [ ! -z "$PIDOF" ]; then + echo "hiawatha is running." + else + echo "hiawatha is not running." + fi +} + +case $1 in + start) + hiawatha_start + ;; + stop) + hiawatha_stop + ;; + restart) + hiawatha_stop + sleep 1 + hiawatha_start + ;; + status) + hiawatha_status + ;; + *) + echo "Usage $0 {start|stop|restart|status}" + exit 1 + ;; +esac |