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)