create_tenant error handling

This commit is contained in:
Philip Kalinsky 2020-02-05 15:34:59 -05:00
parent 0d942c73fc
commit 37eda0b959
2 changed files with 10 additions and 6 deletions

View File

@ -90,7 +90,6 @@ class AzureSDKProvider(object):
self.credentials = credentials self.credentials = credentials
self.identity = identity self.identity = identity
self.azure_exceptions = exceptions self.azure_exceptions = exceptions
self.requests_exceptions = requests.exceptions
self.secrets = secrets self.secrets = secrets
self.requests = requests self.requests = requests
self.cloud = AZURE_PUBLIC_CLOUD self.cloud = AZURE_PUBLIC_CLOUD
@ -306,22 +305,21 @@ class AzureCloudProvider(CloudProviderInterface):
headers=create_tenant_headers, headers=create_tenant_headers,
timeout=30, timeout=30,
) )
result.raise_for_status()
except self.requests_exceptions.ConnectionError: except self.sdk.requests.ConnectionError:
app.logger.error( app.logger.error(
f"Could not create tenant. Connection Error", exc_info=1, f"Could not create tenant. Connection Error", exc_info=1,
) )
raise ConnectionException("connection error creating tenant") raise ConnectionException("connection error creating tenant")
except self.requests_exceptions.Timeout: except self.sdk.requests.Timeout:
app.logger.error( app.logger.error(
f"Could not create tenant. Request timed out.", exc_info=1, f"Could not create tenant. Request timed out.", exc_info=1,
) )
raise ConnectionException("timout error creating tenant") raise ConnectionException("timout error creating tenant")
try: except self.sdk.requests.HTTPError:
response.raise_for_status()
except requests_exceptions.HTTPError:
raise UnknownServerException("azure application error creating tenant") raise UnknownServerException("azure application error creating tenant")
if result.status_code == 200: if result.status_code == 200:

View File

@ -63,6 +63,11 @@ def mock_policy():
return Mock(spec=policy) return Mock(spec=policy)
def mock_azure_exceptions():
from azure.core import exceptions
return Mock(spec=exceptions)
def mock_adal(): def mock_adal():
import adal import adal
@ -99,6 +104,7 @@ class MockAzureSDK(object):
self.graphrbac = mock_graphrbac() self.graphrbac = mock_graphrbac()
self.credentials = mock_credentials() self.credentials = mock_credentials()
self.identity = mock_identity() self.identity = mock_identity()
self.azure_exceptions = mock_azure_exceptions()
self.policy = mock_policy() self.policy = mock_policy()
self.secrets = mock_secrets() self.secrets = mock_secrets()
self.requests = mock_requests() self.requests = mock_requests()