From 7c5f263c2b87f0329cf81f8245a87e96fa352c95 Mon Sep 17 00:00:00 2001 From: Simone Robutti Date: Wed, 21 Jul 2021 09:08:19 +0200 Subject: [PATCH] fixed teardown (#42) --- mobilizon_bots/main.py | 13 +++++++++---- mobilizon_bots/storage/db.py | 6 +++++- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/mobilizon_bots/main.py b/mobilizon_bots/main.py index d82f961..1d7c9d9 100644 --- a/mobilizon_bots/main.py +++ b/mobilizon_bots/main.py @@ -2,17 +2,21 @@ import logging.config from pathlib import Path from mobilizon_bots.config.config import update_settings_files - from mobilizon_bots.event.event_selection_strategies import select_event_to_publish from mobilizon_bots.mobilizon.events import get_unpublished_events from mobilizon_bots.publishers import get_active_publishers from mobilizon_bots.publishers.coordinator import PublisherCoordinator -from mobilizon_bots.storage.db import MobilizonBotsDB +from mobilizon_bots.storage.db import MobilizonBotsDB, tear_down from mobilizon_bots.storage.query import get_published_events, create_unpublished_events logger = logging.getLogger(__name__) +async def graceful_exit(code): + await tear_down() + exit(code) + + async def main(settings_file): """ STUB @@ -39,7 +43,8 @@ async def main(settings_file): result = PublisherCoordinator(event).run() logger.debug("Closing") - exit(0 if result.successful else 1) + + await graceful_exit(0 if result.successful else 1) else: logger.debug("Closing") - exit(0) + await graceful_exit(0) diff --git a/mobilizon_bots/storage/db.py b/mobilizon_bots/storage/db.py index 0ccf8ee..73defb2 100644 --- a/mobilizon_bots/storage/db.py +++ b/mobilizon_bots/storage/db.py @@ -48,4 +48,8 @@ def gracefully_tear_down(): logger.info("Shutting down DB") loop = asyncio.new_event_loop() asyncio.set_event_loop(loop) - asyncio.run(Tortoise.close_connections()) + asyncio.run(tear_down()) + + +async def tear_down(): + return await Tortoise.close_connections()