From f4fe22fd5e27781ca24007db882691cdd23f7c09 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Joakim=20Hells=C3=A9n?= Date: Tue, 6 Dec 2022 10:51:43 +0100 Subject: [PATCH] Shutdown scheduler and reader on shutdown --- discord_rss_bot/main.py | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/discord_rss_bot/main.py b/discord_rss_bot/main.py index e20d3c0..6fb61a6 100644 --- a/discord_rss_bot/main.py +++ b/discord_rss_bot/main.py @@ -93,8 +93,8 @@ async def create_feed(feed_url: str = Form(), webhook_dropdown: str = Form()) -> # Check if set_hook_by_name() was successful. if isinstance( - set_hook_by_name(name=webhook_dropdown, feed_url=feed_url), - ResourceNotFoundError, + set_hook_by_name(name=webhook_dropdown, feed_url=feed_url), + ResourceNotFoundError, ): return set_hook_by_name(name=webhook_dropdown, feed_url=feed_url) @@ -247,5 +247,16 @@ def startup() -> None: scheduler.start() +@app.on_event("shutdown") +def shutdown() -> None: + """This is called when the server shuts down. + + It stops the scheduler.""" + scheduler: BackgroundScheduler = BackgroundScheduler() + scheduler.shutdown() + + reader.close() + + if __name__ == "__main__": uvicorn.run("main:app", log_level="debug", reload=True)