From b0bf89e31915dae0672505d125946232e26cef34 Mon Sep 17 00:00:00 2001 From: Badlop Date: Tue, 24 May 2011 23:46:25 +0200 Subject: [PATCH] Several fixes and improvements in ejabberd.init.template Changes: * Set script as executable * Add LSB tags and overrides, copied from Debian's ejabberd package * Add chkconfig support (thanks to Ivan Martinez)(EJAB-1450) * Don't use nounset, as that breaks when no argument is provided * Add status command --- src/Makefile.in | 1 + src/ejabberd.init.template | 25 +++++++++++++++++++++---- 2 files changed, 22 insertions(+), 4 deletions(-) diff --git a/src/Makefile.in b/src/Makefile.in index c52744f51..591020c89 100644 --- a/src/Makefile.in +++ b/src/Makefile.in @@ -196,6 +196,7 @@ install: all sed -e "s*@ctlscriptpath@*$(SBINDIR)*" \ -e "s*@installuser@*$(INIT_USER)*" ejabberd.init.template \ > ejabberd.init + chmod 555 ejabberd.init # # Binary Erlang files install -d $(BEAMDIR) diff --git a/src/ejabberd.init.template b/src/ejabberd.init.template index 6659557b6..ef691e4b3 100644 --- a/src/ejabberd.init.template +++ b/src/ejabberd.init.template @@ -1,6 +1,20 @@ #! /bin/sh + +### BEGIN INIT INFO +# Provides: ejabberd +# Required-Start: $remote_fs $network $named $time +# Required-Stop: $remote_fs $network $named $time +# Default-Start: 2 3 4 5 +# Default-Stop: 0 1 6 +# Short-Description: Starts ejabberd jabber server +# Description: Starts ejabberd jabber server, an XMPP +# compliant server written in Erlang. +### END INIT INFO + +# chkconfig: 2345 90 10 +# description: ejabberd XMPP server + set -o errexit -set -o nounset DIR=@ctlscriptpath@ CTL="$DIR"/ejabberdctl @@ -32,14 +46,17 @@ case "$1" in su - $USER -c "$CTL stopped" echo "done." ;; - + status) + test -x "$CTL" || exit 0 + echo "Getting ejabberd status..." + su - $USER -c "$CTL status" + ;; force-reload|restart) "$0" stop "$0" start ;; - *) - echo "Usage: $0 {start|stop|restart|force-reload}" + echo "Usage: $0 {start|stop|restart|force-reload|status}" exit 1 esac