From 8569bd86d060a4690fe26150de6307ee3140ab20 Mon Sep 17 00:00:00 2001 From: Alfredo Deza Date: Tue, 19 Aug 2014 15:39:09 -0400 Subject: [PATCH] always raise exit after handling an exception Signed-off-by: Alfredo Deza --- ceph_deploy/util/decorators.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ceph_deploy/util/decorators.py b/ceph_deploy/util/decorators.py index 47664e7..70e002a 100644 --- a/ceph_deploy/util/decorators.py +++ b/ceph_deploy/util/decorators.py @@ -72,6 +72,7 @@ def catches(catch=None, handler=None, exit=True, handle_all=False): return handler(e) else: logger.error(make_exception_message(e)) + if exit: exit_from_catch = True sys.exit(1) @@ -80,12 +81,14 @@ def catches(catch=None, handler=None, exit=True, handle_all=False): raise # Make sure we don't spit double tracebacks if we are raising # SystemExit from the `except catch` block + if exit_from_catch: sys.exit(1) str_failure = traceback.format_exc() for line in str_failure.split('\n'): logger.error("%s" % line) + sys.exit(1) return newfunc -- 2.47.3