Commit e50bdd68 authored by Guido Trotter's avatar Guido Trotter
Browse files

Add errors.QuitGanetiException

This exception does not signal an error but serves the purpose of making
the ganeti daemon shut down after handling a request. Currently it will
be used by ganeti-noded but in the future ganeti-masterd might make use
of it as well. Its usage is documented in the docstring.

Reviewed-by: iustinp
parent 3b3db8fd
......@@ -217,3 +217,22 @@ class CommandError(GenericError):
"""External command error.
class QuitGanetiException(Exception):
"""Signal that Ganeti that it must quit.
This is not necessarily an error (and thus not a subclass of GenericError),
but it's an exceptional circumstance and it is thus treated. This instance
should be instantiated with a tuple of two values. The first value will
specify whether an error should returned to the caller, and the second one
will be the returned result (either as an error or as a normal result).
# Return a result of "True" to the caller, but quit ganeti afterwards
raise QuitGanetiException((False, True))
# Send an error to the caller, and quit ganeti
raise QuitGanetiException((True, "Fatal safety violation, shutting down"))
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment