From d09cb9dd20827f5374bc1c6b8c0cb0c046d13f10 Mon Sep 17 00:00:00 2001 From: Brian Bjarke Jensen Date: Sat, 15 Jun 2024 23:15:31 +0200 Subject: [PATCH] added delete function --- shared/data_store/__init__.py | 1 + shared/data_store/delete.py | 29 +++++++++++++++++++++++++++++ 2 files changed, 30 insertions(+) create mode 100644 shared/data_store/delete.py diff --git a/shared/data_store/__init__.py b/shared/data_store/__init__.py index f8fcb99..853af00 100644 --- a/shared/data_store/__init__.py +++ b/shared/data_store/__init__.py @@ -1,5 +1,6 @@ from __future__ import annotations from .connect import connect +from .delete import delete from .get import get from .put import put diff --git a/shared/data_store/delete.py b/shared/data_store/delete.py new file mode 100644 index 0000000..b5f21d9 --- /dev/null +++ b/shared/data_store/delete.py @@ -0,0 +1,29 @@ +"""Definition of delete function.""" +from __future__ import annotations + +import logging +import os + +from minio import Minio + + +def delete( + client: Minio, + object_name: str, +) -> None: + """Delete object from MinIO.""" + assert isinstance(client, Minio) + assert isinstance(object_name, str) + bucket_name = os.getenv('MINIO_BUCKET_NAME', default=None) + assert isinstance(bucket_name, str) + # remove object + try: + client.remove_object( + bucket_name=bucket_name, + object_name=object_name, + ) + except Exception as exc: + logging.debug(exc) + logging.error('failed deleting %s', object_name) + else: + logging.debug('deleted %s', object_name)