diff --git a/hassio_api/hassio/__main__.py b/hassio_api/hassio/__main__.py index 39db688f8..788ab64e2 100644 --- a/hassio_api/hassio/__main__.py +++ b/hassio_api/hassio/__main__.py @@ -1,6 +1,7 @@ """Main file for HassIO.""" import asyncio import logging +import signal import hassio.bootstrap as bootstrap import hassio.core as core @@ -24,5 +25,11 @@ if __name__ == "__main__": _LOGGER.info("Start Hassio task") loop.create_task(hassio.start()) + try: + loop.add_signal_handler( + signal.SIGTERM, lambda: loop.create_task(hassio.stop())) + except ValueError: + _LOGGER.warning("Could not bind to SIGTERM") + loop.run_forever() _LOGGER.info("Close Hassio")