#!/bin/sh # # 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-core-$DRIVER.pid}”

-r $LOGFILE

&& chown nobody $LOGFILE

-r $LOCKFILE

&& chown nobody $LOCKFILE

start() {

[ -x $exec ] || exit 5

echo -n $"Starting $prog-$DRIVER: "
daemon "$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 -3 `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