diff --git a/net/keepalived/files/keepalived.init b/net/keepalived/files/keepalived.init index 3b37750ba..ff68705c0 100644 --- a/net/keepalived/files/keepalived.init +++ b/net/keepalived/files/keepalived.init @@ -404,31 +404,14 @@ process_config() { return 0 } -service_running() { - pgrep -x /usr/sbin/keepalived &> /dev/null -} - -conf_md5() { - echo "$(md5sum $KEEPALIVED_CONF | awk '{print $1}')" +service_triggers() { + procd_add_reload_trigger "keepalived" } reload_service() { - local cur_md5="$(conf_md5)" - running && { - process_config - - # Return without performing the reload if config - # file md5sum has not changed - local new_md5="$(conf_md5)" - [ "$new_md5" == "$cur_md5" ] && return 0; - - # SIGHUP is used by keepalived to do init.d reload - # Get the oldest process (assumption is that it's the parent process) - PID=$(pgrep -o /usr/sbin/keepalived) - kill -SIGHUP $PID - return 0 - } - return 1 + process_config + #SIGHUP is used by keepalived to do init.d reload + procd_send_signal keepalived } start_service() {