added checking if buckets exist

This commit is contained in:
Brian Bjarke Jensen
2024-07-13 23:45:57 +02:00
parent d55adf87ac
commit 2cf55efcb3
+5 -10
View File
@@ -2,25 +2,20 @@
import logging import logging
import os import os
from typing import Literal
from minio import Minio from minio import Minio
def connect( def connect() -> Minio:
bucket: Literal['images', 'models'],
) -> Minio:
"""Connect to MinIO server.""" """Connect to MinIO server."""
assert isinstance(bucket, str)
assert bucket in ['images', 'models']
# ensure necessary env vars available # ensure necessary env vars available
necesasary_var_list = [ env_var_list = [
'MINIO_ENDPOINT', 'MINIO_ENDPOINT',
'MINIO_ACCESS_KEY', 'MINIO_ACCESS_KEY',
'MINIO_SECRET_KEY', 'MINIO_SECRET_KEY',
'MINIO_BUCKET_NAME', 'MINIO_BUCKET_NAME',
] ]
for env_var in necesasary_var_list: for env_var in env_var_list:
# ensure env var set # ensure env var set
assert ( assert (
env_var in os.environ env_var in os.environ
@@ -40,11 +35,11 @@ def connect(
secure=False, secure=False,
) )
# ensure buckets exists # ensure buckets exists
bucket_list = [ bucket_name_list = [
'images', 'images',
'models', 'models',
] ]
for bucket_name in bucket_list: for bucket_name in bucket_name_list:
if not client.bucket_exists(bucket_name=bucket_name): if not client.bucket_exists(bucket_name=bucket_name):
logging.info('creating bucket: %s', bucket_name) logging.info('creating bucket: %s', bucket_name)
client.make_bucket(bucket_name=minio_bucket_name) client.make_bucket(bucket_name=minio_bucket_name)