#!/bin/bash
#
# Startup script for docker-distribution
#


DESC="Docker Distribution aka Docker Registry"
SERVICE="docker-distribution.service"
PIDFILE="/var/run/docker-distribution.pid"


status()
{
    if [ "`systemctl is-active docker-distribution.service`" = "active" ]; then
        RETVAL=0
        echo "$DESC is running"
        return
    else
        echo "$DESC is Not running"
        RETVAL=1
    fi
}

start()
{
    if [ -e $PIDFILE ]; then
        PIDDIR=/proc/$(cat $PIDFILE)
        if [ -d $PIDDIR ]; then
            echo "$DESC already running."
            return
        else
            echo "Removing stale PID file $PIDFILE"
            rm -f $PIDFILE
        fi
    fi

    echo "Starting $SERVICE..."

    systemctl start $SERVICE

    if [ $? -eq 0 ]; then
        echo "Started $SERVICE successfully"
        RETVAL=0
    else
        echo "$SERVICE failed!"
        RETVAL=1
    fi

}

stop()
{
    echo -n "Stopping $SERVICE..."
    systemctl stop $SERVICE
    if [ $? -eq 0 ]; then
        echo "$SERVICE stopped."
    else
        echo "failed to stop $SERVICE!"
    fi

    if [ -e $PIDFILE ]; then
        echo "Removing stale PID file $PIDFILE"
        rm -f $PIDFILE
    fi
}


case "$1" in
    start)
        start
        ;;
    stop)
        stop
        ;;
    status)
        status
        ;;
    restart)
        stop
        start
        ;;
    *)
        echo "Usage: $0 {start|stop|status|restart}"
        exit 1
        ;;
esac

exit $RETVAL




