From e9feb0756754b3c330f03c6968748b9beeee54cc Mon Sep 17 00:00:00 2001 From: Jan Kiszka Date: Wed, 28 Jun 2017 12:43:53 +0200 Subject: [PATCH] Install SIGINT/TERM handler for backtrace-free CTRL-C This just avoids dumping a trace in case of CTRL-C. Signed-off-by: Jan Kiszka --- kas/kas.py | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/kas/kas.py b/kas/kas.py index 519f53f..cd886d6 100644 --- a/kas/kas.py +++ b/kas/kas.py @@ -75,6 +75,13 @@ def create_logger(): return logging.getLogger(__name__) +def interruption(): + """ + Handle SIGINT/SIGTERM + """ + sys.exit(1) + + def _atexit_handler(loop): """ Close event loop and terminate the whole process group @@ -112,6 +119,8 @@ def kas(argv): loop = asyncio.get_event_loop() + for sig in (signal.SIGINT, signal.SIGTERM): + loop.add_signal_handler(sig, interruption) atexit.register(_atexit_handler, loop=loop) for cmd in sub_cmds: