X-Git-Url: https://review.fuel-infra.org/gitweb?p=openstack-build%2Fneutron-build.git;a=blobdiff_plain;f=rpm%2FSOURCES%2Fneutron-server.init;h=88c47be474d2c369a8e744b44ac4a512f8a7920f;hp=36d792a8def9aea8eea95e3eb88d9f167e2dfd3a;hb=4d22b5fc3898183e24cc0fded71083175a00c1b5;hpb=2dd62a121c7d2565bd357d59e1e598a825abb966 diff --git a/rpm/SOURCES/neutron-server.init b/rpm/SOURCES/neutron-server.init index 36d792a8d..88c47be47 100644 --- a/rpm/SOURCES/neutron-server.init +++ b/rpm/SOURCES/neutron-server.init @@ -1,4 +1,4 @@ -#!/bin/sh +#!/bin/bash # # neutron OpenStack Software Defined Networking Service # @@ -11,7 +11,11 @@ prog=neutron exec="/usr/bin/$prog-server" -config="/etc/$prog/$prog.conf" +configs=( + "/usr/share/$prog/$prog-dist.conf" \ + "/etc/$prog/$prog.conf" \ + "/etc/$prog/plugin.ini" \ +) pidfile="/var/run/$prog/$prog.pid" logfile="/var/log/$prog/server.log" @@ -21,9 +25,11 @@ lockfile=/var/lock/subsys/$prog-server start() { [ -x $exec ] || exit 5 - [ -f $config ] || exit 6 + for config in ${configs[@]}; do + [ -f $config ] || exit 6 + done echo -n $"Starting $prog: " - daemon --user neutron --pidfile $pidfile "$exec --config-file $config --config-file /etc/$prog/plugin.ini --log-file $logfile &>/dev/null & echo \$! > $pidfile" + daemon --user neutron --pidfile $pidfile "$exec ${configs[@]/#/--config-file } --log-file $logfile &>/dev/null & echo \$! > $pidfile" retval=$? echo [ $retval -eq 0 ] && touch $lockfile @@ -34,6 +40,16 @@ stop() { echo -n $"Stopping $prog: " killproc -p $pidfile $prog retval=$? + sleep 2 + tailsss=$(ps axf | grep $prog-server | grep 'bin/python' | awk '{print $1}') + itersss=100 + while [ ! -z $tailsss ] && [ $itersss -gt 0 ] ; do + kill $tailsss + retval=$? + sleep 2 + tailsss=$(ps axf | grep $prog-server | grep 'bin/python' | awk '{print $1}') + itersss=$(($itersss-1)) + done echo [ $retval -eq 0 ] && rm -f $lockfile return $retval