flake8 & mypy fixes

This commit is contained in:
Sebastian Goscik
2023-03-08 00:03:26 +00:00
parent 6121f74a80
commit 48f743bc8e
12 changed files with 184 additions and 89 deletions

View File

@@ -1,4 +1,5 @@
import asyncio
# noqa: D100
import logging
import time
from datetime import datetime
@@ -12,34 +13,44 @@ logger = logging.getLogger(__name__)
async def delete_file(file_path):
"""Deletes `file_path` via rclone."""
returncode, stdout, stderr = await run_command(f'rclone delete -vv "{file_path}"')
if returncode != 0:
logger.error(f" Failed to delete file: '{file_path}'")
async def tidy_empty_dirs(base_dir_path):
"""Deletes any empty directories in `base_dir_path` via rclone."""
returncode, stdout, stderr = await run_command(f'rclone rmdirs -vv --ignore-errors --leave-root "{base_dir_path}"')
if returncode != 0:
logger.error(f" Failed to tidy empty dirs")
logger.error(" Failed to tidy empty dirs")
class Purge:
"""Deletes old files from rclone remotes"""
"""Deletes old files from rclone remotes."""
def __init__(
self,
db: aiosqlite.Connection,
retention: relativedelta,
rclone_destination: str,
interval: relativedelta(days=1),
interval: relativedelta = relativedelta(days=1),
):
"""Init.
Args:
db (aiosqlite.Connection): Async SQlite database connection to purge clips from
retention (relativedelta): How long clips should be kept
rclone_destination (str): What rclone destination the clips are stored in
interval (relativedelta): How often to purge old clips
"""
self._db: aiosqlite.Connection = db
self.retention: relativedelta = retention
self.rclone_destination: str = rclone_destination
self.interval: relativedelta = interval
async def start(self):
"""Main loop - runs forever"""
"""Main loop - runs forever."""
while True:
try:
deleted_a_file = False
@@ -69,7 +80,7 @@ class Purge:
await tidy_empty_dirs(self.rclone_destination)
except Exception as e:
logger.error(f"Unexpected exception occurred during purge:", exc_info=e)
logger.error("Unexpected exception occurred during purge:", exc_info=e)
next_purge_time = datetime.now() + self.interval
logger.extra_debug(f'sleeping until {next_purge_time}')