Browse Source

use /usr/sbin scripts for init.d and add missing kazoo core scripts

4.0
karl anderson 10 years ago
parent
commit
fd2a6d44e4
6 changed files with 504 additions and 277 deletions
  1. +15
    -20
      system/init.d/kazoo-bigcouch.redhat
  2. +49
    -49
      system/init.d/kazoo-freeswitch.redhat
  3. +50
    -169
      system/init.d/kazoo-generic.redhat
  4. +40
    -39
      system/init.d/kazoo-haproxy.redhat
  5. +175
    -0
      system/sbin/kazoo-applications
  6. +175
    -0
      system/sbin/kazoo-ecallmgr

+ 15
- 20
system/init.d/kazoo-bigcouch.redhat View File

@ -13,37 +13,32 @@ LOCK_FILE=${LOCK_FILE:-/var/lock/subsys/kazoo-bigcouch}
. /etc/init.d/functions . /etc/init.d/functions
if [ -f /etc/sysconfig/bigcouch ]; then
. /etc/sysconfig/bigcouch
fi
if [ "${NETWORKING}" = "no" ]; then
exit 0
fi
[ -f /opt/bigcouch/bin/BigCouch ] || exit 0
start() { start() {
RETVAL=1
echo -n $"Starting BigCouch: " echo -n $"Starting BigCouch: "
/usr/sbin/kazoo-bigcouch start
/usr/sbin/kazoo-bigcouch start >/dev/null 2>&1
RETVAL=$? RETVAL=$?
echo
[ ${RETVAL} -eq 0 ] && touch ${LOCK_FILE}
if [ ${RETVAL} -eq 0 ]; then
touch ${LOCK_FILE}
success $"OK"
echo
else
failure $"Bigcouch is already running or failed to start!"
echo
fi
} }
stop() { stop() {
RETVAL=1
echo -n $"Stopping BigCouch: " echo -n $"Stopping BigCouch: "
/usr/sbin/kazoo-bigcouch stop
/usr/sbin/kazoo-bigcouch stop >/dev/null 2>&1
RETVAL=$? RETVAL=$?
if [ ${RETVAL} -eq 0 ]; then if [ ${RETVAL} -eq 0 ]; then
rm -f ${LOCK_FILE} ${pidfile} rm -f ${LOCK_FILE} ${pidfile}
success
success $"OK"
echo
else else
failure
failure $"Bigcouch is still running!"
echo
fi fi
echo
} }
status() { status() {
@ -77,4 +72,4 @@ case "$1" in
RETVAL=1 RETVAL=1
esac esac
exit $RETVAL
exit ${RETVAL}

+ 49
- 49
system/init.d/kazoo-freeswitch.redhat View File

@ -18,75 +18,75 @@ LOCK_FILE=/var/lock/subsys/kazoo-freeswitch
. /etc/init.d/functions . /etc/init.d/functions
if [ -f /etc/sysconfig/freeswitch ]; then
. /etc/sysconfig/freeswitch
fi
start() { start() {
echo -n "Starting FreeSWITCH: " echo -n "Starting FreeSWITCH: "
if [ -e $LOCK_FILE ]; then
if [ -e $PID_FILE ] && [ -e /proc/`cat $PID_FILE` ]; then
echo
echo -n $"FreeSWITCH is already running.";
if [ -e ${LOCK_FILE} ]; then
if [ -e ${PID_FILE} ] && [ -e /proc/`cat ${PID_FILE}` ]; then
failure $"FreeSWITCH is already running."; failure $"FreeSWITCH is already running.";
echo echo
return 1 return 1
fi fi
fi fi
daemon --user $FS_USER --pidfile ${PID_FILE} "/usr/sbin/kazoo-freeswitch start >/dev/null 2>&1"
daemon --user ${FS_USER} --pidfile ${PID_FILE} "/usr/sbin/kazoo-freeswitch start >/dev/null 2>&1"
RETVAL=$? RETVAL=$?
echo
[ $RETVAL -eq 0 ] && touch $LOCK_FILE;
echo
return $RETVAL
if [ ${RETVAL} -eq 0 ]; then
touch ${LOCK_FILE}
success $"OK"
echo
else
failure $"FreeSWITCH is already running or failed to start!"
echo
fi
} }
stop() { stop() {
echo -n "Shutting down FreeSWITCH: " echo -n "Shutting down FreeSWITCH: "
if [ ! -e $LOCK_FILE ]; then
echo
echo -n $"cannot stop FreeSWITCH: FreeSWITCH is not running."
failure $"cannot stop FreeSWITCH: FreeSWITCH is not running."
if [ ! -e ${LOCK_FILE} ]; then
failure $"Unable to stop FreeSWITCH: FreeSWITCH is not running."
echo echo
return 1; return 1;
fi fi
/usr/sbin/kazoo-freeswitch stop
/usr/sbin/kazoo-freeswitch stop >/dev/null 2>&1
RETVAL=$? RETVAL=$?
echo
[ $RETVAL -eq 0 ] && rm -f $LOCK_FILE;
return $RETVAL
if [ ${RETVAL} -eq 0 ]; then
rm -f ${LOCK_FILE} ${pidfile}
success $"OK"
echo
else
failure $"FreeSWITCH is still running!"
echo
fi
} }
rhstatus() {
status FreeSWITCH;
status() {
/usr/sbin/kazoo-freeswitch status
RETVAL=$?
}
restart() {
stop
start
} }
case "$1" in case "$1" in
start)
start
;;
stop)
stop
;;
status)
status FreeSWITCH
RETVAL=$?
;;
restart)
stop
start
;;
reload)
# <cause the service configuration to be reread, either with
# kill -HUP or by restarting the daemons, in a manner similar
# to restart above>
;;
condrestart)
[ -f $PID_FILE ] && restart || :
;;
*)
echo "Usage: FreeSWITCH {start|stop|status|reload|restart}"
exit 1
;;
start)
start
;;
stop)
stop
;;
status)
status
;;
restart|reload)
restart
;;
condrestart)
[ ! -e ${LOCK_FILE} ] && restart
;;
*)
echo $"Usage: $0 (start|stop|restart|status)"
RETVAL=1
esac esac
exit ${RETVAL} exit ${RETVAL}

+ 50
- 169
system/init.d/kazoo-generic.redhat View File

@ -7,192 +7,73 @@
# processname: kazoo # processname: kazoo
# #
# Source function library.
. /etc/rc.d/init.d/functions
NAME=$(basename $0)
KAZOO_ROOT="/opt/kazoo"
KAZOO_BIN="${KAZOO_ROOT}/bin/kazoo"
USER="kazoo"
SWITCH_USER="su ${USER} -s /bin/bash -c"
test -x ${KAZOO_BIN} || exit 0
RETVAL=0 RETVAL=0
set -e
[ -f /etc/default/${NAME} ] && . /etc/default/${NAME}
SCRIPT_NAME=`basename "$0"`
LOCK_FILE=${LOCK_FILE:-/var/lock/subsys/${SCRIPT_NAME}}
[ -f /etc/sysconfig/${NAME} ] && . /etc/sysconfig/${NAME}
. /etc/init.d/functions
if [ "${NAME}" == "kazoo-applications" ]; then
NAME="kazoo_apps"
else
NAME=${NAME#*-}
fi
# export
export HOME="${KAZOO_ROOT}"
export NAME_ARG="-name ${NAME}"
export VMARGS_PATH=/etc/kazoo/core/vm.args
# Check that networking is up.
if [ "${NETWORKING}" = "no" ]; then if [ "${NETWORKING}" = "no" ]; then
exit 0
exit 0
fi fi
start() { start() {
echo -n $"Starting ${NAME}: "
if ${SWITCH_USER} "${KAZOO_BIN} pid" > /dev/null 2>&1; then
failure
echo
RETVAL=1
return
fi
cd ${KAZOO_ROOT}
export CODE_LOADING_MODE=interactive
mkdir -p /tmp/erl_pipes/${NAME}
chown ${USER} /tmp/erl_pipes/${NAME}
mkdir -p /var/log/kazoo
chown ${USER} /var/log/kazoo
chown ${USER} -R /opt/kazoo /opt/kazoo/.*
${SWITCH_USER} "${KAZOO_BIN} start" > /dev/null 2>&1;
WAIT_TIME=0
until ${SWITCH_USER} "${KAZOO_BIN} pid" > /dev/null 2>&1 || [ $NEXT_WAIT_TIME -eq 4 ]; do
sleep $(( NEXT_WAIT_TIME++ ))
done
if ${SWITCH_USER} "${KAZOO_BIN} pid" > /dev/null 2>&1; then
success
else
failure
RETVAL=1
fi
echo
echo -n $"Starting ${SCRIPT_NAME}: "
/usr/sbin/${SCRIPT_NAME} start >/dev/null 2>&1
RETVAL=$?
if [ ${RETVAL} -eq 0 ]; then
touch ${LOCK_FILE}
success $"OK"
echo
else
failure $"Kazoo ${SCRIPT_NAME#*-} is already running or failed to start!"
echo
fi
} }
stop() { stop() {
echo -n $"Stopping ${NAME}: "
cd ${KAZOO_ROOT}
${SWITCH_USER} "${KAZOO_BIN} stop" > /dev/null 2>&1;
if ${SWITCH_USER} "${KAZOO_BIN} pid" > /dev/null 2>&1; then
failure
RETVAL=1
else
success
fi
echo
}
restart() {
stop
start
echo -n $"Stopping ${SCRIPT_NAME}: "
/usr/sbin/${SCRIPT_NAME} stop >/dev/null 2>&1
RETVAL=$?
if [ ${RETVAL} -eq 0 ]; then
rm -f ${LOCK_FILE} ${pidfile}
success $"OK"
echo
else
failure $"Kazoo ${SCRIPT_NAME#*-} is still running!"
echo
fi
} }
status() { status() {
cd ${KAZOO_ROOT}
${SWITCH_USER} "${KAZOO_BIN} eval 'kz_nodes:status().'" | sed \$d
if [ $? != 0 ]; then
(>&2 echo "${NAME} is not running!")
RETVAL=1
fi
}
connect() {
cd ${KAZOO_ROOT}
COOKIE=`${SWITCH_USER} "${KAZOO_BIN} eval 'erlang:get_cookie()'"`
export COOKIE_ARG="-setcookie ${COOKIE}"
${SWITCH_USER} "${KAZOO_BIN} remote_console"
if [ $? != 0 ]; then
(>&2 echo "${NAME} is not running!")
RETVAL=1
fi
}
attach() {
cd ${KAZOO_ROOT}
${SWITCH_USER} "${KAZOO_BIN} attach"
if [ $? != 0 ]; then
(>&2 echo "${NAME} is not running!")
RETVAL=1
fi
/usr/sbin/${SCRIPT_NAME} status
RETVAL=$?
} }
ping() {
cd ${KAZOO_ROOT}
COOKIE=`${SWITCH_USER} "${KAZOO_BIN} eval 'erlang:get_cookie()'"`
export COOKIE_ARG="-setcookie ${COOKIE}"
${SWITCH_USER} "${KAZOO_BIN} ping"
if [ $? != 0 ]; then
(>&2 echo "${NAME} is not running!")
RETVAL=1
fi
}
pid() {
cd ${KAZOO_ROOT}
COOKIE=`${SWITCH_USER} "${KAZOO_BIN} eval 'erlang:get_cookie()'"`
export COOKIE_ARG="-setcookie ${COOKIE}"
${SWITCH_USER} "${KAZOO_BIN} pid"
if [ $? != 0 ]; then
(>&2 echo "${NAME} is not running!")
RETVAL=1
fi
}
foreground() {
cd ${KAZOO_ROOT}
export CODE_LOADING_MODE=interactive
${SWITCH_USER} "${KAZOO_BIN} foreground"
}
console() {
cd ${KAZOO_ROOT}
export CODE_LOADING_MODE=interactive
${SWITCH_USER} "${KAZOO_BIN} console"
restart() {
stop
start
} }
case "$1" in case "$1" in
start)
start
;;
stop)
stop
;;
status)
status
;;
restart)
restart
;;
connect)
connect
;;
attach)
attach
;;
ping)
ping
;;
pid)
pid
;;
foreground)
foreground
;;
console)
console
;;
*)
echo $"Usage: $0 (start|stop|restart|status|connect|attach|ping|pid|foreground|console)"
exit 1
start)
start
;;
stop)
stop
;;
status)
status
;;
restart|reload)
restart
;;
condrestart)
[ ! -e ${LOCK_FILE} ] && restart
;;
*)
echo $"Usage: $0 (start|stop|restart|status)"
RETVAL=1
esac esac
exit $RETVAL
exit ${RETVAL}

+ 40
- 39
system/init.d/kazoo-haproxy.redhat View File

@ -15,65 +15,66 @@ LOCK_FILE=/var/lock/subsys/kazoo-haproxy
. /etc/rc.d/init.d/functions . /etc/rc.d/init.d/functions
. /etc/sysconfig/network
[ "$NETWORKING" = "no" ] && exit 0
start() { start() {
RETVAL=1
echo -n $"Starting HAProxy: "
/usr/sbin/kazoo-haproxy start
RETVAL=$?
echo
[ ${RETVAL} -eq 0 ] && touch ${LOCK_FILE}
echo -n $"Starting HAProxy: "
/usr/sbin/kazoo-haproxy start >/dev/null 2>&1
RETVAL=$?
if [ ${RETVAL} -eq 0 ]; then
touch ${LOCK_FILE}
success $"OK"
echo
else
failure $"HAProxy is already running or failed to start!"
echo
fi
} }
stop() { stop() {
RETVAL=1
echo -n $"Stopping HAProxy: "
/usr/sbin/kazoo-haproxy stop
RETVAL=$?
echo -n $"Stopping HAProxy: "
/usr/sbin/kazoo-haproxy stop >/dev/null 2>&1
RETVAL=$?
if [ ${RETVAL} -eq 0 ]; then if [ ${RETVAL} -eq 0 ]; then
rm -f ${LOCK_FILE} ${pidfile} rm -f ${LOCK_FILE} ${pidfile}
success
success $"OK"
echo
else else
failure
failure $"HAProxy is still running!"
echo
fi fi
echo
} }
status() { status() {
/usr/sbin/kazoo-haproxy status
RETVAL=$?
/usr/sbin/kazoo-haproxy status
RETVAL=$?
} }
restart() { restart() {
stop
start
stop
start
} }
case "$1" in case "$1" in
start|stop|restart|reload)
$1
;;
force-reload)
restart
;;
reload)
/usr/sbin/kazoo-haproxy reload
start)
start
;;
stop)
stop
;;
status)
status
;;
check) check)
/usr/sbin/kazoo-haproxy check /usr/sbin/kazoo-haproxy check
;; ;;
status)
/usr/sbin/kazoo-haproxy status
;;
condrestart|try-restart)
[ ! -f $lockfile ] || restart
;;
*)
echo $"Usage: $0 {start|stop|status|restart|try-restart|reload|force-reload}"
RETVAL=1
restart|reload)
restart
;;
condrestart)
[ ! -e ${LOCK_FILE} ] && restart
;;
*)
echo $"Usage: $0 (start|stop|restart|status|check)"
RETVAL=1
esac esac
exit ${RETVAL} exit ${RETVAL}

+ 175
- 0
system/sbin/kazoo-applications View File

@ -0,0 +1,175 @@
#!/bin/bash
if [ -f /etc/default/kazoo ]; then
. /etc/default/kazoo
fi
RETVAL=0
NAME=kazoo-applications
USER=${KAZOO_USER:-kazoo}
BIN_FILE=${BIN_FILE:-/opt/kazoo/bin/kazoo}
export HOME=${KAZOO_ROOT:-/opt/kazoo}
export VMARGS_PATH=${KAZOO_VMARGS:-/etc/kazoo/core/vm.args}
if [ -f /etc/sysconfig/kazoo ]; then
. /etc/sysconfig/kazoo
fi
if [ "${NAME}" == "kazoo-applications" ]; then
NAME="kazoo_apps"
else
NAME=${NAME#*-}
fi
export NAME_ARG="-name ${NAME}"
start() {
cd ${HOME}
if su -s /bin/bash -c "${BIN_FILE} pid" ${USER} > /dev/null 2>&1; then
RETVAL=1
return
fi
mkdir -p /tmp/erl_pipes/${NAME}
chown -R ${USER} /tmp/erl_pipes/${NAME}
mkdir -p /var/log/kazoo
chown -R ${USER} /var/log/kazoo
chown -R ${USER} /opt/kazoo /opt/kazoo/.*
cd ${HOME}
export CODE_LOADING_MODE=interactive
if [ "$(whoami)" == "${USER}" ]; then
exec ${BIN_FILE} $@
else
exec su -s /bin/bash -c "${BIN_FILE} $@" ${USER}
fi
WAIT_TIME=0
until su -s /bin/bash -c "${BIN_FILE} pid" ${USER} > /dev/null 2>&1 || [ ${WAIT_TIME} -eq 4 ]; do
sleep $(( WAIT_TIME++ ))
done
if ! su -s /bin/bash -c "${BIN_FILE} pid" ${USER} > /dev/null 2>&1; then
RETVAL=1
fi
}
stop() {
cd ${HOME}
su -s /bin/bash -c "${BIN_FILE} stop" ${USER}
if su -s /bin/bash -c "${BIN_FILE} pid" ${USER} > /dev/null 2>&1; then
RETVAL=1
fi
}
restart() {
stop
start
}
status() {
cd ${HOME}
su -s /bin/bash -c "${BIN_FILE} eval 'kz_nodes:status().'" ${USER} | sed \$d
if [ $? != 0 ]; then
(>&2 echo "${NAME} is not running!")
RETVAL=1
fi
}
connect() {
cd ${HOME}
COOKIE=`su -s /bin/bash -c "${BIN_FILE} eval 'erlang:get_cookie()'" ${USER}`
export COOKIE_ARG="-setcookie ${COOKIE}"
su -s /bin/bash -c "${BIN_FILE} remote_console" ${USER}
if [ $? != 0 ]; then
(>&2 echo "${NAME} is not running!")
RETVAL=1
fi
}
attach() {
cd ${HOME}
su -s /bin/bash -c "${BIN_FILE} attach" ${USER}
if [ $? != 0 ]; then
(>&2 echo "${NAME} is not running!")
RETVAL=1
fi
}
ping() {
cd ${HOME}
COOKIE=`su -s /bin/bash -c "${BIN_FILE} eval 'erlang:get_cookie()'" ${USER}`
export COOKIE_ARG="-setcookie ${COOKIE}"
su -s /bin/bash -c "${BIN_FILE} ping" ${USER}
if [ $? != 0 ]; then
(>&2 echo "${NAME} is not running!")
RETVAL=1
fi
}
pid() {
cd ${HOME}
COOKIE=`su -s /bin/bash -c "${BIN_FILE} eval 'erlang:get_cookie()'" ${USER}`
export COOKIE_ARG="-setcookie ${COOKIE}"
su -s /bin/bash -c "${BIN_FILE} pid" ${USER}
if [ $? != 0 ]; then
(>&2 echo "${NAME} is not running!")
RETVAL=1
fi
}
foreground() {
cd ${HOME}
export CODE_LOADING_MODE=interactive
su -s /bin/bash -c "${BIN_FILE} foreground" ${USER}
}
case "$1" in
start)
start "start"
;;
stop)
stop
;;
status)
status
;;
restart)
restart
;;
connect)
connect
;;
attach)
attach
;;
ping)
ping
;;
pid)
pid
;;
foreground)
foreground
;;
*)
echo "Usage: $0 (start|stop|restart|status|connect|attach|ping|pid|foreground)"
RETVAL=1
esac
exit ${RETVAL}

+ 175
- 0
system/sbin/kazoo-ecallmgr View File

@ -0,0 +1,175 @@
#!/bin/bash
if [ -f /etc/default/kazoo ]; then
. /etc/default/kazoo
fi
RETVAL=0
NAME=kazoo-ecallmgr
USER=${KAZOO_USER:-kazoo}
BIN_FILE=${BIN_FILE:-/opt/kazoo/bin/kazoo}
export HOME=${KAZOO_ROOT:-/opt/kazoo}
export VMARGS_PATH=${KAZOO_VMARGS:-/etc/kazoo/core/vm.args}
if [ -f /etc/sysconfig/kazoo ]; then
. /etc/sysconfig/kazoo
fi
if [ "${NAME}" == "kazoo-applications" ]; then
NAME="kazoo_apps"
else
NAME=${NAME#*-}
fi
export NAME_ARG="-name ${NAME}"
start() {
cd ${HOME}
if su -s /bin/bash -c "${BIN_FILE} pid" ${USER} > /dev/null 2>&1; then
RETVAL=1
return
fi
mkdir -p /tmp/erl_pipes/${NAME}
chown -R ${USER} /tmp/erl_pipes/${NAME}
mkdir -p /var/log/kazoo
chown -R ${USER} /var/log/kazoo
chown -R ${USER} /opt/kazoo /opt/kazoo/.*
cd ${HOME}
export CODE_LOADING_MODE=interactive
if [ "$(whoami)" == "${USER}" ]; then
exec ${BIN_FILE} $@
else
exec su -s /bin/bash -c "${BIN_FILE} $@" ${USER}
fi
WAIT_TIME=0
until su -s /bin/bash -c "${BIN_FILE} pid" ${USER} > /dev/null 2>&1 || [ ${WAIT_TIME} -eq 4 ]; do
sleep $(( WAIT_TIME++ ))
done
if ! su -s /bin/bash -c "${BIN_FILE} pid" ${USER} > /dev/null 2>&1; then
RETVAL=1
fi
}
stop() {
cd ${HOME}
su -s /bin/bash -c "${BIN_FILE} stop" ${USER}
if su -s /bin/bash -c "${BIN_FILE} pid" ${USER} > /dev/null 2>&1; then
RETVAL=1
fi
}
restart() {
stop
start
}
status() {
cd ${HOME}
su -s /bin/bash -c "${BIN_FILE} eval 'kz_nodes:status().'" ${USER} | sed \$d
if [ $? != 0 ]; then
(>&2 echo "${NAME} is not running!")
RETVAL=1
fi
}
connect() {
cd ${HOME}
COOKIE=`su -s /bin/bash -c "${BIN_FILE} eval 'erlang:get_cookie()'" ${USER}`
export COOKIE_ARG="-setcookie ${COOKIE}"
su -s /bin/bash -c "${BIN_FILE} remote_console" ${USER}
if [ $? != 0 ]; then
(>&2 echo "${NAME} is not running!")
RETVAL=1
fi
}
attach() {
cd ${HOME}
su -s /bin/bash -c "${BIN_FILE} attach" ${USER}
if [ $? != 0 ]; then
(>&2 echo "${NAME} is not running!")
RETVAL=1
fi
}
ping() {
cd ${HOME}
COOKIE=`su -s /bin/bash -c "${BIN_FILE} eval 'erlang:get_cookie()'" ${USER}`
export COOKIE_ARG="-setcookie ${COOKIE}"
su -s /bin/bash -c "${BIN_FILE} ping" ${USER}
if [ $? != 0 ]; then
(>&2 echo "${NAME} is not running!")
RETVAL=1
fi
}
pid() {
cd ${HOME}
COOKIE=`su -s /bin/bash -c "${BIN_FILE} eval 'erlang:get_cookie()'" ${USER}`
export COOKIE_ARG="-setcookie ${COOKIE}"
su -s /bin/bash -c "${BIN_FILE} pid" ${USER}
if [ $? != 0 ]; then
(>&2 echo "${NAME} is not running!")
RETVAL=1
fi
}
foreground() {
cd ${HOME}
export CODE_LOADING_MODE=interactive
su -s /bin/bash -c "${BIN_FILE} foreground" ${USER}
}
case "$1" in
start)
start "start"
;;
stop)
stop
;;
status)
status
;;
restart)
restart
;;
connect)
connect
;;
attach)
attach
;;
ping)
ping
;;
pid)
pid
;;
foreground)
foreground
;;
*)
echo "Usage: $0 (start|stop|restart|status|connect|attach|ping|pid|foreground)"
RETVAL=1
esac
exit ${RETVAL}

Loading…
Cancel
Save