Sophie

Sophie

distrib > Fedora > 16 > x86_64 > media > updates-src > by-pkgid > 7ae45ba0d8fdf0bee89ed2ca0c6bf314 > files > 9

deltacloud-core-0.5.0-10.fc16.src.rpm

#!/bin/bash -l
#
# deltacloud-core   Deltacloud API Core
# chkconfig: 345 90 60
# description: deltacloud-core is primary server process for the \
#             Deltacloud Core component.

### BEGIN INIT INFO
# Provides: deltacloud-core
# Required-Start:
# Required-Stop:
# Default-Start: 3 5
# Default-Stop: 0 1 2 6
# Short-Description: Deltacloud Core API deamon
# Description: Deltacloud Core API provides access to different cloud providers \
#   using single REST API
### END INIT INFO

. /etc/rc.d/init.d/functions

[ -r /etc/sysconfig/deltacloud-core ] && . /etc/sysconfig/deltacloud-core

exec="/usr/bin/deltacloudd"
prog="deltacloud-core"

[ ! -d /var/log/$prog ] && mkdir -p /var/log/$prog

# You can overide these variables using /etc/sysconfig/deltacloud-core
API_ENV="${API_ENV:-production}"
DRIVER="${DRIVER:-mock}"
PORT="${PORT:-3002}"
HOST="${HOST:-localhost}"
DELTACLOUD_USER="${DELTACLOUD_USER:-nobody}"
LOGFILE="${LOGFILE:-/var/log/$prog/$DRIVER.log}"
LOCKFILE="${LOCKFILE:-/var/lock/subsys/$prog}"
PIDFILE="${PIDFILE:-/var/run/deltacloud/deltacloud-core-$DRIVER.pid}"

[[ ! -d /var/run/deltacloud ]] && mkdir /var/run/deltacloud
chown $DELTACLOUD_USER /var/run/deltacloud
[ -r $LOGFILE ] && chown nobody $LOGFILE
[ -r $LOCKFILE ] && chown nobody $LOCKFILE

start() {
    [ -x $exec ] || exit 5
    USER=${DELTACLOUD_USER}
    cd /
    echo -n $"Starting $prog-$DRIVER: "
    $exec -i ${DRIVER} -e ${API_ENV} --user ${DELTACLOUD_USER} --daemon --pid ${PIDFILE} --port ${PORT} --host ${HOST}
    retval=$?

    if [ $retval -eq 0 ] && touch $LOCKFILE ; then
      echo_success
      echo
    else
      echo_failure
      echo
    fi
    return $retval
}

stop() {
    echo -n $"Shutting down $prog: "
    if [ -f $PIDFILE ]; then
      kill -9 `cat $PIDFILE`
      retval=$?
      if [ $retval -eq 0 ] && rm -f $LOCKFILE $PIDFILE; then
        echo_success
        echo
      else
        echo_failure
        echo
      fi
      return $retval
    else
      echo_failure
      echo
      return 1
    fi
}

case "$1" in
    start)
      start
      ;;
    stop)
      stop
      ;;
    restart)
      stop
      start
      ;;
    reload)
      ;;
    force-reload)
      restart
      ;;
    status)
      status -p $PIDFILE $prog
      retval=$?
      ;;
    *)
      echo "Usage: $prog {start|stop|restart|status}"
      exit 1
  ;;
esac

exit $retval