-#!/bin/sh
+#!/bin/bash
#
# neutron-ovs-cleanup OpenStack Open vSwitch cleanup utility
#
prog=$proj-ovs-cleanup
exec="/usr/bin/$prog"
pidfile="/var/run/$proj/$prog.pid"
-config="/etc/$proj/plugins/openvswitch/ovs_neutron_plugin.ini"
+configs=(
+ "/usr/share/$proj/$proj-dist.conf" \
+ "/etc/$proj/$proj.conf" \
+ "/etc/$proj/plugins/openvswitch/ovs_neutron_plugin.ini" \
+)
+configs_str=${configs[@]/#/--config-file }
[ -e /etc/sysconfig/$prog ] && . /etc/sysconfig/$prog
start() {
[ -x $exec ] || exit 5
- [ -f $config ] || exit 6
- daemon --user neutron $exec --log-file /var/log/$proj/ovs-cleanup.log --config-file /etc/$proj/$proj.conf --config-file $config &>/dev/null
+ for config in ${configs[@]}; do
+ [ -f $config ] || exit 6
+ done
+ runuser -s /bin/bash neutron -c "$exec --log-file /var/log/$proj/ovs-cleanup.log $configs_str &>/dev/null"
retval=$?
[ $retval -eq 0 ] && touch $lockfile
return $retval