Provide postinst script, taking care of services restarts in HA mode

Addressing https://bugtracker.sipwise.com/view.php?id=1225

From: Michael Prokop <mprokop@sipwise.com>
1.5^2
Michael Prokop 14 years ago
parent 74547a586f
commit f4cf13c3d4

@ -0,0 +1,54 @@
#!/bin/sh
# postinst script for ngcp-mediator
set -e
restart_handler() {
if [ -x "/etc/init.d/mediator" ]; then
if [ -x "$(which invoke-rc.d 2>/dev/null)" ]; then
invoke-rc.d mediator restart || exit $?
else
/etc/init.d/mediator restart || exit $?
fi
fi
}
initscript_handler() {
if [ -x "/etc/init.d/mediator" ]; then
update-rc.d mediator defaults >/dev/null
invoke-rc.d mediator start || exit $?
fi
}
init_handler() {
# just invoke init script wrappers on ce systems since
# they do not provide ngcp-check_active and we don't
# have to handle inactive nodes
if ! [ -x "$(which ngcp-check_active 2>/dev/null)" ]; then
restart_handler
initscript_handler
else # do not restart daemon on inactive node in pro systems
if ngcp-check_active ; then
echo "Active node detected, restarting mediator"
restart_handler
else
echo "Inactive node detected, ignoring request to restart mediator"
fi
fi
}
case "$1" in
configure)
init_handler
;;
abort-upgrade|abort-remove|abort-deconfigure)
;;
*)
echo "postinst called with unknown argument \`$1'" >&2
exit 1
;;
esac
exit 0
Loading…
Cancel
Save