From 30da697a5925bc402df82508dc03f7e6fad18333 Mon Sep 17 00:00:00 2001 From: "Walter A. Boring IV" Date: Fri, 24 May 2019 13:22:09 +0000 Subject: [PATCH] move Dell EMC SC driver exceptions This patch moves the Dell EMC SC exceptions to the driver. Change-Id: I83ab1925dd7eb39cf64b9853cd65e2b7cb06e833 --- cinder/exception.py | 10 ---------- .../unit/volume/drivers/dell_emc/sc/test_scapi.py | 3 ++- cinder/volume/drivers/dell_emc/sc/storagecenter_api.py | 8 ++++++-- 3 files changed, 8 insertions(+), 13 deletions(-) diff --git a/cinder/exception.py b/cinder/exception.py index c49547ea663..35ce3bd9ce8 100644 --- a/cinder/exception.py +++ b/cinder/exception.py @@ -948,16 +948,6 @@ class VolumeDeviceNotFound(CinderException): message = _('Volume device not found at %(device)s.') -# Driver specific exceptions -# Dell -class DellDriverRetryableException(VolumeBackendAPIException): - message = _("Retryable Dell Exception encountered") - - -class DellDriverUnknownSpec(VolumeDriverException): - message = _("Dell driver failure: %(reason)s") - - # RemoteFS drivers class RemoteFSException(VolumeDriverException): message = _("Unknown RemoteFS exception") diff --git a/cinder/tests/unit/volume/drivers/dell_emc/sc/test_scapi.py b/cinder/tests/unit/volume/drivers/dell_emc/sc/test_scapi.py index 840785c57d1..17c7413164f 100644 --- a/cinder/tests/unit/volume/drivers/dell_emc/sc/test_scapi.py +++ b/cinder/tests/unit/volume/drivers/dell_emc/sc/test_scapi.py @@ -8954,7 +8954,8 @@ class DellHttpClientTestCase(test.TestCase): 'get') def test_wait_for_async_complete_get_raises(self, mock_get): - mock_get.side_effect = (exception.DellDriverRetryableException()) + mock_get.side_effect = ( + storagecenter_api.DellDriverRetryableException()) self.assertRaises(exception.VolumeBackendAPIException, self.httpclient._wait_for_async_complete, self.ASYNCTASK) diff --git a/cinder/volume/drivers/dell_emc/sc/storagecenter_api.py b/cinder/volume/drivers/dell_emc/sc/storagecenter_api.py index 26f046431f9..34d0b9e37b8 100644 --- a/cinder/volume/drivers/dell_emc/sc/storagecenter_api.py +++ b/cinder/volume/drivers/dell_emc/sc/storagecenter_api.py @@ -31,6 +31,10 @@ from cinder import utils LOG = logging.getLogger(__name__) +class DellDriverRetryableException(exception.VolumeBackendAPIException): + message = _("Retryable Dell Exception encountered") + + class PayloadFilter(object): """PayloadFilter @@ -229,7 +233,7 @@ class HttpClient(object): return rest_response @utils.retry(exceptions=(requests.ConnectionError, - exception.DellDriverRetryableException)) + DellDriverRetryableException)) def get(self, url): LOG.debug('get: %(url)s', {'url': url}) rest_response = self.session.get(self.__formatUrl(url), @@ -240,7 +244,7 @@ class HttpClient(object): if (rest_response and rest_response.status_code == ( http_client.BAD_REQUEST)) and ( 'Unhandled Exception' in rest_response.text): - raise exception.DellDriverRetryableException() + raise DellDriverRetryableException() return rest_response @utils.retry(exceptions=(requests.ConnectionError,))