Martin Peřina has uploaded a new change for review. Change subject: tools: Adds notifier config validation prior to service startup ......................................................................
tools: Adds notifier config validation prior to service startup Executes notifier config validation prior service startup. If validation fails, service returns error exit code. Change-Id: I11ad77a33697f254e60e1d0b12e343900e5b0b34 Bug-Url: https://bugzilla.redhat.com/989382 Signed-off-by: Martin Perina <mper...@redhat.com> --- M packaging/pythonlib/ovirt_engine/service.py M packaging/services/ovirt-engine-notifier/ovirt-engine-notifier.py 2 files changed, 22 insertions(+), 0 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/29/22629/1 diff --git a/packaging/pythonlib/ovirt_engine/service.py b/packaging/pythonlib/ovirt_engine/service.py index a82e04c..b25d58b 100644 --- a/packaging/pythonlib/ovirt_engine/service.py +++ b/packaging/pythonlib/ovirt_engine/service.py @@ -371,6 +371,8 @@ self.daemonSetup() + self.preDaemonExec() + stdout, stderr = (sys.stdout, sys.stderr) if self._options.redirectOutput: stdout, stderr = self.daemonStdHandles() @@ -500,6 +502,10 @@ """Return handles for daemon context""" return (sys.stdout, sys.stderr) + def preDaemonExec(self): + """Called prior to daemon execution""" + pass + def daemonContext(self): """Daemon logic Called within daemon context diff --git a/packaging/services/ovirt-engine-notifier/ovirt-engine-notifier.py b/packaging/services/ovirt-engine-notifier/ovirt-engine-notifier.py index fa8bbd7..cd7089b 100755 --- a/packaging/services/ovirt-engine-notifier/ovirt-engine-notifier.py +++ b/packaging/services/ovirt-engine-notifier/ovirt-engine-notifier.py @@ -16,6 +16,7 @@ import os +import subprocess import sys import gettext _ = lambda m: gettext.dgettext(message=m, domain='ovirt-engine') @@ -187,6 +188,21 @@ ), ) + def preDaemonExec(self): + """Validates notifier configurations""" + args = self._engineArgs + ['validate'] + self.logger.debug('Executing: %s', args) + proc = subprocess.Popen( + args=args, + executable=self._executable, + env=self._engineEnv, + ) + + proc.wait() + + if proc.returncode != 0: + raise RuntimeError('Error validating notifier configuration') + if __name__ == '__main__': service.setupLogger() -- To view, visit http://gerrit.ovirt.org/22629 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I11ad77a33697f254e60e1d0b12e343900e5b0b34 Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Martin Peřina <mper...@redhat.com> _______________________________________________ Engine-patches mailing list Engine-patches@ovirt.org http://lists.ovirt.org/mailman/listinfo/engine-patches