diff --git a/cloudbridge/factory.py b/cloudbridge/factory.py index d938f1df..af95ad81 100644 --- a/cloudbridge/factory.py +++ b/cloudbridge/factory.py @@ -69,10 +69,7 @@ def discover_providers(self): """ for _, modname, _ in pkgutil.iter_modules(providers.__path__): log.debug("Importing provider: %s", modname) - try: - self._import_provider(modname) - except Exception as e: - log.debug("Could not import provider: %s", e) + self._import_provider(modname) def _import_provider(self, module_name): """ diff --git a/cloudbridge/providers/mock/provider.py b/cloudbridge/providers/mock/provider.py index 51f06c6e..895add81 100644 --- a/cloudbridge/providers/mock/provider.py +++ b/cloudbridge/providers/mock/provider.py @@ -6,9 +6,7 @@ boto being hijacked, which will cause AWS to malfunction. See notes below. """ -from moto import mock_ec2 -from moto import mock_route53 -from moto import mock_s3 +from moto import mock_aws from ..aws import AWSCloudProvider from ...interfaces.provider import TestMockHelperMixin @@ -32,17 +30,11 @@ def setUpMock(self): """ Let Moto take over all socket communications """ - self.ec2mock = mock_ec2() - self.ec2mock.start() - self.s3mock = mock_s3() - self.s3mock.start() - self.route53mock = mock_route53() - self.route53mock.start() + self.mock_aws = mock_aws() + self.mock_aws.start() def tearDownMock(self): """ Stop Moto intercepting all socket communications """ - self.s3mock.stop() - self.ec2mock.stop() - self.route53mock.stop() + self.mock_aws.stop() diff --git a/setup.py b/setup.py index 4a571a99..12c77847 100644 --- a/setup.py +++ b/setup.py @@ -35,10 +35,10 @@ 'azure-identity<2.0.0', 'azure-common<2.0.0', 'azure-mgmt-devtestlabs<10.0.0', - 'azure-mgmt-resource<22.0.0', - 'azure-mgmt-compute>=27.2.0,<28.0.0', - 'azure-mgmt-network<22.0.0', - 'azure-mgmt-storage<21.0.0', + 'azure-mgmt-resource<24.0.0', + 'azure-mgmt-compute>=27.2.0,<31.0.0', + 'azure-mgmt-network<26.0.0', + 'azure-mgmt-storage<22.0.0', 'azure-storage-blob<13.0.0', 'azure-cosmosdb-table<2.0.0', 'pysftp<1.0.0' @@ -47,10 +47,10 @@ 'google-api-python-client>=2.0,<3.0.0' ] REQS_OPENSTACK = [ - 'openstacksdk>=0.12.0,<1.0.0', + 'openstacksdk>=0.12.0,<4.0.0', 'python-novaclient>=7.0.0,<19.0', 'python-swiftclient>=3.2.0,<5.0', - 'python-neutronclient>=6.0.0,<9.0', + 'python-neutronclient>=6.0.0,<12.0', 'python-keystoneclient>=3.13.0,<6.0' ] REQS_FULL = REQS_AWS + REQS_GCP + REQS_OPENSTACK + REQS_AZURE @@ -58,7 +58,7 @@ REQS_DEV = ([ 'tox>=4.0.0', 'pytest', - 'moto>=3.1.18', + 'moto[ec2,s3]>=5.0.0', 'sphinx>=1.3.1', 'pydevd', 'flake8>=3.3.0', diff --git a/tests/test_cloud_factory.py b/tests/test_cloud_factory.py index e69773cd..e4cf1b0e 100644 --- a/tests/test_cloud_factory.py +++ b/tests/test_cloud_factory.py @@ -37,9 +37,10 @@ def test_get_provider_class_invalid(self): self.assertIsNone(CloudProviderFactory().get_provider_class("aws1")) def test_find_provider_include_mocks(self): + providers = CloudProviderFactory().get_all_provider_classes() self.assertTrue( any(cls for cls - in CloudProviderFactory().get_all_provider_classes() + in providers if issubclass(cls, TestMockHelperMixin)), "expected to find at least one mock provider")