From 6803a473dc107fa8c215ea316d2fc174c09d57a0 Mon Sep 17 00:00:00 2001 From: Waldemar Hummer Date: Fri, 30 Jul 2021 07:20:45 +0200 Subject: [PATCH] add exception handling to signal handlers if moto is started from non-main thread (#4112) --- moto/server.py | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/moto/server.py b/moto/server.py index e1580ca6e..a0db1fdf9 100644 --- a/moto/server.py +++ b/moto/server.py @@ -297,8 +297,11 @@ def main(argv=sys.argv[1:]): args = parser.parse_args(argv) - signal.signal(signal.SIGINT, signal_handler) - signal.signal(signal.SIGTERM, signal_handler) + try: + signal.signal(signal.SIGINT, signal_handler) + signal.signal(signal.SIGTERM, signal_handler) + except Exception: + pass # ignore "ValueError: signal only works in main thread" # Wrap the main application main_app = DomainDispatcherApplication(create_backend_app, service=args.service)