]> review.fuel-infra Code Review - openstack-build/cinder-build.git/commitdiff
Changes to correct name of missing NetApp license.
authorGlenn M. Gobeli <Glenn.Gobeli@netapp.com>
Fri, 21 Mar 2014 14:05:07 +0000 (10:05 -0400)
committerGlenn M. Gobeli <Glenn.Gobeli@netapp.com>
Thu, 27 Mar 2014 02:10:46 +0000 (22:10 -0400)
Change to have the NetApp ZAPI error of "SIS clone not licensed"
refer to the correct NetApp license of "FlexClone not licensed".
This code path is encountered when the NetApp 7mode driver uses
the clone interface for snapshotting or cloning.

Change-Id: I3e4d07d38870928a324ad044e03938826b0d0a98
Closes-Bug: #1295349

cinder/volume/drivers/netapp/api.py

index 8e99b7e6270bab5a042da85cb3cdfaab5d3c9c5d..6494f12df034388ef38e828fc6755381ecdb2594 100644 (file)
@@ -26,6 +26,8 @@ from cinder.openstack.common import log as logging
 
 LOG = logging.getLogger(__name__)
 
+ESIS_CLONE_NOT_LICENSED = '14956'
+
 
 class NaServer(object):
     """Encapsulates server connection logic."""
@@ -214,9 +216,12 @@ class NaServer(object):
         code = result.get_attr('errno')\
             or result.get_child_content('errorno')\
             or 'ESTATUSFAILED'
-        msg = result.get_attr('reason')\
-            or result.get_child_content('reason')\
-            or 'Execution status is failed due to unknown reason'
+        if code == ESIS_CLONE_NOT_LICENSED:
+            msg = 'Clone operation failed: FlexClone not licensed.'
+        else:
+            msg = result.get_attr('reason')\
+                or result.get_child_content('reason')\
+                or 'Execution status is failed due to unknown reason'
         raise NaApiError(code, msg)
 
     def _create_request(self, na_element, enable_tunneling=False):