added fix to allow running Minio container in CI
Code Quality Pipeline / Check Code (pull_request) Failing after 2m47s

This commit is contained in:
brian
2024-12-19 22:11:07 +00:00
parent 8e366f26bc
commit 1a3ee96932
+13 -1
View File
@@ -4,12 +4,24 @@ import os
import random import random
from collections.abc import Iterator from collections.abc import Iterator
from io import BytesIO from io import BytesIO
from pathlib import Path
import pytest import pytest
from minio import Minio from minio import Minio
from PIL import Image from PIL import Image
from testcontainers.core.container import inside_container
from testcontainers.minio import MinioContainer from testcontainers.minio import MinioContainer
class FixedMinioContainer(MinioContainer):
"""Fixed Minio Container to allow running inside CI pipeline."""
def get_container_host_ip(self) -> str:
if inside_container() and Path('/var/run/docker.sock').exists():
return self.get_docker_client().gateway_ip(self._container.id)
return super().get_container_host_ip()
env_var_map = { env_var_map = {
'MINIO_ENDPOINT': 'localhost:9000', 'MINIO_ENDPOINT': 'localhost:9000',
'MINIO_ACCESS_KEY': 'test-access-key', 'MINIO_ACCESS_KEY': 'test-access-key',
@@ -18,7 +30,7 @@ env_var_map = {
'MINIO_OBJECT_NAME': '46KXJMFIAPVLM0TKRFZR5YPPTVJ6PJNX', 'MINIO_OBJECT_NAME': '46KXJMFIAPVLM0TKRFZR5YPPTVJ6PJNX',
} }
container_map = { container_map = {
'minio': MinioContainer( 'minio': FixedMinioContainer(
port=env_var_map['MINIO_ENDPOINT'].rsplit(':', maxsplit=1)[-1], port=env_var_map['MINIO_ENDPOINT'].rsplit(':', maxsplit=1)[-1],
access_key=env_var_map['MINIO_ACCESS_KEY'], access_key=env_var_map['MINIO_ACCESS_KEY'],
secret_key=env_var_map['MINIO_SECRET_KEY'], secret_key=env_var_map['MINIO_SECRET_KEY'],