LibreCat/LibreCat

View on GitHub
etc/librecat-workers.initd

Summary

Maintainability
Test Coverage
#!/bin/sh
#
# chkconfig: 345 99 01
# description: Librecat application Audit
#

. /etc/rc.d/init.d/functions
. /etc/sysconfig/network

[ "$NETWORKING" = "no" ] && exit 0

SCRIPT="$(basename $0)"

CARTON=/home/vagrant/.plenv/shims/carton
SERVER_USER="vagrant"
SERVER_GROUP="vagrant"
LIBRECAT_DIR="/home/vagrant/LibreCat"
# If a config.yml is in a layers directory, use this line:
# LIBRECAT_LAYERS="/opt/librecat-ugent"

lock_file=/var/lock/subsys/workers.librecat

do_start()
{
        if [ ! -f "$lock_file" ] ; then
                cd $LIBRECAT_DIR
                echo -n $"Starting ${SCRIPT}: "
                sudo -u ${SERVER_USER} -g ${SERVER_GROUP} $CARTON exec "LIBRECAT_LAYERS=${LIBRECAT_LAYERS} bin/librecat queue start" > /dev/null 2>&1
                RETVAL=$?
                if [ $RETVAL -eq 0 ]; then
                    touch $lock_file
                    echo_success
                else
                    echo_failure
                fi
                echo
        else
                echo "$SCRIPT is locked."
                RETVAL=1
        fi
}

do_stop()
{
        cd $LIBRECAT_DIR
        echo -n $"Stopping $SCRIPT: "
        sudo -u ${SERVER_USER} -g ${SERVER_GROUP} $CARTON exec "LIBRECAT_LAYERS=${LIBRECAT_LAYERS} bin/librecat queue stop" > /dev/null 2>&1
        RETVAL=$?
        if [ $RETVAL -eq 0 ]; then
           touch $lock_file
           rm -f $lock_file
           echo_success
        else
           echo_failure
        fi
        echo
}

do_status()
{
        cd $LIBRECAT_DIR
        sudo -u ${SERVER_USER} -g ${SERVER_GROUP} $CARTON exec "LIBRECAT_LAYERS=${LIBRECAT_LAYERS} bin/librecat queue status"
}

case "$1" in
        start)
                do_start
                ;;
        stop)
                do_stop
                ;;
        restart)
                do_stop
                do_start
                ;;
        status)
                do_status
                ;;
        *)
                echo "Usage: $0 {start|stop|restart|status}"
                RETVAL=1
esac

exit $RETVAL