diff --git a/pyinfra/storage/storages.py b/pyinfra/storage/storages.py index ae5200c..50b2b6b 100644 --- a/pyinfra/storage/storages.py +++ b/pyinfra/storage/storages.py @@ -1,7 +1,14 @@ +from distutils.command.config import config from pyinfra.storage.adapters.azure import AzureStorageAdapter +from pyinfra.storage.adapters.s3 import S3StorageAdapter from pyinfra.storage.clients.azure import get_azure_client +from pyinfra.storage.clients.s3 import get_s3_client from pyinfra.storage.storage import Storage -def get_azure_storage(connection_string=None): - return Storage(AzureStorageAdapter(get_azure_client(connection_string))) +def get_azure_storage(config=None): + return Storage(AzureStorageAdapter(get_azure_client(config))) + + +def get_s3_storage(config=None): + return Storage(S3StorageAdapter(get_s3_client(config))) \ No newline at end of file diff --git a/pyinfra/test/unit_tests/storage_test.py b/pyinfra/test/unit_tests/storage_test.py index c971574..456d40c 100644 --- a/pyinfra/test/unit_tests/storage_test.py +++ b/pyinfra/test/unit_tests/storage_test.py @@ -9,6 +9,7 @@ from pyinfra.storage.adapters.s3 import S3StorageAdapter from pyinfra.storage.clients.azure import get_azure_client from pyinfra.storage.clients.s3 import get_s3_client from pyinfra.storage.storage import Storage +from pyinfra.storage.storages import get_azure_storage, get_s3_storage from pyinfra.test.storage.adapter_mock import StorageAdapterMock from pyinfra.test.storage.client_mock import StorageClientMock @@ -47,12 +48,6 @@ def get_adapter(client_name, s3_backend): raise UnknownClient(client_name) -# @pytest.mark.parametrize("s3_backend", ["minio", "w"]) -# def adapter(client_name, s3_backend): -# adapter = get_adapter(client_name, s3_backend) -# return adapter - - @pytest.fixture(params=["minio", "aws"]) def storage(client_name, bucket_name, request): storage = Storage(get_adapter(client_name, request.param)) @@ -60,3 +55,11 @@ def storage(client_name, bucket_name, request): storage.clear_bucket(bucket_name) logging.info(client_name) return storage + + +def test_get_azure_storage_yields_storage(): + assert isinstance(get_azure_storage(), Storage) + + +def test_get_s3_storage_yields_storage(): + assert isinstance(get_s3_storage(), Storage) diff --git a/src/serve.py b/src/serve.py index a37f3b4..5b0df96 100644 --- a/src/serve.py +++ b/src/serve.py @@ -17,9 +17,6 @@ from pyinfra.storage.azure_blob_storage import AzureBlobStorageHandle from pyinfra.storage.minio import MinioHandle -# TODO: implement meaningful checks - - def get_storage(): storage_backend = CONFIG.service.storage_backend @@ -66,6 +63,7 @@ def make_callback(): def main(): + # TODO: implement meaningful checks webserver = Process(target=run_probing_webserver, args=(set_up_probing_webserver(),)) logging.info("Starting webserver...") webserver.start()