36 lines
843 B
Python
36 lines
843 B
Python
"""Definition of get_image function."""
|
|
|
|
import logging
|
|
import os
|
|
|
|
from minio import Minio
|
|
from PIL import Image
|
|
|
|
from shared.utils import check_env
|
|
|
|
from .get import get
|
|
|
|
|
|
def get_image(
|
|
client: Minio,
|
|
object_name: str,
|
|
) -> Image.Image:
|
|
"""Get image from image subfolder in bucket in Minio."""
|
|
assert isinstance(client, Minio)
|
|
assert isinstance(object_name, str)
|
|
assert len(object_name) > 0
|
|
# prepare arguments
|
|
check_env({'MINIO_BUCKET_NAME'})
|
|
bucket_name = str(os.getenv('MINIO_BUCKET_NAME'))
|
|
object_name = f'images/{object_name}'
|
|
# get object from bucket
|
|
buffer = get(
|
|
client=client,
|
|
bucket_name=bucket_name,
|
|
object_name=object_name,
|
|
)
|
|
# convert data to image
|
|
image = Image.open(buffer)
|
|
logging.debug('got data from %s', object_name)
|
|
return image
|