f07fca64f8
Change-Id: I74361bd4fb5b508b34526593f4274560fb61f0c4 Related-Bug: 1279244
106 lines
3.1 KiB
Bash
106 lines
3.1 KiB
Bash
#!/bin/sh
|
|
# Copyright (c) 2013 Mirantis, Inc.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
|
# not use this file except in compliance with the License. You may obtain
|
|
# a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
# License for the specific language governing permissions and limitations
|
|
# under the License.
|
|
# Author: Igor Yozhikov <iyozhikov@mirantis.com>
|
|
#
|
|
### BEGIN INIT INFO
|
|
# Provides: murano-api
|
|
# Required-Start: $network $local_fs $remote_fs $syslog
|
|
# Required-Stop: $remote_fs
|
|
# Default-Start: 2 3 4 5
|
|
# Default-Stop: 0 1 6
|
|
# Short-Description: OpenStack Murano API Server
|
|
# Description: This startup script launches murano-api service daemon.
|
|
### END INIT INFO
|
|
|
|
|
|
PATH=/sbin:/usr/sbin:/bin:/usr/bin:/usr/local/bin
|
|
DESC="murano-api"
|
|
NAME=murano-api
|
|
DAEMON=$(which murano-api)
|
|
PIDFILE=/var/run/murano/$NAME.pid
|
|
SCRIPTNAME=/etc/init.d/$NAME
|
|
SYSTEM_USER=murano
|
|
CONFIG_FILE=/etc/murano/murano-api.conf
|
|
# Exit if the package is not installed
|
|
[ -x $DAEMON ] || exit 5
|
|
|
|
# source function library
|
|
. /lib/lsb/init-functions
|
|
|
|
|
|
|
|
do_start()
|
|
{
|
|
if [ ! -d "/var/run/murano" ]; then
|
|
mkdir -p /var/run/murano
|
|
chown -R $SYSTEM_USER /var/run/murano
|
|
fi
|
|
start-stop-daemon --start --background --quiet --chuid $SYSTEM_USER:$SYSTEM_USER --make-pidfile --pidfile $PIDFILE --startas $DAEMON --test -- --config-file=$CONFIG_FILE > /dev/null || return 1
|
|
start-stop-daemon --start --background --quiet --chuid $SYSTEM_USER:$SYSTEM_USER --make-pidfile --pidfile $PIDFILE --startas $DAEMON -- --config-file=$CONFIG_FILE || return 2
|
|
}
|
|
|
|
do_stop()
|
|
{
|
|
start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE
|
|
RETVAL="$?"
|
|
rm -f $PIDFILE
|
|
return "$RETVAL"
|
|
}
|
|
|
|
case "$1" in
|
|
start)
|
|
log_daemon_msg "Starting $DESC" "$NAME"
|
|
do_start
|
|
case "$?" in
|
|
0|1) log_end_msg 0 ;;
|
|
2) log_end_msg 1 ;;
|
|
esac
|
|
;;
|
|
stop)
|
|
log_daemon_msg "Stopping $DESC" "$NAME"
|
|
do_stop
|
|
case "$?" in
|
|
0|1) log_end_msg 0 ;;
|
|
2) log_end_msg 1 ;;
|
|
esac
|
|
;;
|
|
status)
|
|
status_of_proc "$DAEMON" "$NAME" && exit 0 || exit $?
|
|
;;
|
|
restart|force-reload)
|
|
log_daemon_msg "Restarting $DESC" "$NAME"
|
|
do_stop
|
|
case "$?" in
|
|
0|1)
|
|
do_start
|
|
case "$?" in
|
|
0) log_end_msg 0 ;;
|
|
1) log_end_msg 1 ;; # Old process is still running
|
|
*) log_end_msg 1 ;; # Failed to start
|
|
esac
|
|
;;
|
|
*)
|
|
# Failed to stop
|
|
log_end_msg 1
|
|
;;
|
|
esac
|
|
;;
|
|
*)
|
|
echo "Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}" >&2
|
|
exit 3
|
|
;;
|
|
esac
|
|
|