add exception handling to signal handlers if moto is started from non-main thread (#4112)

This commit is contained in:
Waldemar Hummer 2021-07-30 07:20:45 +02:00 committed by GitHub
parent faadf3db3a
commit 6803a473dc
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -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)