From e569188aa8045baf662068146e2c8968728f21c5 Mon Sep 17 00:00:00 2001 From: Helen Walsh Date: Fri, 16 Dec 2016 17:14:28 +0000 Subject: [PATCH] VMAX driver - rename and restructure driver Rename and restructure VMAX driver to replace EMC with Dell EMC. Change-Id: Ic5c7a62015750151878a15e97f7e31e9b8bc7098 Implements: blueprint vmax-rename-dell-emc --- cinder/opts.py | 6 +- .../test_vmax.py} | 1486 ++++++++--------- .../volume/drivers/dell_emc/vmax/__init__.py | 0 .../vmax/common.py} | 26 +- .../vmax/fast.py} | 10 +- .../emc_vmax_fc.py => dell_emc/vmax/fc.py} | 11 +- .../vmax/https.py} | 0 .../vmax/iscsi.py} | 9 +- .../vmax/masking.py} | 18 +- .../vmax/provision.py} | 6 +- .../vmax/provision_v3.py} | 6 +- .../vmax/utils.py} | 6 +- cinder/volume/manager.py | 4 + ...vmax-rename-dell-emc-f9ebfb9eb567f427.yaml | 6 + 14 files changed, 803 insertions(+), 791 deletions(-) rename cinder/tests/unit/volume/drivers/{emc/test_emc_vmax.py => dell_emc/test_vmax.py} (91%) create mode 100644 cinder/volume/drivers/dell_emc/vmax/__init__.py rename cinder/volume/drivers/{emc/emc_vmax_common.py => dell_emc/vmax/common.py} (99%) rename cinder/volume/drivers/{emc/emc_vmax_fast.py => dell_emc/vmax/fast.py} (99%) rename cinder/volume/drivers/{emc/emc_vmax_fc.py => dell_emc/vmax/fc.py} (98%) rename cinder/volume/drivers/{emc/emc_vmax_https.py => dell_emc/vmax/https.py} (100%) rename cinder/volume/drivers/{emc/emc_vmax_iscsi.py => dell_emc/vmax/iscsi.py} (98%) rename cinder/volume/drivers/{emc/emc_vmax_masking.py => dell_emc/vmax/masking.py} (99%) rename cinder/volume/drivers/{emc/emc_vmax_provision.py => dell_emc/vmax/provision.py} (99%) rename cinder/volume/drivers/{emc/emc_vmax_provision_v3.py => dell_emc/vmax/provision_v3.py} (99%) rename cinder/volume/drivers/{emc/emc_vmax_utils.py => dell_emc/vmax/utils.py} (99%) create mode 100644 releasenotes/notes/vmax-rename-dell-emc-f9ebfb9eb567f427.yaml diff --git a/cinder/opts.py b/cinder/opts.py index 0c0f1755587..4bdc4f649a2 100644 --- a/cinder/opts.py +++ b/cinder/opts.py @@ -78,6 +78,8 @@ from cinder.volume.drivers.dell_emc.scaleio import driver as \ cinder_volume_drivers_dell_emc_scaleio_driver from cinder.volume.drivers.dell_emc.unity import driver as \ cinder_volume_drivers_dell_emc_unity_driver +from cinder.volume.drivers.dell_emc.vmax import common as \ + cinder_volume_drivers_dell_emc_vmax_common from cinder.volume.drivers.dell_emc.vnx import common as \ cinder_volume_drivers_dell_emc_vnx_common from cinder.volume.drivers.dell_emc import xtremio as \ @@ -88,8 +90,6 @@ from cinder.volume.drivers.dothill import dothill_common as \ cinder_volume_drivers_dothill_dothillcommon from cinder.volume.drivers import drbdmanagedrv as \ cinder_volume_drivers_drbdmanagedrv -from cinder.volume.drivers.emc import emc_vmax_common as \ - cinder_volume_drivers_emc_emcvmaxcommon from cinder.volume.drivers import eqlx as cinder_volume_drivers_eqlx from cinder.volume.drivers.falconstor import fss_common as \ cinder_volume_drivers_falconstor_fsscommon @@ -275,13 +275,13 @@ def list_opts(): common_opts, cinder_volume_drivers_dell_emc_scaleio_driver.scaleio_opts, cinder_volume_drivers_dell_emc_unity_driver.UNITY_OPTS, + cinder_volume_drivers_dell_emc_vmax_common.emc_opts, cinder_volume_drivers_dell_emc_vnx_common.VNX_OPTS, cinder_volume_drivers_dell_emc_xtremio.XTREMIO_OPTS, cinder_volume_drivers_disco_disco.disco_opts, cinder_volume_drivers_dothill_dothillcommon.common_opts, cinder_volume_drivers_dothill_dothillcommon.iscsi_opts, cinder_volume_drivers_drbdmanagedrv.drbd_opts, - cinder_volume_drivers_emc_emcvmaxcommon.emc_opts, cinder_volume_drivers_eqlx.eqlx_opts, cinder_volume_drivers_falconstor_fsscommon.FSS_OPTS, cinder_volume_drivers_fujitsu_eternusdxcommon. diff --git a/cinder/tests/unit/volume/drivers/emc/test_emc_vmax.py b/cinder/tests/unit/volume/drivers/dell_emc/test_vmax.py similarity index 91% rename from cinder/tests/unit/volume/drivers/emc/test_emc_vmax.py rename to cinder/tests/unit/volume/drivers/dell_emc/test_vmax.py index 0c5bcdc5fd4..824cca441cc 100644 --- a/cinder/tests/unit/volume/drivers/emc/test_emc_vmax.py +++ b/cinder/tests/unit/volume/drivers/dell_emc/test_vmax.py @@ -1,4 +1,4 @@ -# Copyright (c) 2012 - 2015 EMC Corporation, Inc. +# Copyright (c) 2012 - 2015 EMC Corporation. # All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); you may @@ -31,23 +31,23 @@ from cinder.i18n import _ from cinder.objects import consistencygroup from cinder.objects import fields from cinder import test -from cinder.tests.unit import utils +from cinder.tests.unit import utils as unit_utils from cinder import utils as cinder_utils from cinder.volume import configuration as conf -from cinder.volume.drivers.emc import emc_vmax_common -from cinder.volume.drivers.emc import emc_vmax_fast -from cinder.volume.drivers.emc import emc_vmax_fc -from cinder.volume.drivers.emc import emc_vmax_iscsi -from cinder.volume.drivers.emc import emc_vmax_masking -from cinder.volume.drivers.emc import emc_vmax_provision -from cinder.volume.drivers.emc import emc_vmax_provision_v3 -from cinder.volume.drivers.emc import emc_vmax_utils +from cinder.volume.drivers.dell_emc.vmax import common +from cinder.volume.drivers.dell_emc.vmax import fast +from cinder.volume.drivers.dell_emc.vmax import fc +from cinder.volume.drivers.dell_emc.vmax import iscsi +from cinder.volume.drivers.dell_emc.vmax import masking +from cinder.volume.drivers.dell_emc.vmax import provision +from cinder.volume.drivers.dell_emc.vmax import provision_v3 +from cinder.volume.drivers.dell_emc.vmax import utils from cinder.volume import volume_types CINDER_EMC_CONFIG_DIR = '/etc/cinder/' -emc_vmax_utils.JOB_RETRIES = 0 -emc_vmax_utils.INTERVAL_10_SEC = 0 +utils.JOB_RETRIES = 0 +utils.INTERVAL_10_SEC = 0 class EMC_StorageVolume(dict): @@ -237,19 +237,19 @@ class FakeDB(object): def volume_get_all_by_group(self, context, group_id): volumes = [] - volumes.append(EMCVMAXCommonData.test_source_volume) + volumes.append(VMAXCommonData.test_source_volume) return volumes def consistencygroup_get(self, context, cg_group_id): - return EMCVMAXCommonData.test_CG + return VMAXCommonData.test_CG def snapshot_get_all_for_cgsnapshot(self, context, cgsnapshot_id): snapshots = [] - snapshots.append(EMCVMAXCommonData.test_snapshot) + snapshots.append(VMAXCommonData.test_snapshot) return snapshots -class EMCVMAXCommonData(object): +class VMAXCommonData(object): wwpn1 = "123456789012345" wwpn2 = "123456789054321" connector = {'ip': '10.0.0.2', @@ -705,13 +705,13 @@ class EMCVMAXCommonData(object): class FakeLookupService(object): def get_device_mapping_from_network(self, initiator_wwns, target_wwns): - return EMCVMAXCommonData.device_map + return VMAXCommonData.device_map class FakeEcomConnection(object): def __init__(self, *args, **kwargs): - self.data = EMCVMAXCommonData() + self.data = VMAXCommonData() def InvokeMethod(self, MethodName, Service, ElementName=None, InPool=None, ElementType=None, Size=None, @@ -765,12 +765,12 @@ class FakeEcomConnection(object): targetendpoints = {} endpoints = [] endpoint = {} - endpoint['Name'] = (EMCVMAXCommonData.end_point_map[ - EMCVMAXCommonData.connector['wwpns'][0]]) + endpoint['Name'] = (VMAXCommonData.end_point_map[ + VMAXCommonData.connector['wwpns'][0]]) endpoints.append(endpoint) endpoint2 = {} - endpoint2['Name'] = (EMCVMAXCommonData.end_point_map[ - EMCVMAXCommonData.connector['wwpns'][1]]) + endpoint2['Name'] = (VMAXCommonData.end_point_map[ + VMAXCommonData.connector['wwpns'][1]]) endpoints.append(endpoint2) targetendpoints['TargetEndpoints'] = endpoints return rc, targetendpoints @@ -1964,13 +1964,13 @@ class FakeEcomConnection(object): return names -class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): +class VMAXISCSIDriverNoFastTestCase(test.TestCase): def setUp(self): - self.data = EMCVMAXCommonData() + self.data = VMAXCommonData() self.tempdir = tempfile.mkdtemp() - super(EMCVMAXISCSIDriverNoFastTestCase, self).setUp() + super(VMAXISCSIDriverNoFastTestCase, self).setUp() self.config_file_path = None self.create_fake_config_file_no_fast() self.addCleanup(self._cleanup) @@ -1983,21 +1983,21 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): True, 'volume_backend_name': 'ISCSINoFAST'})) - self.mock_object(emc_vmax_common.EMCVMAXCommon, '_get_ecom_connection', + self.mock_object(common.VMAXCommon, '_get_ecom_connection', self.fake_ecom_connection) instancename = FakeCIMInstanceName() - self.mock_object(emc_vmax_utils.EMCVMAXUtils, 'get_instance_name', + self.mock_object(utils.VMAXUtils, 'get_instance_name', instancename.fake_getinstancename) - self.mock_object(emc_vmax_utils.EMCVMAXUtils, 'isArrayV3', + self.mock_object(utils.VMAXUtils, 'isArrayV3', self.fake_is_v3) - self.mock_object(emc_vmax_utils.EMCVMAXUtils, '_is_sync_complete', + self.mock_object(utils.VMAXUtils, '_is_sync_complete', return_value=True) self.mock_object(cinder_utils, 'get_bool_param', return_value=False) - driver = emc_vmax_iscsi.EMCVMAXISCSIDriver(configuration=configuration) + driver = iscsi.VMAXISCSIDriver(configuration=configuration) driver.db = FakeDB() self.driver = driver - self.driver.utils = emc_vmax_utils.EMCVMAXUtils(object) + self.driver.utils = utils.VMAXUtils(object) def fake_safe_get(self, values): def _safe_get(key): @@ -2861,11 +2861,11 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): volumeName, extraSpecs) @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, 'get_associated_masking_groups_from_device', - return_value=EMCVMAXCommonData.storagegroups) + return_value=VMAXCommonData.storagegroups) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_existing_instance', return_value=None) def test_remove_and_reset_members_v3(self, mock_inst, mock_sg): @@ -3235,23 +3235,23 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): os.remove(file_name) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'override_ratio', return_value=2.0) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'isArrayV3', return_value=False) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_pool_capacities', return_value=(1234, 1200, 1200, 1)) @mock.patch.object( - emc_vmax_fast.EMCVMAXFast, + fast.VMAXFast, 'is_tiering_policy_enabled', return_value=False) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'find_storageSystem', return_value=None) def test_get_volume_stats_no_fast(self, @@ -3272,9 +3272,9 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): self.driver.common.pool_info['arrays_info'] = [] @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -3284,9 +3284,9 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): self.driver.create_volume(self.data.test_volume_v2) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -3297,9 +3297,9 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): self.driver.create_volume(self.data.test_volume_v2) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -3309,9 +3309,9 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): self.driver.create_volume(self.data.test_volume_CG) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -3353,13 +3353,13 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): self.driver.delete_volume(notfound_delete_vol) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'wait_for_job_complete', return_value=(-1, 'error')) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -3372,16 +3372,16 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): self.data.failed_delete_vol) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_is_same_host', return_value=True) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, 'find_device_number', return_value={'hostlunid': 1, - 'storagesystem': EMCVMAXCommonData.storage_system}) + 'storagesystem': VMAXCommonData.storage_system}) @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, '_wrap_get_storage_group_from_volume', return_value=None) @mock.patch.object( @@ -3397,15 +3397,15 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): self.data.connector) @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, '_check_adding_volume_to_storage_group', return_value=None) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'find_storage_masking_group', - return_value=EMCVMAXCommonData.default_sg_instance_name) + return_value=VMAXCommonData.default_sg_instance_name) @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, '_wrap_get_storage_group_from_volume', return_value=None) @mock.patch.object( @@ -3421,24 +3421,24 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): self.data.connector) @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, '_check_adding_volume_to_storage_group', return_value=None) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_is_same_host', return_value=False) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'find_storage_masking_group', - return_value=EMCVMAXCommonData.default_sg_instance_name) + return_value=VMAXCommonData.default_sg_instance_name) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, 'find_device_number', return_value={'hostlunid': 1, - 'storagesystem': EMCVMAXCommonData.storage_system}) + 'storagesystem': VMAXCommonData.storage_system}) @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, '_wrap_get_storage_group_from_volume', return_value=None) @mock.patch.object( @@ -3452,25 +3452,25 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): mock_storage_group, mock_same_host, mock_check): - emc_vmax_utils.LIVE_MIGRATION_FILE = (self.tempdir + - '/livemigrationarray') + utils.LIVE_MIGRATION_FILE = (self.tempdir + + '/livemigrationarray') self.driver.initialize_connection(self.data.test_volume, self.data.connector) @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, '_get_initiator_group_from_masking_view', return_value='value') @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, '_find_initiator_masking_group', return_value='value') @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, '_find_masking_view', return_value='value') @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, '_wrap_get_storage_group_from_volume', return_value=None) @mock.patch.object( @@ -3484,11 +3484,11 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): self.data.connector) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, 'find_device_number', - return_value={'storagesystem': EMCVMAXCommonData.storage_system}) + return_value={'storagesystem': VMAXCommonData.storage_system}) @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, '_wrap_get_storage_group_from_volume', return_value=None) def test_map_no_fast_failed(self, mock_wrap_group, mock_wrap_device): @@ -3498,17 +3498,17 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): self.data.connector) @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, 'get_initiator_group_from_masking_view', return_value='myInitGroup') @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, '_find_initiator_masking_group', return_value='myInitGroup') @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'find_storage_masking_group', - return_value=EMCVMAXCommonData.default_sg_instance_name) + return_value=VMAXCommonData.default_sg_instance_name) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -3520,7 +3520,7 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): self.data.test_volume, self.data.connector) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_volume_size', return_value='2147483648') @mock.patch.object( @@ -3533,7 +3533,7 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): self.driver.extend_volume(self.data.test_volume, newSize) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'check_if_volume_is_extendable', return_value='False') @mock.patch.object( @@ -3550,17 +3550,17 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): newSize) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_meta_members_capacity_in_byte', return_value=[1234567, 7654321]) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_volume_meta_head', - return_value=[EMCVMAXCommonData.test_volume]) + return_value=[VMAXCommonData.test_volume]) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -3570,7 +3570,7 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): mock_meta, mock_size, mock_pool): common = self.driver.common volumeDict = {'classname': u'Symm_StorageVolume', - 'keybindings': EMCVMAXCommonData.keybindings} + 'keybindings': VMAXCommonData.keybindings} common.provision.create_volume_from_pool = ( mock.Mock(return_value=(volumeDict, 0))) common.provision.get_volume_dict_from_job = ( @@ -3578,7 +3578,7 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): self.driver.create_snapshot(self.data.test_snapshot) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'parse_file_to_get_array_map', return_value=None) def test_create_snapshot_no_fast_failed(self, mock_pool): @@ -3589,19 +3589,19 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): @unittest.skip("Skip until bug #1578986 is fixed") @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'compare_size', return_value=0) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_meta_members_capacity_in_byte', return_value=[1234567]) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_volume_meta_head', - return_value=[EMCVMAXCommonData.test_volume]) + return_value=[VMAXCommonData.test_volume]) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'find_sync_sv_by_volume', return_value=(None, None)) @mock.patch.object( @@ -3623,21 +3623,21 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): self.data.test_volume) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'compare_size', return_value=0) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_volume_meta_head', return_value=None) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_find_storage_sync_sv_sv', return_value=(None, None)) @mock.patch.object( FakeDB, 'volume_get', - return_value=EMCVMAXCommonData.test_source_volume) + return_value=VMAXCommonData.test_source_volume) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -3647,34 +3647,34 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): mock_simple_volume, mock_compare): self.data.test_volume['volume_name'] = "vmax-1234567" self.driver.create_cloned_volume(self.data.test_volume, - EMCVMAXCommonData.test_source_volume) + VMAXCommonData.test_source_volume) # Bug https://bugs.launchpad.net/cinder/+bug/1440154 @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_volume_meta_head', - return_value=[EMCVMAXCommonData.test_volume]) + return_value=[VMAXCommonData.test_volume]) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_meta_members_capacity_in_byte', return_value=[1234567, 7654321]) @mock.patch.object( FakeDB, 'volume_get', - return_value=EMCVMAXCommonData.test_source_volume) + return_value=VMAXCommonData.test_source_volume) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', return_value={'volume_backend_name': 'ISCSINoFAST'}) @mock.patch.object( - emc_vmax_provision.EMCVMAXProvision, + provision.VMAXProvision, 'create_element_replica') @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'find_sync_sv_by_volume', return_value=(None, None)) def test_create_clone_assert_clean_up_target_volume( @@ -3692,7 +3692,7 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): self.assertRaises(exception.VolumeBackendAPIException, self.driver.create_cloned_volume, self.data.test_volume, - EMCVMAXCommonData.test_source_volume) + VMAXCommonData.test_source_volume) extraSpecs = common._initial_setup(self.data.test_volume) fastPolicy = extraSpecs['storagetype:fastpolicy'] targetInstance = ( @@ -3713,9 +3713,9 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): self.data.test_host) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -3730,9 +3730,9 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): 'volume_get_all_by_group', return_value=None) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -3744,9 +3744,9 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): self.data.test_ctxt, self.data.test_CG, []) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -3757,24 +3757,24 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): self.data.test_ctxt, self.data.test_CG, []) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'find_group_sync_rg_by_target', return_value="") @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_members_of_replication_group', return_value=()) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_find_consistency_group', return_value=( - EMCVMAXCommonData.test_CG, - EMCVMAXCommonData.test_CG['name'] + "_" + ( - EMCVMAXCommonData.test_CG['id']))) + VMAXCommonData.test_CG, + VMAXCommonData.test_CG['name'] + "_" + ( + VMAXCommonData.test_CG['id']))) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -3786,9 +3786,9 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): self.data.test_ctxt, self.data.test_CG_snapshot, []) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -3799,9 +3799,9 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): self.data.test_ctxt, self.data.test_CG_snapshot, []) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -3828,9 +3828,9 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): add_volumes, remove_volumes) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -3852,25 +3852,25 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): # Bug https://bugs.launchpad.net/cinder/+bug/1442376 @unittest.skip("Skip until bug #1578986 is fixed") @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'compare_size', return_value=0) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_meta_members_capacity_in_byte', return_value=[1234567, 7654321]) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_volume_meta_head', - return_value=[EMCVMAXCommonData.test_volume]) + return_value=[VMAXCommonData.test_volume]) @mock.patch.object( FakeDB, 'volume_get', - return_value=EMCVMAXCommonData.test_source_volume) + return_value=VMAXCommonData.test_source_volume) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -3881,7 +3881,7 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): self.data.test_volume['volume_name'] = "vmax-1234567" common = self.driver.common volumeDict = {'classname': u'Symm_StorageVolume', - 'keybindings': EMCVMAXCommonData.keybindings} + 'keybindings': VMAXCommonData.keybindings} volume = {'size': 0} common.provision.create_volume_from_pool = ( mock.Mock(return_value=(volumeDict, volume['size']))) @@ -3891,9 +3891,9 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): common._create_composite_volume = ( mock.Mock(return_value=(0, volumeDict, - EMCVMAXCommonData.storage_system))) + VMAXCommonData.storage_system))) self.driver.create_cloned_volume(self.data.test_volume, - EMCVMAXCommonData.test_source_volume) + VMAXCommonData.test_source_volume) extraSpecs = self.driver.common._initial_setup(self.data.test_volume) common._create_composite_volume.assert_called_with( volume, "TargetBaseVol", 1234567, extraSpecs, 1) @@ -3911,10 +3911,10 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): def test_get_volume_element_name(self): volumeId = 'ea95aa39-080b-4f11-9856-a03acf9112ad' - utils = self.driver.common.utils - volumeElementName = utils.get_volume_element_name(volumeId) + util = self.driver.common.utils + volumeElementName = util.get_volume_element_name(volumeId) expectVolumeElementName = ( - emc_vmax_utils.VOLUME_ELEMENT_NAME_PREFIX + volumeId) + utils.VOLUME_ELEMENT_NAME_PREFIX + volumeId) self.assertEqual(expectVolumeElementName, volumeElementName) def test_get_associated_replication_from_source_volume(self): @@ -3953,7 +3953,7 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): def test_rename_volume(self): conn = self.fake_ecom_connection() - utils = self.driver.common.utils + util = self.driver.common.utils newName = 'new_name' volume = {} volume['CreationClassName'] = 'Symm_StorageVolume' @@ -3962,12 +3962,12 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): pywbem = mock.Mock() pywbem.cim_obj = mock.Mock() pywbem.cim_obj.CIMInstance = mock.Mock() - emc_vmax_utils.pywbem = pywbem + utils.pywbem = pywbem volumeInstance = conn.GetInstance(volume) originalName = volumeInstance['ElementName'] - volumeInstance = utils.rename_volume(conn, volumeInstance, newName) + volumeInstance = util.rename_volume(conn, volumeInstance, newName) self.assertEqual(newName, volumeInstance['ElementName']) - volumeInstance = utils.rename_volume( + volumeInstance = util.rename_volume( conn, volumeInstance, originalName) self.assertEqual(originalName, volumeInstance['ElementName']) @@ -4049,20 +4049,20 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): self.assertEqual(status, volumes[0]['status']) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'find_group_sync_rg_by_target', return_value="") @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_find_consistency_group', return_value=( - EMCVMAXCommonData.test_CG, - EMCVMAXCommonData.test_CG['name'] + "_" + ( - EMCVMAXCommonData.test_CG['id']))) + VMAXCommonData.test_CG, + VMAXCommonData.test_CG['name'] + "_" + ( + VMAXCommonData.test_CG['id']))) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -4084,11 +4084,11 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): volumes_model_update) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_update_pool_stats', return_value={1, 2, 3, 4, 5}) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'override_ratio', return_value=1.0) def test_ssl_support(self, mock_ratio, pool_stats): @@ -4110,14 +4110,14 @@ class EMCVMAXISCSIDriverNoFastTestCase(test.TestCase): shutil.rmtree(self.tempdir) -class EMCVMAXISCSIDriverFastTestCase(test.TestCase): +class VMAXISCSIDriverFastTestCase(test.TestCase): def setUp(self): - self.data = EMCVMAXCommonData() + self.data = VMAXCommonData() self.tempdir = tempfile.mkdtemp() - super(EMCVMAXISCSIDriverFastTestCase, self).setUp() + super(VMAXISCSIDriverFastTestCase, self).setUp() self.config_file_path = None self.create_fake_config_file_fast() self.addCleanup(self._cleanup) @@ -4126,21 +4126,21 @@ class EMCVMAXISCSIDriverFastTestCase(test.TestCase): configuration.cinder_emc_config_file = self.config_file_path configuration.safe_get.return_value = 'ISCSIFAST' configuration.config_group = 'ISCSIFAST' - self.mock_object(emc_vmax_common.EMCVMAXCommon, '_get_ecom_connection', + self.mock_object(common.VMAXCommon, '_get_ecom_connection', self.fake_ecom_connection) instancename = FakeCIMInstanceName() - self.mock_object(emc_vmax_utils.EMCVMAXUtils, 'get_instance_name', + self.mock_object(utils.VMAXUtils, 'get_instance_name', instancename.fake_getinstancename) - self.mock_object(emc_vmax_utils.EMCVMAXUtils, 'isArrayV3', + self.mock_object(utils.VMAXUtils, 'isArrayV3', self.fake_is_v3) self.mock_object(cinder_utils, 'get_bool_param', return_value=False) - driver = emc_vmax_iscsi.EMCVMAXISCSIDriver(configuration=configuration) + driver = iscsi.VMAXISCSIDriver(configuration=configuration) driver.db = FakeDB() self.driver = driver self.patcher = mock.patch( 'oslo_service.loopingcall.FixedIntervalLoopingCall', - new=utils.ZeroIntervalLoopingCall) + new=unit_utils.ZeroIntervalLoopingCall) self.patcher.start() def create_fake_config_file_fast(self): @@ -4213,27 +4213,27 @@ class EMCVMAXISCSIDriverFastTestCase(test.TestCase): return False @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'override_ratio', return_value=2.0) @mock.patch.object( - emc_vmax_fast.EMCVMAXFast, + fast.VMAXFast, 'get_capacities_associated_to_policy', return_value=(1234, 1200, 1200, 1)) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_pool_capacities', return_value=(1234, 1200, 1200, 1)) @mock.patch.object( - emc_vmax_fast.EMCVMAXFast, + fast.VMAXFast, 'get_tier_policy_by_name', return_value=None) @mock.patch.object( - emc_vmax_fast.EMCVMAXFast, + fast.VMAXFast, 'is_tiering_policy_enabled', return_value=True) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'find_storageSystem', return_value=None) def test_get_volume_stats_fast(self, @@ -4255,13 +4255,13 @@ class EMCVMAXISCSIDriverFastTestCase(test.TestCase): self.driver.common.pool_info['arrays_info'] = [] @mock.patch.object( - emc_vmax_fast.EMCVMAXFast, + fast.VMAXFast, 'get_pool_associated_to_policy', return_value=1) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -4271,13 +4271,13 @@ class EMCVMAXISCSIDriverFastTestCase(test.TestCase): self.driver.create_volume(self.data.test_volume_v2) @mock.patch.object( - emc_vmax_fast.EMCVMAXFast, + fast.VMAXFast, 'get_pool_associated_to_policy', return_value=1) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -4288,13 +4288,13 @@ class EMCVMAXISCSIDriverFastTestCase(test.TestCase): self.driver.create_volume(self.data.test_volume_v2) @mock.patch.object( - emc_vmax_fast.EMCVMAXFast, + fast.VMAXFast, 'get_pool_associated_to_policy', return_value=1) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -4304,7 +4304,7 @@ class EMCVMAXISCSIDriverFastTestCase(test.TestCase): self.driver.create_volume(self.data.test_volume_CG) @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, '_wrap_get_storage_group_from_volume', return_value=None) @mock.patch.object( @@ -4321,7 +4321,7 @@ class EMCVMAXISCSIDriverFastTestCase(test.TestCase): self.data.test_failed_volume) @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, '_wrap_get_storage_group_from_volume', return_value=None) @mock.patch.object( @@ -4352,19 +4352,19 @@ class EMCVMAXISCSIDriverFastTestCase(test.TestCase): self.driver.delete_volume(notfound_delete_vol) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'wait_for_job_complete', return_value=(-1, 'error')) @mock.patch.object( - emc_vmax_fast.EMCVMAXFast, + fast.VMAXFast, 'get_pool_associated_to_policy', return_value=1) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, '_wrap_get_storage_group_from_volume', return_value=None) @mock.patch.object( @@ -4380,16 +4380,16 @@ class EMCVMAXISCSIDriverFastTestCase(test.TestCase): self.data.failed_delete_vol) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_is_same_host', return_value=True) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, 'find_device_number', return_value={'hostlunid': 1, - 'storagesystem': EMCVMAXCommonData.storage_system}) + 'storagesystem': VMAXCommonData.storage_system}) @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, '_wrap_get_storage_group_from_volume', return_value=None) @mock.patch.object( @@ -4405,11 +4405,11 @@ class EMCVMAXISCSIDriverFastTestCase(test.TestCase): self.data.connector) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, 'find_device_number', - return_value={'storagesystem': EMCVMAXCommonData.storage_system}) + return_value={'storagesystem': VMAXCommonData.storage_system}) @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, '_wrap_get_storage_group_from_volume', return_value=None) def test_map_fast_failed(self, mock_wrap_group, mock_wrap_device): @@ -4419,17 +4419,17 @@ class EMCVMAXISCSIDriverFastTestCase(test.TestCase): self.data.connector) @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, 'get_initiator_group_from_masking_view', return_value='myInitGroup') @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, '_find_initiator_masking_group', return_value='myInitGroup') @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'find_storage_masking_group', - return_value=EMCVMAXCommonData.default_sg_instance_name) + return_value=VMAXCommonData.default_sg_instance_name) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -4441,7 +4441,7 @@ class EMCVMAXISCSIDriverFastTestCase(test.TestCase): self.data.test_volume, self.data.connector) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_volume_size', return_value='2147483648') @mock.patch.object( @@ -4454,7 +4454,7 @@ class EMCVMAXISCSIDriverFastTestCase(test.TestCase): self.driver.extend_volume(self.data.test_volume, newSize) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'check_if_volume_is_extendable', return_value='False') @mock.patch.object( @@ -4470,21 +4470,21 @@ class EMCVMAXISCSIDriverFastTestCase(test.TestCase): newSize) @mock.patch.object( - emc_vmax_fast.EMCVMAXFast, + fast.VMAXFast, 'get_pool_associated_to_policy', return_value=1) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_meta_members_capacity_in_byte', return_value=[1234567, 7654321]) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_volume_meta_head', - return_value=[EMCVMAXCommonData.test_volume]) + return_value=[VMAXCommonData.test_volume]) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -4496,7 +4496,7 @@ class EMCVMAXISCSIDriverFastTestCase(test.TestCase): common = self.driver.common volumeDict = {'classname': u'Symm_StorageVolume', - 'keybindings': EMCVMAXCommonData.keybindings} + 'keybindings': VMAXCommonData.keybindings} common.provision.create_volume_from_pool = ( mock.Mock(return_value=(volumeDict, 0))) common.provision.get_volume_dict_from_job = ( @@ -4506,7 +4506,7 @@ class EMCVMAXISCSIDriverFastTestCase(test.TestCase): self.driver.create_snapshot(self.data.test_snapshot) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'parse_file_to_get_array_map', return_value=None) def test_create_snapshot_fast_failed(self, mock_pool): @@ -4517,23 +4517,23 @@ class EMCVMAXISCSIDriverFastTestCase(test.TestCase): @unittest.skip("Skip until bug #1578986 is fixed") @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'compare_size', return_value=0) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'wait_for_job_complete', return_value=(0, 'success')) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_meta_members_capacity_in_byte', return_value=[1234567]) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_volume_meta_head', - return_value=[EMCVMAXCommonData.test_volume]) + return_value=[VMAXCommonData.test_volume]) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'find_sync_sv_by_volume', return_value=(None, None)) @mock.patch.object( @@ -4550,15 +4550,15 @@ class EMCVMAXISCSIDriverFastTestCase(test.TestCase): self.data.test_volume, self.data.test_volume) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'is_clone_licensed', return_value=False) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'find_sync_sv_by_volume', return_value=(None, None)) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'find_replication_service', return_value=None) @mock.patch.object( @@ -4573,28 +4573,28 @@ class EMCVMAXISCSIDriverFastTestCase(test.TestCase): self.assertRaises(exception.VolumeBackendAPIException, self.driver.create_volume_from_snapshot, self.data.test_volume, - EMCVMAXCommonData.test_source_volume) + VMAXCommonData.test_source_volume) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_meta_members_capacity_in_byte', return_value=[1234567, 7654321]) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_volume_meta_head', - return_value=[EMCVMAXCommonData.test_volume]) + return_value=[VMAXCommonData.test_volume]) @mock.patch.object( - emc_vmax_fast.EMCVMAXFast, + fast.VMAXFast, 'get_pool_associated_to_policy', return_value=1) @mock.patch.object( FakeDB, 'volume_get', - return_value=EMCVMAXCommonData.test_source_volume) + return_value=VMAXCommonData.test_source_volume) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -4608,7 +4608,7 @@ class EMCVMAXISCSIDriverFastTestCase(test.TestCase): self.assertRaises(exception.VolumeBackendAPIException, self.driver.create_cloned_volume, self.data.test_volume, - EMCVMAXCommonData.test_source_volume) + VMAXCommonData.test_source_volume) @mock.patch.object( volume_types, @@ -4619,11 +4619,11 @@ class EMCVMAXISCSIDriverFastTestCase(test.TestCase): self.data.test_host) @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, '_wrap_get_storage_group_from_volume', return_value=None) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'parse_pool_instance_id', return_value=('silver', 'SYMMETRIX+000195900551')) @mock.patch.object( @@ -4637,9 +4637,9 @@ class EMCVMAXISCSIDriverFastTestCase(test.TestCase): self.data.diff, self.data.test_host) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -4654,9 +4654,9 @@ class EMCVMAXISCSIDriverFastTestCase(test.TestCase): 'volume_get_all_by_group', return_value=None) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -4668,9 +4668,9 @@ class EMCVMAXISCSIDriverFastTestCase(test.TestCase): self.data.test_ctxt, self.data.test_CG, []) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -4681,24 +4681,24 @@ class EMCVMAXISCSIDriverFastTestCase(test.TestCase): self.data.test_ctxt, self.data.test_CG, []) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'find_group_sync_rg_by_target', return_value="") @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_members_of_replication_group', return_value=()) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_find_consistency_group', return_value=( - EMCVMAXCommonData.test_CG, - EMCVMAXCommonData.test_CG['name'] + "_" + ( - EMCVMAXCommonData.test_CG['id']))) + VMAXCommonData.test_CG, + VMAXCommonData.test_CG['name'] + "_" + ( + VMAXCommonData.test_CG['id']))) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -4710,9 +4710,9 @@ class EMCVMAXISCSIDriverFastTestCase(test.TestCase): self.data.test_ctxt, self.data.test_CG_snapshot, []) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -4723,9 +4723,9 @@ class EMCVMAXISCSIDriverFastTestCase(test.TestCase): self.data.test_ctxt, self.data.test_CG_snapshot, []) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -4745,9 +4745,9 @@ class EMCVMAXISCSIDriverFastTestCase(test.TestCase): add_volumes, remove_volumes) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -4774,13 +4774,13 @@ class EMCVMAXISCSIDriverFastTestCase(test.TestCase): @ddt.ddt -class EMCVMAXFCDriverNoFastTestCase(test.TestCase): +class VMAXFCDriverNoFastTestCase(test.TestCase): def setUp(self): - self.data = EMCVMAXCommonData() + self.data = VMAXCommonData() self.tempdir = tempfile.mkdtemp() - super(EMCVMAXFCDriverNoFastTestCase, self).setUp() + super(VMAXFCDriverNoFastTestCase, self).setUp() self.config_file_path = None self.create_fake_config_file_no_fast() self.addCleanup(self._cleanup) @@ -4790,23 +4790,23 @@ class EMCVMAXFCDriverNoFastTestCase(test.TestCase): configuration.safe_get.return_value = 'FCNoFAST' configuration.config_group = 'FCNoFAST' - self.mock_object(emc_vmax_common.EMCVMAXCommon, '_get_ecom_connection', + self.mock_object(common.VMAXCommon, '_get_ecom_connection', self.fake_ecom_connection) instancename = FakeCIMInstanceName() - self.mock_object(emc_vmax_utils.EMCVMAXUtils, 'get_instance_name', + self.mock_object(utils.VMAXUtils, 'get_instance_name', instancename.fake_getinstancename) - self.mock_object(emc_vmax_utils.EMCVMAXUtils, 'isArrayV3', + self.mock_object(utils.VMAXUtils, 'isArrayV3', self.fake_is_v3) - self.mock_object(emc_vmax_utils.EMCVMAXUtils, '_is_sync_complete', + self.mock_object(utils.VMAXUtils, '_is_sync_complete', return_value=True) self.mock_object(cinder_utils, 'get_bool_param', return_value=False) - driver = emc_vmax_fc.EMCVMAXFCDriver(configuration=configuration) + driver = fc.VMAXFCDriver(configuration=configuration) driver.db = FakeDB() driver.common.conn = FakeEcomConnection() driver.zonemanager_lookup_service = FakeLookupService() self.driver = driver - self.driver.utils = emc_vmax_utils.EMCVMAXUtils(object) + self.driver.utils = utils.VMAXUtils(object) def create_fake_config_file_no_fast(self): @@ -4873,19 +4873,19 @@ class EMCVMAXFCDriverNoFastTestCase(test.TestCase): return False @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'override_ratio', return_value=2.0) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_pool_capacities', return_value=(1234, 1200, 1200, 1)) @mock.patch.object( - emc_vmax_fast.EMCVMAXFast, + fast.VMAXFast, 'is_tiering_policy_enabled', return_value=False) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'find_storageSystem', return_value=None) def test_get_volume_stats_no_fast(self, @@ -4896,9 +4896,9 @@ class EMCVMAXFCDriverNoFastTestCase(test.TestCase): self.driver.get_volume_stats(True) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -4908,9 +4908,9 @@ class EMCVMAXFCDriverNoFastTestCase(test.TestCase): self.driver.create_volume(self.data.test_volume_v2) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -4921,9 +4921,9 @@ class EMCVMAXFCDriverNoFastTestCase(test.TestCase): self.driver.create_volume(self.data.test_volume_v2) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -4933,9 +4933,9 @@ class EMCVMAXFCDriverNoFastTestCase(test.TestCase): self.driver.create_volume(self.data.test_volume_CG) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -4976,13 +4976,13 @@ class EMCVMAXFCDriverNoFastTestCase(test.TestCase): self.driver.delete_volume(notfound_delete_vol) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'wait_for_job_complete', return_value=(-1, 'error')) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -4995,13 +4995,13 @@ class EMCVMAXFCDriverNoFastTestCase(test.TestCase): self.data.failed_delete_vol) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_is_same_host', return_value=True) @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, 'get_masking_view_from_storage_group', - return_value=EMCVMAXCommonData.lunmaskctrl_name) + return_value=VMAXCommonData.lunmaskctrl_name) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -5012,27 +5012,27 @@ class EMCVMAXFCDriverNoFastTestCase(test.TestCase): self.data.test_volume['volume_name'] = "vmax-1234567" common = self.driver.common common.get_target_wwns_from_masking_view = mock.Mock( - return_value=EMCVMAXCommonData.target_wwns) + return_value=VMAXCommonData.target_wwns) common._get_correct_port_group = mock.Mock( return_value=self.data.port_group) lookup_service = self.driver.zonemanager_lookup_service lookup_service.get_device_mapping_from_network = mock.Mock( - return_value=EMCVMAXCommonData.device_map) + return_value=VMAXCommonData.device_map) data = self.driver.initialize_connection(self.data.test_volume, self.data.connector) common.get_target_wwns_from_masking_view.assert_called_once_with( - EMCVMAXCommonData.storage_system, self.data.test_volume, - EMCVMAXCommonData.connector) + VMAXCommonData.storage_system, self.data.test_volume, + VMAXCommonData.connector) lookup_service.get_device_mapping_from_network.assert_called_once_with( - EMCVMAXCommonData.connector['wwpns'], - EMCVMAXCommonData.target_wwns) + VMAXCommonData.connector['wwpns'], + VMAXCommonData.target_wwns) # Test the lookup service code path. for init, target in data['data']['initiator_target_map'].items(): self.assertEqual(init, target[0][::-1]) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, 'find_device_number', return_value={'Name': "0001"}) @mock.patch.object( @@ -5047,17 +5047,17 @@ class EMCVMAXFCDriverNoFastTestCase(test.TestCase): self.data.connector) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, 'check_ig_instance_name', return_value=None) @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, '_find_initiator_masking_group', return_value='myInitGroup') @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, 'get_masking_view_by_volume', - return_value=EMCVMAXCommonData.lunmaskctrl_name) + return_value=VMAXCommonData.lunmaskctrl_name) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -5069,7 +5069,7 @@ class EMCVMAXFCDriverNoFastTestCase(test.TestCase): self.data.connector) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_volume_size', return_value='2147483648') @mock.patch.object( @@ -5082,7 +5082,7 @@ class EMCVMAXFCDriverNoFastTestCase(test.TestCase): self.driver.extend_volume(self.data.test_volume, newSize) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'check_if_volume_is_extendable', return_value='False') @mock.patch.object( @@ -5106,9 +5106,9 @@ class EMCVMAXFCDriverNoFastTestCase(test.TestCase): self.data.test_host) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -5123,9 +5123,9 @@ class EMCVMAXFCDriverNoFastTestCase(test.TestCase): 'volume_get_all_by_group', return_value=None) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -5137,9 +5137,9 @@ class EMCVMAXFCDriverNoFastTestCase(test.TestCase): self.data.test_ctxt, self.data.test_CG, []) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -5150,24 +5150,24 @@ class EMCVMAXFCDriverNoFastTestCase(test.TestCase): self.data.test_ctxt, self.data.test_CG, []) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'find_group_sync_rg_by_target', return_value="") @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_members_of_replication_group', return_value=()) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_find_consistency_group', return_value=( - EMCVMAXCommonData.test_CG, - EMCVMAXCommonData.test_CG['name'] + "_" + ( - EMCVMAXCommonData.test_CG['id']))) + VMAXCommonData.test_CG, + VMAXCommonData.test_CG['name'] + "_" + ( + VMAXCommonData.test_CG['id']))) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -5179,9 +5179,9 @@ class EMCVMAXFCDriverNoFastTestCase(test.TestCase): self.data.test_ctxt, self.data.test_CG_snapshot, []) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -5329,14 +5329,14 @@ class EMCVMAXFCDriverNoFastTestCase(test.TestCase): shutil.rmtree(self.tempdir) -class EMCVMAXFCDriverFastTestCase(test.TestCase): +class VMAXFCDriverFastTestCase(test.TestCase): def setUp(self): - self.data = EMCVMAXCommonData() + self.data = VMAXCommonData() self.tempdir = tempfile.mkdtemp() - super(EMCVMAXFCDriverFastTestCase, self).setUp() + super(VMAXFCDriverFastTestCase, self).setUp() self.config_file_path = None self.create_fake_config_file_fast() self.addCleanup(self._cleanup) @@ -5347,24 +5347,24 @@ class EMCVMAXFCDriverFastTestCase(test.TestCase): configuration.safe_get.return_value = 'FCFAST' configuration.config_group = 'FCFAST' - self.mock_object(emc_vmax_common.EMCVMAXCommon, '_get_ecom_connection', + self.mock_object(common.VMAXCommon, '_get_ecom_connection', self.fake_ecom_connection) instancename = FakeCIMInstanceName() - self.mock_object(emc_vmax_utils.EMCVMAXUtils, 'get_instance_name', + self.mock_object(utils.VMAXUtils, 'get_instance_name', instancename.fake_getinstancename) - self.mock_object(emc_vmax_utils.EMCVMAXUtils, 'isArrayV3', + self.mock_object(utils.VMAXUtils, 'isArrayV3', self.fake_is_v3) - self.mock_object(emc_vmax_utils.EMCVMAXUtils, '_is_sync_complete', + self.mock_object(utils.VMAXUtils, '_is_sync_complete', return_value=True) self.mock_object(cinder_utils, 'get_bool_param', return_value=False) - driver = emc_vmax_fc.EMCVMAXFCDriver(configuration=configuration) + driver = fc.VMAXFCDriver(configuration=configuration) driver.db = FakeDB() driver.common.conn = FakeEcomConnection() driver.zonemanager_lookup_service = None self.driver = driver - self.driver.utils = emc_vmax_utils.EMCVMAXUtils(object) - self.driver.masking = emc_vmax_masking.EMCVMAXMasking('FC') + self.driver.utils = utils.VMAXUtils(object) + self.driver.masking = masking.VMAXMasking('FC') def create_fake_config_file_fast(self): @@ -5436,27 +5436,27 @@ class EMCVMAXFCDriverFastTestCase(test.TestCase): return False @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'override_ratio', return_value=2.0) @mock.patch.object( - emc_vmax_fast.EMCVMAXFast, + fast.VMAXFast, 'get_capacities_associated_to_policy', return_value=(1234, 1200, 1200, 1)) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_pool_capacities', return_value=(1234, 1200, 1200, 1)) @mock.patch.object( - emc_vmax_fast.EMCVMAXFast, + fast.VMAXFast, 'get_tier_policy_by_name', return_value=None) @mock.patch.object( - emc_vmax_fast.EMCVMAXFast, + fast.VMAXFast, 'is_tiering_policy_enabled', return_value=True) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'find_storageSystem', return_value=None) def test_get_volume_stats_fast(self, @@ -5469,13 +5469,13 @@ class EMCVMAXFCDriverFastTestCase(test.TestCase): self.driver.get_volume_stats(True) @mock.patch.object( - emc_vmax_fast.EMCVMAXFast, + fast.VMAXFast, 'get_pool_associated_to_policy', return_value=1) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -5485,13 +5485,13 @@ class EMCVMAXFCDriverFastTestCase(test.TestCase): self.driver.create_volume(self.data.test_volume_v2) @mock.patch.object( - emc_vmax_fast.EMCVMAXFast, + fast.VMAXFast, 'get_pool_associated_to_policy', return_value=1) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -5502,13 +5502,13 @@ class EMCVMAXFCDriverFastTestCase(test.TestCase): self.driver.create_volume(self.data.test_volume_v2) @mock.patch.object( - emc_vmax_fast.EMCVMAXFast, + fast.VMAXFast, 'get_pool_associated_to_policy', return_value=1) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -5518,7 +5518,7 @@ class EMCVMAXFCDriverFastTestCase(test.TestCase): self.driver.create_volume(self.data.test_volume_CG) @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, '_wrap_get_storage_group_from_volume', return_value=None) @mock.patch.object( @@ -5563,19 +5563,19 @@ class EMCVMAXFCDriverFastTestCase(test.TestCase): self.driver.delete_volume(notfound_delete_vol) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'wait_for_job_complete', return_value=(-1, 'error')) @mock.patch.object( - emc_vmax_fast.EMCVMAXFast, + fast.VMAXFast, 'get_pool_associated_to_policy', return_value=1) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, '_wrap_get_storage_group_from_volume', return_value=None) @mock.patch.object( @@ -5591,13 +5591,13 @@ class EMCVMAXFCDriverFastTestCase(test.TestCase): self.data.failed_delete_vol) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_is_same_host', return_value=True) @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, 'get_masking_view_from_storage_group', - return_value=EMCVMAXCommonData.lunmaskctrl_name) + return_value=VMAXCommonData.lunmaskctrl_name) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -5607,19 +5607,19 @@ class EMCVMAXFCDriverFastTestCase(test.TestCase): mock_is_same_host): common = self.driver.common common.get_target_wwns = mock.Mock( - return_value=EMCVMAXCommonData.target_wwns) + return_value=VMAXCommonData.target_wwns) self.driver.common._get_correct_port_group = mock.Mock( return_value=self.data.port_group) data = self.driver.initialize_connection( self.data.test_volume, self.data.connector) # Test the no lookup service, pre-zoned case. common.get_target_wwns.assert_called_once_with( - EMCVMAXCommonData.storage_system, EMCVMAXCommonData.connector) + VMAXCommonData.storage_system, VMAXCommonData.connector) for init, target in data['data']['initiator_target_map'].items(): self.assertIn(init[::-1], target) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, 'find_device_number', return_value={'Name': "0001"}) @mock.patch.object( @@ -5634,25 +5634,25 @@ class EMCVMAXFCDriverFastTestCase(test.TestCase): self.data.connector) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, 'check_ig_instance_name', return_value='myInitGroup') @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, 'get_masking_views_by_port_group', return_value=[]) @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, 'get_initiator_group_from_masking_view', return_value='myInitGroup') @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, '_find_initiator_masking_group', return_value='myInitGroup') @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, 'get_masking_view_by_volume', - return_value=EMCVMAXCommonData.lunmaskctrl_name) + return_value=VMAXCommonData.lunmaskctrl_name) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -5662,16 +5662,16 @@ class EMCVMAXFCDriverFastTestCase(test.TestCase): mock_ig, mock_igc, mock_mv, mock_check_ig): common = self.driver.common common.get_target_wwns = mock.Mock( - return_value=EMCVMAXCommonData.target_wwns) + return_value=VMAXCommonData.target_wwns) data = self.driver.terminate_connection(self.data.test_volume, self.data.connector) common.get_target_wwns.assert_called_once_with( - EMCVMAXCommonData.storage_system, EMCVMAXCommonData.connector) - numTargetWwns = len(EMCVMAXCommonData.target_wwns) + VMAXCommonData.storage_system, VMAXCommonData.connector) + numTargetWwns = len(VMAXCommonData.target_wwns) self.assertEqual(numTargetWwns, len(data['data'])) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_volume_size', return_value='2147483648') @mock.patch.object( @@ -5684,7 +5684,7 @@ class EMCVMAXFCDriverFastTestCase(test.TestCase): self.driver.extend_volume(self.data.test_volume, newSize) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'check_if_volume_is_extendable', return_value='False') @mock.patch.object( @@ -5701,21 +5701,21 @@ class EMCVMAXFCDriverFastTestCase(test.TestCase): newSize) @mock.patch.object( - emc_vmax_fast.EMCVMAXFast, + fast.VMAXFast, 'get_pool_associated_to_policy', return_value=1) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_meta_members_capacity_in_byte', return_value=[1234567, 7654321]) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_volume_meta_head', - return_value=[EMCVMAXCommonData.test_volume]) + return_value=[VMAXCommonData.test_volume]) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -5726,7 +5726,7 @@ class EMCVMAXFCDriverFastTestCase(test.TestCase): common = self.driver.common volumeDict = {'classname': u'Symm_StorageVolume', - 'keybindings': EMCVMAXCommonData.keybindings} + 'keybindings': VMAXCommonData.keybindings} common.provision.create_volume_from_pool = ( mock.Mock(return_value=(volumeDict, 0))) common.provision.get_volume_dict_from_job = ( @@ -5736,7 +5736,7 @@ class EMCVMAXFCDriverFastTestCase(test.TestCase): self.driver.create_snapshot(self.data.test_snapshot) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'parse_file_to_get_array_map', return_value=None) def test_create_snapshot_fast_failed(self, mock_pool): @@ -5747,19 +5747,19 @@ class EMCVMAXFCDriverFastTestCase(test.TestCase): @unittest.skip("Skip until bug #1578986 is fixed") @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'compare_size', return_value=0) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_meta_members_capacity_in_byte', return_value=[1234567]) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_volume_meta_head', - return_value=[EMCVMAXCommonData.test_volume]) + return_value=[VMAXCommonData.test_volume]) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'find_sync_sv_by_volume', return_value=(None, None)) @mock.patch.object( @@ -5776,15 +5776,15 @@ class EMCVMAXFCDriverFastTestCase(test.TestCase): self.data.test_volume, self.data.test_volume) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'is_clone_licensed', return_value=False) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'find_sync_sv_by_volume', return_value=(None, None)) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'find_replication_service', return_value=None) @mock.patch.object( @@ -5799,10 +5799,10 @@ class EMCVMAXFCDriverFastTestCase(test.TestCase): self.assertRaises(exception.VolumeBackendAPIException, self.driver.create_volume_from_snapshot, self.data.test_volume, - EMCVMAXCommonData.test_source_volume) + VMAXCommonData.test_source_volume) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'compare_size', return_value=0) def test_create_clone_simple_volume_fast_success(self, mock_compare): @@ -5815,7 +5815,7 @@ class EMCVMAXFCDriverFastTestCase(test.TestCase): self.driver.utils.is_clone_licensed = ( mock.Mock(return_value=True)) FakeDB.volume_get = ( - mock.Mock(return_value=EMCVMAXCommonData.test_source_volume)) + mock.Mock(return_value=VMAXCommonData.test_source_volume)) self.data.test_volume['volume_name'] = "vmax-1234567" self.driver.common.fast.is_volume_in_default_SG = ( mock.Mock(return_value=True)) @@ -5823,28 +5823,28 @@ class EMCVMAXFCDriverFastTestCase(test.TestCase): self.driver.common._find_storage_sync_sv_sv = ( mock.Mock(return_value=(None, None))) self.driver.create_cloned_volume(self.data.test_volume, - EMCVMAXCommonData.test_source_volume) + VMAXCommonData.test_source_volume) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_meta_members_capacity_in_byte', return_value=[1234567, 7654321]) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_volume_meta_head', - return_value=[EMCVMAXCommonData.test_volume]) + return_value=[VMAXCommonData.test_volume]) @mock.patch.object( - emc_vmax_fast.EMCVMAXFast, + fast.VMAXFast, 'get_pool_associated_to_policy', return_value=1) @mock.patch.object( FakeDB, 'volume_get', - return_value=EMCVMAXCommonData.test_source_volume) + return_value=VMAXCommonData.test_source_volume) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -5858,7 +5858,7 @@ class EMCVMAXFCDriverFastTestCase(test.TestCase): self.assertRaises(exception.VolumeBackendAPIException, self.driver.create_cloned_volume, self.data.test_volume, - EMCVMAXCommonData.test_source_volume) + VMAXCommonData.test_source_volume) @mock.patch.object( volume_types, @@ -5869,9 +5869,9 @@ class EMCVMAXFCDriverFastTestCase(test.TestCase): self.data.test_host) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -5886,9 +5886,9 @@ class EMCVMAXFCDriverFastTestCase(test.TestCase): 'volume_get_all_by_group', return_value=None) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -5900,9 +5900,9 @@ class EMCVMAXFCDriverFastTestCase(test.TestCase): self.data.test_ctxt, self.data.test_CG, []) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -5913,24 +5913,24 @@ class EMCVMAXFCDriverFastTestCase(test.TestCase): self.data.test_ctxt, self.data.test_CG, []) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'find_group_sync_rg_by_target', return_value="") @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_members_of_replication_group', return_value=()) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_find_consistency_group', return_value=( - EMCVMAXCommonData.test_CG, - EMCVMAXCommonData.test_CG['name'] + "_" + ( - EMCVMAXCommonData.test_CG['id']))) + VMAXCommonData.test_CG, + VMAXCommonData.test_CG['name'] + "_" + ( + VMAXCommonData.test_CG['id']))) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -5942,9 +5942,9 @@ class EMCVMAXFCDriverFastTestCase(test.TestCase): self.data.test_ctxt, self.data.test_CG_snapshot, []) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -5956,18 +5956,18 @@ class EMCVMAXFCDriverFastTestCase(test.TestCase): # Bug 1385450 @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'is_clone_licensed', return_value=False) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'find_replication_service_capabilities', return_value={'InstanceID': 'SYMMETRIX+1385450'}) def test_create_clone_without_license(self, mock_service, mock_license): self.assertRaises(exception.VolumeBackendAPIException, self.driver.create_cloned_volume, self.data.test_volume, - EMCVMAXCommonData.test_source_volume) + VMAXCommonData.test_source_volume) def test_manage_existing_fast_failed(self): volume = {} @@ -6000,7 +6000,7 @@ class EMCV3DriverTestCase(test.TestCase): def setUp(self): - self.data = EMCVMAXCommonData() + self.data = VMAXCommonData() self.data.storage_system = 'SYMMETRIX-+-000197200056' @@ -6017,21 +6017,21 @@ class EMCV3DriverTestCase(test.TestCase): configuration.cinder_emc_config_file = self.config_file_path configuration.config_group = 'V3' - self.mock_object(emc_vmax_common.EMCVMAXCommon, '_get_ecom_connection', + self.mock_object(common.VMAXCommon, '_get_ecom_connection', self.fake_ecom_connection) self.mock_object(cinder_utils, 'get_bool_param', return_value=False) instancename = FakeCIMInstanceName() - self.mock_object(emc_vmax_utils.EMCVMAXUtils, 'get_instance_name', + self.mock_object(utils.VMAXUtils, 'get_instance_name', instancename.fake_getinstancename) - self.mock_object(emc_vmax_utils.EMCVMAXUtils, 'isArrayV3', + self.mock_object(utils.VMAXUtils, 'isArrayV3', self.fake_is_v3) self.patcher = mock.patch( 'oslo_service.loopingcall.FixedIntervalLoopingCall', - new=utils.ZeroIntervalLoopingCall) + new=unit_utils.ZeroIntervalLoopingCall) self.patcher.start() - driver = emc_vmax_fc.EMCVMAXFCDriver(configuration=configuration) + driver = fc.VMAXFCDriver(configuration=configuration) driver.db = FakeDB() self.driver = driver @@ -6201,13 +6201,13 @@ class EMCV3DriverTestCase(test.TestCase): vol['name'], extraSpecs) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'override_ratio', return_value=2.0) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'find_storageSystem', - return_value={'Name': EMCVMAXCommonData.storage_system_v3}) + return_value={'Name': VMAXCommonData.storage_system_v3}) def test_get_volume_stats_v3( self, mock_storage_system, mock_or): self.driver.common.pool_info['reserved_percentage'] = 5 @@ -6215,9 +6215,9 @@ class EMCV3DriverTestCase(test.TestCase): self.driver.common.pool_info['reserved_percentage'] = 0 @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -6232,17 +6232,17 @@ class EMCV3DriverTestCase(test.TestCase): self.driver.create_volume(self.data.test_volume_v3) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_initial_setup', - return_value=(EMCVMAXCommonData.extra_specs_no_slo)) + return_value=(VMAXCommonData.extra_specs_no_slo)) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_or_create_storage_group_v3', - return_value=(EMCVMAXCommonData.default_sg_instance_name)) + return_value=(VMAXCommonData.default_sg_instance_name)) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -6256,9 +6256,9 @@ class EMCV3DriverTestCase(test.TestCase): self.driver.create_volume(v3_vol) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -6289,9 +6289,9 @@ class EMCV3DriverTestCase(test.TestCase): self.driver.create_volume(v3_vol) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -6313,9 +6313,9 @@ class EMCV3DriverTestCase(test.TestCase): self.data.test_volume) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -6339,9 +6339,9 @@ class EMCV3DriverTestCase(test.TestCase): @unittest.skip("Skip until bug #1578986 is fixed") @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -6369,13 +6369,13 @@ class EMCV3DriverTestCase(test.TestCase): @unittest.skip("Skip until bug #1578986 is fixed") @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'compare_size', return_value=0) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -6383,7 +6383,7 @@ class EMCV3DriverTestCase(test.TestCase): @mock.patch.object( FakeDB, 'volume_get', - return_value=EMCVMAXCommonData.test_source_volume) + return_value=VMAXCommonData.test_source_volume) def test_create_cloned_volume_v3_success( self, mock_volume_db, mock_type, mock_pool, mock_compare): self.data.test_volume_v3['volume_name'] = "vmax-1234567" @@ -6412,9 +6412,9 @@ class EMCV3DriverTestCase(test.TestCase): self.driver.create_cloned_volume(cloneVol, self.data.test_volume_v3) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -6429,9 +6429,9 @@ class EMCV3DriverTestCase(test.TestCase): 'volume_get_all_by_group', return_value=None) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -6443,9 +6443,9 @@ class EMCV3DriverTestCase(test.TestCase): self.data.test_ctxt, self.data.test_CG, []) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -6466,19 +6466,19 @@ class EMCV3DriverTestCase(test.TestCase): self.data.test_host) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_volume_element_name', return_value='1') @mock.patch.object( - emc_vmax_provision_v3.EMCVMAXProvisionV3, + provision_v3.VMAXProvisionV3, '_find_new_storage_group', - return_value=EMCVMAXCommonData.default_sg_instance_name) + return_value=VMAXCommonData.default_sg_instance_name) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'wrap_get_storage_group_from_volume', return_value=None) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, '_get_fast_settings_from_storage_group', return_value='Gold+DSS_REP') @mock.patch.object( @@ -6495,7 +6495,7 @@ class EMCV3DriverTestCase(test.TestCase): self.data.diff, self.data.test_host_v3)) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, '_get_fast_settings_from_storage_group', return_value='Bronze+DSS') @mock.patch.object( @@ -6511,24 +6511,24 @@ class EMCV3DriverTestCase(test.TestCase): self.data.diff, self.data.test_host_v3)) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'find_group_sync_rg_by_target', return_value=1) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_members_of_replication_group', return_value=()) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_find_consistency_group', return_value=( - EMCVMAXCommonData.test_CG, - EMCVMAXCommonData.test_CG['name'] + "_" + ( - EMCVMAXCommonData.test_CG['id']))) + VMAXCommonData.test_CG, + VMAXCommonData.test_CG['name'] + "_" + ( + VMAXCommonData.test_CG['id']))) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -6543,14 +6543,14 @@ class EMCV3DriverTestCase(test.TestCase): repServ = self.conn.EnumerateInstanceNames("EMC_ReplicationService")[0] provisionv3.create_group_replica.assert_called_once_with( self.conn, repServ, - EMCVMAXCommonData.test_CG, - EMCVMAXCommonData.test_CG, '12de', - EMCVMAXCommonData.extra_specs) + VMAXCommonData.test_CG, + VMAXCommonData.test_CG, '12de', + VMAXCommonData.extra_specs) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -6561,9 +6561,9 @@ class EMCV3DriverTestCase(test.TestCase): self.data.test_ctxt, self.data.test_CG_snapshot, []) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system_v3)) + return_value=(None, VMAXCommonData.storage_system_v3)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -6590,9 +6590,9 @@ class EMCV3DriverTestCase(test.TestCase): add_volumes, remove_volumes) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system_v3)) + return_value=(None, VMAXCommonData.storage_system_v3)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -6612,17 +6612,17 @@ class EMCV3DriverTestCase(test.TestCase): add_volumes, remove_volumes) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_volume_element_name', return_value='1') @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_is_same_host', return_value=True) @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, 'get_masking_view_from_storage_group', - return_value=EMCVMAXCommonData.lunmaskctrl_name) + return_value=VMAXCommonData.lunmaskctrl_name) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -6632,7 +6632,7 @@ class EMCV3DriverTestCase(test.TestCase): mock_element_name): common = self.driver.common common.get_target_wwns = mock.Mock( - return_value=EMCVMAXCommonData.target_wwns) + return_value=VMAXCommonData.target_wwns) self.driver.common._initial_setup = mock.Mock( return_value=self.default_extraspec()) self.driver.common._get_correct_port_group = mock.Mock( @@ -6641,12 +6641,12 @@ class EMCV3DriverTestCase(test.TestCase): self.data.test_volume_v3, self.data.connector) # Test the no lookup service, pre-zoned case. common.get_target_wwns.assert_called_once_with( - EMCVMAXCommonData.storage_system, EMCVMAXCommonData.connector) + VMAXCommonData.storage_system, VMAXCommonData.connector) for init, target in data['data']['initiator_target_map'].items(): self.assertIn(init[::-1], target) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, 'find_device_number', return_value={'Name': "0001"}) @mock.patch.object( @@ -6662,29 +6662,29 @@ class EMCV3DriverTestCase(test.TestCase): self.data.connector) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_volume_element_name', return_value='1') @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, 'check_ig_instance_name', return_value='myInitGroup') @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, 'get_masking_views_by_port_group', return_value=[]) @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, 'get_initiator_group_from_masking_view', return_value='myInitGroup') @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, '_find_initiator_masking_group', return_value='myInitGroup') @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, 'get_masking_view_from_storage_group', - return_value=EMCVMAXCommonData.lunmaskctrl_name) + return_value=VMAXCommonData.lunmaskctrl_name) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -6694,7 +6694,7 @@ class EMCV3DriverTestCase(test.TestCase): mock_element_name): common = self.driver.common common.get_target_wwns = mock.Mock( - return_value=EMCVMAXCommonData.target_wwns) + return_value=VMAXCommonData.target_wwns) common.masking.utils.find_storage_masking_group = mock.Mock( return_value=self.data.storagegroups[0]) self.driver.common._initial_setup = mock.Mock( @@ -6702,15 +6702,15 @@ class EMCV3DriverTestCase(test.TestCase): data = self.driver.terminate_connection(self.data.test_volume_v3, self.data.connector) common.get_target_wwns.assert_called_once_with( - EMCVMAXCommonData.storage_system, EMCVMAXCommonData.connector) - numTargetWwns = len(EMCVMAXCommonData.target_wwns) + VMAXCommonData.storage_system, VMAXCommonData.connector) + numTargetWwns = len(VMAXCommonData.target_wwns) self.assertEqual(numTargetWwns, len(data['data'])) # Bug https://bugs.launchpad.net/cinder/+bug/1440154 @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( volume_types, 'get_volume_type_extra_specs', @@ -6718,12 +6718,12 @@ class EMCV3DriverTestCase(test.TestCase): @mock.patch.object( FakeDB, 'volume_get', - return_value=EMCVMAXCommonData.test_source_volume_v3) + return_value=VMAXCommonData.test_source_volume_v3) @mock.patch.object( - emc_vmax_provision_v3.EMCVMAXProvisionV3, + provision_v3.VMAXProvisionV3, 'create_element_replica') @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'find_sync_sv_by_volume', return_value=(None, None)) def test_create_clone_v3_assert_clean_up_target_volume( @@ -6735,13 +6735,13 @@ class EMCV3DriverTestCase(test.TestCase): common.utils.is_clone_licensed = ( mock.Mock(return_value=True)) volumeDict = {'classname': u'Symm_StorageVolume', - 'keybindings': EMCVMAXCommonData.keybindings} + 'keybindings': VMAXCommonData.keybindings} common._create_v3_volume = ( mock.Mock(return_value=(0, volumeDict, self.data.storage_system))) conn = self.fake_ecom_connection() storageConfigService = [] storageConfigService = {} - storageConfigService['SystemName'] = EMCVMAXCommonData.storage_system + storageConfigService['SystemName'] = VMAXCommonData.storage_system storageConfigService['CreationClassName'] = ( self.data.stconf_service_creationclass) common._delete_from_pool_v3 = mock.Mock(return_value=0) @@ -6749,7 +6749,7 @@ class EMCV3DriverTestCase(test.TestCase): self.assertRaises(exception.VolumeBackendAPIException, self.driver.create_cloned_volume, self.data.test_volume_v3, - EMCVMAXCommonData.test_source_volume_v3) + VMAXCommonData.test_source_volume_v3) extraSpecs = common._initial_setup(self.data.test_volume_v3) targetInstance = ( conn.EnumerateInstanceNames("EMC_StorageVolume")[0]) @@ -6782,11 +6782,11 @@ class EMCV3DriverTestCase(test.TestCase): self.assertEqual(remainingSLOCapacityGb, remainingCapacityGb) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_volume_element_name', return_value='1') @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_volume_size', return_value='2147483648') def test_extend_volume(self, mock_volume_size, mock_element_name): @@ -6856,7 +6856,7 @@ class EMCV3DriverTestCase(test.TestCase): class EMCV3MultiPoolDriverTestCase(test.TestCase): def setUp(self): - self.data = EMCVMAXCommonData() + self.data = VMAXCommonData() self.vol_v3 = self.data.test_volume_v4 self.vol_v3['provider_location'] = ( six.text_type(self.data.provider_location_multi_pool)) @@ -6868,27 +6868,27 @@ class EMCV3MultiPoolDriverTestCase(test.TestCase): configuration = mock.Mock() configuration.safe_get.return_value = 'MULTI_POOL_V3' configuration.config_group = 'MULTI_POOL_V3' - self.mock_object(emc_vmax_common.EMCVMAXCommon, '_get_ecom_connection', + self.mock_object(common.VMAXCommon, '_get_ecom_connection', self.fake_ecom_connection) - self.mock_object(emc_vmax_common.EMCVMAXCommon, '_gather_info', + self.mock_object(common.VMAXCommon, '_gather_info', self.fake_gather_info) instancename = FakeCIMInstanceName() - self.mock_object(emc_vmax_utils.EMCVMAXUtils, 'get_instance_name', + self.mock_object(utils.VMAXUtils, 'get_instance_name', instancename.fake_getinstancename) - self.mock_object(emc_vmax_utils.EMCVMAXUtils, 'isArrayV3', + self.mock_object(utils.VMAXUtils, 'isArrayV3', return_value=True) - self.mock_object(emc_vmax_utils.EMCVMAXUtils, '_is_sync_complete', + self.mock_object(utils.VMAXUtils, '_is_sync_complete', return_value=True) - self.mock_object(emc_vmax_common.EMCVMAXCommon, + self.mock_object(common.VMAXCommon, '_get_multi_pool_support_enabled_flag', return_value=True) volume_types.get_volume_type_extra_specs = mock.Mock( return_value={'volume_backend_name': 'MULTI_POOL_BE', 'pool_name': 'Bronze+DSS+SRP_1+1234567891011'}) - driver = emc_vmax_fc.EMCVMAXFCDriver(configuration=configuration) + driver = fc.VMAXFCDriver(configuration=configuration) driver.db = FakeDB() self.driver = driver - self.driver.utils = emc_vmax_utils.EMCVMAXUtils(object) + self.driver.utils = utils.VMAXUtils(object) def create_fake_config_file_multi_pool_v3(self, tempdir): doc = minidom.Document() @@ -7137,13 +7137,13 @@ class EMCV3MultiPoolDriverTestCase(test.TestCase): self.assertIsNone(pool) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'override_ratio', return_value=2.0) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'find_storageSystem', - return_value={'Name': EMCVMAXCommonData.storage_system_v3}) + return_value={'Name': VMAXCommonData.storage_system_v3}) def test_get_volume_stats_v3( self, mock_storage_system, mock_or): self.driver.common.pool_info['reserved_percentage'] = 5 @@ -7151,17 +7151,17 @@ class EMCV3MultiPoolDriverTestCase(test.TestCase): self.driver.common.pool_info['reserved_percentage'] = 0 @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_initial_setup', - return_value=EMCVMAXCommonData.multi_pool_extra_specs) + return_value=VMAXCommonData.multi_pool_extra_specs) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_or_create_storage_group_v3', - return_value=EMCVMAXCommonData.default_sg_instance_name) + return_value=VMAXCommonData.default_sg_instance_name) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) def test_create_volume_multi_slo_success( self, mock_storage_system, mock_sg, mock_is): self.vol_v3['host'] = self.data.fake_host_3_v3 @@ -7175,17 +7175,17 @@ class EMCV3MultiPoolDriverTestCase(test.TestCase): self.assertEqual('1', device_id) @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, 'get_associated_masking_groups_from_device', - return_value=EMCVMAXCommonData.storagegroups) + return_value=VMAXCommonData.storagegroups) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_initial_setup', - return_value=EMCVMAXCommonData.multi_pool_extra_specs) + return_value=VMAXCommonData.multi_pool_extra_specs) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) def test_delete_volume_multi_slo_success( self, mock_storage_system, mock_is, mock_mv): provider_location = ( @@ -7216,17 +7216,17 @@ class EMCV3MultiPoolDriverTestCase(test.TestCase): self.conn, volumeInstanceName) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_or_create_storage_group_v3', - return_value=EMCVMAXCommonData.default_sg_instance_name) + return_value=VMAXCommonData.default_sg_instance_name) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_initial_setup', - return_value=EMCVMAXCommonData.multi_pool_extra_specs) + return_value=VMAXCommonData.multi_pool_extra_specs) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) def test_create_volume_in_CG_multi_slo_success( self, mock_storage_system, mock_is, mock_sg): self.data.test_volume_CG_v3['provider_location'] = None @@ -7239,23 +7239,23 @@ class EMCV3MultiPoolDriverTestCase(test.TestCase): self.assertEqual('1', device_id) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_volume_element_name', return_value='1') @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_initial_setup', - return_value=EMCVMAXCommonData.multi_pool_extra_specs) + return_value=VMAXCommonData.multi_pool_extra_specs) @mock.patch.object( - emc_vmax_provision_v3.EMCVMAXProvisionV3, + provision_v3.VMAXProvisionV3, '_find_new_storage_group', - return_value=EMCVMAXCommonData.default_sg_instance_name) + return_value=VMAXCommonData.default_sg_instance_name) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'wrap_get_storage_group_from_volume', return_value=None) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, '_get_fast_settings_from_storage_group', return_value='Gold+DSS_REP') def test_retype_volume_multi_slo_success( @@ -7266,13 +7266,13 @@ class EMCV3MultiPoolDriverTestCase(test.TestCase): self.data.diff, self.data.test_host_1_v3)) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_initial_setup', - return_value=EMCVMAXCommonData.multi_pool_extra_specs) + return_value=VMAXCommonData.multi_pool_extra_specs) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) # There is only one unique array in the conf file def test_create_CG_multi_slo_success( self, _mock_storage_system, mock_is): @@ -7280,11 +7280,11 @@ class EMCV3MultiPoolDriverTestCase(test.TestCase): self.data.test_ctxt, self.data.test_CG) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_initial_setup', - return_value=EMCVMAXCommonData.multi_pool_extra_specs) + return_value=VMAXCommonData.multi_pool_extra_specs) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_members_of_replication_group', return_value=None) @mock.patch.object( @@ -7292,9 +7292,9 @@ class EMCV3MultiPoolDriverTestCase(test.TestCase): 'volume_get_all_by_group', return_value=None) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) def test_delete_CG_no_volumes_multi_slo_success( self, _mock_storage_system, _mock_db_volumes, _mock_members, mock_is): @@ -7307,13 +7307,13 @@ class EMCV3MultiPoolDriverTestCase(test.TestCase): self.assertEqual(model_update, ret_model_update) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_initial_setup', - return_value=EMCVMAXCommonData.multi_pool_extra_specs) + return_value=VMAXCommonData.multi_pool_extra_specs) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) def test_delete_CG_with_volumes_multi_slo_success( self, _mock_storage_system, mock_is): # Check for the status deleted after a successful delete CG @@ -7324,9 +7324,9 @@ class EMCV3MultiPoolDriverTestCase(test.TestCase): self.assertEqual(model_update, ret_model_update) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_initial_setup', - return_value=EMCVMAXCommonData.multi_pool_extra_specs) + return_value=VMAXCommonData.multi_pool_extra_specs) def test_migrate_volume_v3_success(self, mock_is): retVal, retList = self.driver.migrate_volume( self.data.test_ctxt, self.data.test_volume_v4, @@ -7334,25 +7334,25 @@ class EMCV3MultiPoolDriverTestCase(test.TestCase): self.assertTrue(retVal) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_volume_element_name', return_value='1') @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_v3_default_sg_instance_name', - return_value=(None, None, EMCVMAXCommonData.default_sg_instance_name)) + return_value=(None, None, VMAXCommonData.default_sg_instance_name)) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'is_clone_licensed', return_value=True) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_initial_setup', - return_value=EMCVMAXCommonData.multi_pool_extra_specs) + return_value=VMAXCommonData.multi_pool_extra_specs) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) def test_create_snapshot_v3_success( self, mock_pool, mock_is, mock_license, mock_sg, mock_element): self.data.test_volume_v4['volume_name'] = "vmax-1234567" @@ -7363,9 +7363,9 @@ class EMCV3MultiPoolDriverTestCase(test.TestCase): False) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_initial_setup', - return_value=EMCVMAXCommonData.multi_pool_extra_specs) + return_value=VMAXCommonData.multi_pool_extra_specs) def test_delete_snapshot_v3_success(self, mock_is): masking = self.driver.common.masking with mock.patch.object( @@ -7374,7 +7374,7 @@ class EMCV3MultiPoolDriverTestCase(test.TestCase): self.driver.delete_snapshot(self.data.test_snapshot_1_v3) @mock.patch.object( - emc_vmax_provision_v3.EMCVMAXProvisionV3, + provision_v3.VMAXProvisionV3, 'get_srp_pool_stats', return_value=(100, 10, 1, 20, False)) def test_update_volume_stats_single_array_info(self, mock_stats): @@ -7391,7 +7391,7 @@ class EMCV3MultiPoolDriverTestCase(test.TestCase): self._cleanup_pool_info() @mock.patch.object( - emc_vmax_provision_v3.EMCVMAXProvisionV3, + provision_v3.VMAXProvisionV3, 'get_srp_pool_stats', return_value=(100, 10, 1, 20, False)) def test_update_volume_stats_multiple_array_info_wlp_disabled( @@ -7413,7 +7413,7 @@ class EMCV3MultiPoolDriverTestCase(test.TestCase): self._cleanup_pool_info() @mock.patch.object( - emc_vmax_provision_v3.EMCVMAXProvisionV3, + provision_v3.VMAXProvisionV3, 'get_srp_pool_stats', return_value=(100, 10, 1, 20, False)) def test_update_volume_stats_multiple_array_info_wlp_enabled( @@ -7435,7 +7435,7 @@ class EMCV3MultiPoolDriverTestCase(test.TestCase): self._cleanup_pool_info() @mock.patch.object( - emc_vmax_provision_v3.EMCVMAXProvisionV3, + provision_v3.VMAXProvisionV3, 'get_srp_pool_stats', return_value=(100, 10, 1, 20, False)) def test_update_volume_stats_without_multi_pool(self, mock_stats): @@ -7467,17 +7467,17 @@ class EMCV3MultiPoolDriverTestCase(test.TestCase): self.driver.common.multiPoolSupportEnabled = False -class EMCVMAXProvisionV3Test(test.TestCase): +class VMAXProvisionV3Test(test.TestCase): def setUp(self): - self.data = EMCVMAXCommonData() + self.data = VMAXCommonData() - super(EMCVMAXProvisionV3Test, self).setUp() + super(VMAXProvisionV3Test, self).setUp() configuration = mock.Mock() configuration.safe_get.return_value = 'ProvisionV3Tests' configuration.config_group = 'ProvisionV3Tests' - emc_vmax_common.EMCVMAXCommon._gather_info = mock.Mock() - driver = emc_vmax_iscsi.EMCVMAXISCSIDriver(configuration=configuration) + common.VMAXCommon._gather_info = mock.Mock() + driver = iscsi.VMAXISCSIDriver(configuration=configuration) driver.db = FakeDB() self.driver = driver @@ -7533,7 +7533,7 @@ class EMCVMAXProvisionV3Test(test.TestCase): provisionv3.utils.wait_for_job_complete = mock.Mock(return_value=( 0, 'Success')) volumeDict = {'classname': u'Symm_StorageVolume', - 'keybindings': EMCVMAXCommonData.keybindings} + 'keybindings': VMAXCommonData.keybindings} provisionv3.get_volume_dict_from_job = ( mock.Mock(return_value=volumeDict)) result = provisionv3.extend_volume_in_SG(conn, storageConfigService, @@ -7592,7 +7592,7 @@ class EMCVMAXProvisionV3Test(test.TestCase): self.assertEqual(0, rc) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'wait_for_job_complete', return_value=(-1, 'error')) def test_create_volume_from_sg_failed(self, mock_devices): @@ -7654,26 +7654,26 @@ class EMCVMAXProvisionV3Test(test.TestCase): self.assertEqual(0, rc) -class EMCVMAXMaskingTest(test.TestCase): +class VMAXMaskingTest(test.TestCase): def setUp(self): - self.data = EMCVMAXCommonData() + self.data = VMAXCommonData() - super(EMCVMAXMaskingTest, self).setUp() + super(VMAXMaskingTest, self).setUp() configuration = mock.Mock() configuration.safe_get.return_value = 'MaskingTests' configuration.config_group = 'MaskingTests' - emc_vmax_common.EMCVMAXCommon._get_ecom_connection = mock.Mock( + common.VMAXCommon._get_ecom_connection = mock.Mock( return_value=self.fake_ecom_connection()) - emc_vmax_common.EMCVMAXCommon._gather_info = mock.Mock( + common.VMAXCommon._gather_info = mock.Mock( return_value=self.fake_gather_info()) instancename = FakeCIMInstanceName() - emc_vmax_utils.EMCVMAXUtils.get_instance_name = ( + utils.VMAXUtils.get_instance_name = ( instancename.fake_getinstancename) - driver = emc_vmax_iscsi.EMCVMAXISCSIDriver(configuration=configuration) + driver = iscsi.VMAXISCSIDriver(configuration=configuration) driver.db = FakeDB() self.driver = driver - self.driver.utils = emc_vmax_utils.EMCVMAXUtils(object) + self.driver.utils = utils.VMAXUtils(object) def fake_ecom_connection(self): conn = FakeEcomConnection() @@ -7849,11 +7849,11 @@ class EMCVMAXMaskingTest(test.TestCase): assert_not_called()) @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, 'get_associated_masking_groups_from_device', - return_value=EMCVMAXCommonData.storagegroups) + return_value=VMAXCommonData.storagegroups) @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, 'return_volume_to_default_storage_group_v3', return_value='Returning volume to default sg') def test_check_if_rollback_action_required_v3( @@ -7970,15 +7970,15 @@ class EMCVMAXMaskingTest(test.TestCase): extraSpecs) @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, "_delete_initiators_from_initiator_group") @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, "_delete_initiator_group") @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, "_create_initiator_Group", - return_value=EMCVMAXCommonData.initiatorgroup_name) + return_value=VMAXCommonData.initiatorgroup_name) # bug 1579934: duplicate IG name error from SMI-S def test_verify_initiator_group_from_masking_view( self, create_ig, delete_ig, delete_initiators): @@ -8064,18 +8064,18 @@ class EMCVMAXMaskingTest(test.TestCase): self.assertFalse(verify) @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, "_check_adding_volume_to_storage_group", return_value=None) @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, "_validate_masking_view", return_value=("mv_instance", "sg_instance", None)) @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, "_get_and_remove_from_storage_group_v3") @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, '_check_if_rollback_action_for_masking_required') def test_get_or_create_masking_view_and_map_lun(self, check_rb, rm_sg, validate_mv, check_sg): @@ -8129,19 +8129,19 @@ class EMCVMAXMaskingTest(test.TestCase): common.conn, maskingViewDict, extraSpecs) -class EMCVMAXFCTest(test.TestCase): +class VMAXFCTest(test.TestCase): def setUp(self): - self.data = EMCVMAXCommonData() + self.data = VMAXCommonData() - super(EMCVMAXFCTest, self).setUp() + super(VMAXFCTest, self).setUp() configuration = mock.Mock() configuration.safe_get.return_value = 'FCTests' configuration.config_group = 'FCTests' - emc_vmax_common.EMCVMAXCommon._gather_info = mock.Mock() - emc_vmax_common.EMCVMAXCommon._get_ecom_connection = mock.Mock( + common.VMAXCommon._gather_info = mock.Mock() + common.VMAXCommon._get_ecom_connection = mock.Mock( return_value=FakeEcomConnection()) - driver = emc_vmax_fc.EMCVMAXFCDriver(configuration=configuration) + driver = fc.VMAXFCDriver(configuration=configuration) driver.db = FakeDB() self.driver = driver @@ -8154,7 +8154,7 @@ class EMCVMAXFCTest(test.TestCase): common.get_masking_views_by_port_group = mock.Mock( return_value=[]) common.get_target_wwns = mock.Mock( - return_value=EMCVMAXCommonData.target_wwns) + return_value=VMAXCommonData.target_wwns) initiatorGroupInstanceName = ( self.driver.common.masking._get_initiator_group_from_masking_view( common.conn, self.data.lunmaskctrl_name, @@ -8165,28 +8165,28 @@ class EMCVMAXFCTest(test.TestCase): data = self.driver.terminate_connection(self.data.test_volume_v3, self.data.connector) common.get_target_wwns.assert_called_once_with( - EMCVMAXCommonData.storage_system, EMCVMAXCommonData.connector) - numTargetWwns = len(EMCVMAXCommonData.target_wwns) + VMAXCommonData.storage_system, VMAXCommonData.connector) + numTargetWwns = len(VMAXCommonData.target_wwns) self.assertEqual(numTargetWwns, len(data['data'])) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, 'check_ig_instance_name', return_value=None) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, 'get_target_wwns', - return_value=EMCVMAXCommonData.target_wwns) + return_value=VMAXCommonData.target_wwns) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, 'get_masking_views_by_port_group', return_value=[]) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, 'get_masking_view_by_volume', return_value='testMV') @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_unmap_lun') def test_terminate_connection_no_ig(self, mock_unmap, mock_mv_vol, mock_mv_pg, @@ -8196,8 +8196,8 @@ class EMCVMAXFCTest(test.TestCase): data = self.driver.terminate_connection(self.data.test_volume_v3, self.data.connector) common.get_target_wwns.assert_called_once_with( - EMCVMAXCommonData.storage_system, EMCVMAXCommonData.connector) - numTargetWwns = len(EMCVMAXCommonData.target_wwns) + VMAXCommonData.storage_system, VMAXCommonData.connector) + numTargetWwns = len(VMAXCommonData.target_wwns) self.assertEqual(numTargetWwns, len(data['data'])) def test_get_common_masking_views_two_exist(self): @@ -8283,14 +8283,14 @@ class EMCVMAXFCTest(test.TestCase): self.assertEqual(0, len(mvInstances)) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, 'initialize_connection', - return_value=EMCVMAXCommonData.fc_device_info) + return_value=VMAXCommonData.fc_device_info) @mock.patch.object( - emc_vmax_fc.EMCVMAXFCDriver, + fc.VMAXFCDriver, '_build_initiator_target_map', - return_value=(EMCVMAXCommonData.target_wwns, - EMCVMAXCommonData.end_point_map)) + return_value=(VMAXCommonData.target_wwns, + VMAXCommonData.end_point_map)) def test_initialize_connection_snapshot(self, mock_map, mock_conn): data = self.driver.initialize_connection_snapshot( self.data.test_snapshot_v3, self.data.connector) @@ -8298,14 +8298,14 @@ class EMCVMAXFCTest(test.TestCase): self.assertEqual(3, data['data']['target_lun']) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_unmap_lun') @mock.patch.object( - emc_vmax_fc.EMCVMAXFCDriver, + fc.VMAXFCDriver, '_get_zoning_mappings', - return_value=(EMCVMAXCommonData.zoning_mappings)) + return_value=(VMAXCommonData.zoning_mappings)) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, 'check_ig_instance_name', return_value=None) def test_terminate_connection_snapshot( @@ -8319,20 +8319,20 @@ class EMCVMAXFCTest(test.TestCase): @ddt.ddt -class EMCVMAXUtilsTest(test.TestCase): +class VMAXUtilsTest(test.TestCase): def setUp(self): - self.data = EMCVMAXCommonData() + self.data = VMAXCommonData() - super(EMCVMAXUtilsTest, self).setUp() + super(VMAXUtilsTest, self).setUp() configuration = mock.Mock() configuration.safe_get.return_value = 'UtilsTests' configuration.config_group = 'UtilsTests' - emc_vmax_common.EMCVMAXCommon._gather_info = mock.Mock() - driver = emc_vmax_iscsi.EMCVMAXISCSIDriver(configuration=configuration) + common.VMAXCommon._gather_info = mock.Mock() + driver = iscsi.VMAXISCSIDriver(configuration=configuration) driver.db = FakeDB() self.driver = driver - self.driver.utils = emc_vmax_utils.EMCVMAXUtils(object) + self.driver.utils = utils.VMAXUtils(object) def test_get_target_endpoints(self): conn = FakeEcomConnection() @@ -8366,8 +8366,8 @@ class EMCVMAXUtilsTest(test.TestCase): conn, self.data.storage_system)) rsdInstance = self.driver.utils.set_target_element_supplier_in_rsd( conn, repServiceInstanceName, - emc_vmax_common.SNAPVX_REPLICATION_TYPE, - emc_vmax_common.CREATE_NEW_TARGET, extraSpecs) + common.SNAPVX_REPLICATION_TYPE, + common.CREATE_NEW_TARGET, extraSpecs) self.assertIsNotNone(rsdInstance) def test_set_copy_methodology_in_rsd(self): @@ -8378,8 +8378,8 @@ class EMCVMAXUtilsTest(test.TestCase): conn, self.data.storage_system)) rsdInstance = self.driver.utils.set_copy_methodology_in_rsd( conn, repServiceInstanceName, - emc_vmax_provision.SYNC_CLONE_LOCAL, - emc_vmax_provision.COPY_ON_WRITE, extraSpecs) + provision.SYNC_CLONE_LOCAL, + provision.COPY_ON_WRITE, extraSpecs) self.assertIsNotNone(rsdInstance) def getinstance_capability(self, reptypes): @@ -8460,7 +8460,7 @@ class EMCVMAXUtilsTest(test.TestCase): pywbem = mock.Mock() pywbem.cim_obj = mock.Mock() pywbem.cim_obj.CIMInstance = mock.Mock() - emc_vmax_utils.pywbem = pywbem + utils.pywbem = pywbem extraSpecs = {'volume_backend_name': 'V3_BE', 'qos': { @@ -8501,9 +8501,9 @@ class EMCVMAXUtilsTest(test.TestCase): modifiedInstance['CreationClassName']) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_find_lun', - return_value={'SystemName': EMCVMAXCommonData.storage_system}) + return_value={'SystemName': VMAXCommonData.storage_system}) @mock.patch('builtins.open' if sys.version_info >= (3,) else '__builtin__.open') def test_insert_live_migration_record(self, mock_open, mock_lun): @@ -8518,16 +8518,16 @@ class EMCVMAXUtilsTest(test.TestCase): 'multipath': False} maskingviewdict = self.driver.common._populate_masking_dict( self.data.test_volume, self.data.connector, extraSpecs) - emc_vmax_utils.LIVE_MIGRATION_FILE = ('/tempdir/livemigrationarray') + utils.LIVE_MIGRATION_FILE = ('/tempdir/livemigrationarray') self.driver.utils.insert_live_migration_record( self.data.test_volume, maskingviewdict, connector, extraSpecs) mock_open.assert_called_once_with( - emc_vmax_utils.LIVE_MIGRATION_FILE, "wb") + utils.LIVE_MIGRATION_FILE, "wb") @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_find_lun', - return_value={'SystemName': EMCVMAXCommonData.storage_system}) + return_value={'SystemName': VMAXCommonData.storage_system}) def test_delete_live_migration_record(self, mock_lun): conn = FakeEcomConnection() self.driver.common.conn = conn @@ -8541,22 +8541,22 @@ class EMCVMAXUtilsTest(test.TestCase): maskingviewdict = self.driver.common._populate_masking_dict( self.data.test_volume, self.data.connector, extraSpecs) tempdir = tempfile.mkdtemp() - emc_vmax_utils.LIVE_MIGRATION_FILE = (tempdir + - '/livemigrationarray') + utils.LIVE_MIGRATION_FILE = (tempdir + + '/livemigrationarray') m = mock.mock_open() with mock.patch('{}.open'.format(__name__), m, create=True): - with open(emc_vmax_utils.LIVE_MIGRATION_FILE, "wb") as f: + with open(utils.LIVE_MIGRATION_FILE, "wb") as f: f.write('live migration details') self.driver.utils.insert_live_migration_record( self.data.test_volume, maskingviewdict, connector, extraSpecs) self.driver.utils.delete_live_migration_record(self.data.test_volume) - m.assert_called_once_with(emc_vmax_utils.LIVE_MIGRATION_FILE, "wb") + m.assert_called_once_with(utils.LIVE_MIGRATION_FILE, "wb") shutil.rmtree(tempdir) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_find_lun', - return_value={'SystemName': EMCVMAXCommonData.storage_system}) + return_value={'SystemName': VMAXCommonData.storage_system}) def test_get_live_migration_record(self, mock_lun): conn = FakeEcomConnection() self.driver.common.conn = conn @@ -8570,15 +8570,15 @@ class EMCVMAXUtilsTest(test.TestCase): maskingviewdict = self.driver.common._populate_masking_dict( self.data.test_volume, self.data.connector, extraSpecs) tempdir = tempfile.mkdtemp() - emc_vmax_utils.LIVE_MIGRATION_FILE = (tempdir + - '/livemigrationarray') + utils.LIVE_MIGRATION_FILE = (tempdir + + '/livemigrationarray') self.driver.utils.insert_live_migration_record( self.data.test_volume, maskingviewdict, connector, extraSpecs) record = self.driver.utils.get_live_migration_record( self.data.test_volume, False) self.assertEqual(maskingviewdict, record[0]) self.assertEqual(connector, record[1]) - os.remove(emc_vmax_utils.LIVE_MIGRATION_FILE) + os.remove(utils.LIVE_MIGRATION_FILE) shutil.rmtree(tempdir) def test_get_iqn(self): @@ -8613,7 +8613,7 @@ class EMCVMAXUtilsTest(test.TestCase): self.assertIsNone(foundIg) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, '_is_sync_complete', return_value=False) def test_is_sync_complete(self, mock_sync): @@ -8634,7 +8634,7 @@ class EMCVMAXUtilsTest(test.TestCase): self.assertEqual("OS-SRP_1-Diamond-DSS-CD-SG", storageGroupName) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_smi_version', return_value=831) def test_is_all_flash(self, mock_version): @@ -8643,31 +8643,31 @@ class EMCVMAXUtilsTest(test.TestCase): self.assertTrue(self.driver.utils.is_all_flash(conn, array)) -class EMCVMAXCommonTest(test.TestCase): +class VMAXCommonTest(test.TestCase): def setUp(self): - self.data = EMCVMAXCommonData() + self.data = VMAXCommonData() - super(EMCVMAXCommonTest, self).setUp() + super(VMAXCommonTest, self).setUp() configuration = mock.Mock() configuration.safe_get.return_value = 'CommonTests' configuration.config_group = 'CommonTests' - emc_vmax_common.EMCVMAXCommon._gather_info = mock.Mock() + common.VMAXCommon._gather_info = mock.Mock() instancename = FakeCIMInstanceName() - self.mock_object(emc_vmax_utils.EMCVMAXUtils, 'get_instance_name', + self.mock_object(utils.VMAXUtils, 'get_instance_name', instancename.fake_getinstancename) - self.mock_object(emc_vmax_utils.EMCVMAXUtils, + self.mock_object(utils.VMAXUtils, 'find_controller_configuration_service', return_value=None) - driver = emc_vmax_iscsi.EMCVMAXISCSIDriver(configuration=configuration) + driver = iscsi.VMAXISCSIDriver(configuration=configuration) driver.db = FakeDB() self.driver = driver - self.driver.utils = emc_vmax_utils.EMCVMAXUtils(object) + self.driver.utils = utils.VMAXUtils(object) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) def test_create_duplicate_volume(self, mock_pool): common = self.driver.common common.conn = FakeEcomConnection() @@ -8693,11 +8693,11 @@ class EMCVMAXCommonTest(test.TestCase): common = self.driver.common common.conn = FakeEcomConnection() targetWwns = common.get_target_wwns( - EMCVMAXCommonData.storage_system, EMCVMAXCommonData.connector) + VMAXCommonData.storage_system, VMAXCommonData.connector) self.assertListEqual(["5000090000000000"], targetWwns) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'get_target_endpoints', return_value=None) def test_get_target_wwn_all_invalid(self, mock_target_ep): @@ -8706,8 +8706,8 @@ class EMCVMAXCommonTest(test.TestCase): self.assertRaises( exception.VolumeBackendAPIException, - common.get_target_wwns, EMCVMAXCommonData.storage_system, - EMCVMAXCommonData.connector) + common.get_target_wwns, VMAXCommonData.storage_system, + VMAXCommonData.connector) def test_get_target_wwn_one_invalid(self): common = self.driver.common @@ -8722,8 +8722,8 @@ class EMCVMAXCommonTest(test.TestCase): with mock.patch.object(common.utils, 'get_target_endpoints', side_effect=[e, None, targetEndpoints]): targetWwns = common.get_target_wwns( - EMCVMAXCommonData.storage_system, - EMCVMAXCommonData.connector) + VMAXCommonData.storage_system, + VMAXCommonData.connector) self.assertListEqual(["5000090000000000"], targetWwns) def test_get_target_wwn_all_invalid_endpoints(self): @@ -8738,8 +8738,8 @@ class EMCVMAXCommonTest(test.TestCase): side_effect=[e, None, None]): self.assertRaises( exception.VolumeBackendAPIException, - common.get_target_wwns, EMCVMAXCommonData.storage_system, - EMCVMAXCommonData.connector) + common.get_target_wwns, VMAXCommonData.storage_system, + VMAXCommonData.connector) def test_cleanup_target(self): common = self.driver.common @@ -8776,7 +8776,7 @@ class EMCVMAXCommonTest(test.TestCase): '10.10.10.10', ip_and_iqn['ip']) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'compare_size', return_value=0) def test_extend_volume(self, mock_compare): @@ -8798,19 +8798,19 @@ class EMCVMAXCommonTest(test.TestCase): new_size_gb, old_size_gbs, extraSpecs) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_initial_setup', - return_value=(EMCVMAXCommonData.extra_specs)) + return_value=(VMAXCommonData.extra_specs)) def test_get_consistency_group_utils(self, mock_init, mock_pool): common = self.driver.common common.conn = FakeEcomConnection() replicationService, storageSystem, extraSpecs = ( common._get_consistency_group_utils( - common.conn, EMCVMAXCommonData.test_CG)) + common.conn, VMAXCommonData.test_CG)) self.assertEqual(self.data.extra_specs, extraSpecs) self.assertEqual(common.conn.EnumerateInstanceNames( 'EMC_ReplicationService')[0], replicationService) @@ -8818,7 +8818,7 @@ class EMCVMAXCommonTest(test.TestCase): def test_update_consistency_group_name(self): common = self.driver.common cg_name = common._update_consistency_group_name( - EMCVMAXCommonData.test_CG) + VMAXCommonData.test_CG) self.assertEqual('myCG1_12345abcde', cg_name) def test_update_consistency_group_name_truncate_name(self): @@ -8853,10 +8853,10 @@ class EMCVMAXCommonTest(test.TestCase): return extraSpecs @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_find_lun', return_value=( - {'SystemName': EMCVMAXCommonData.storage_system})) + {'SystemName': VMAXCommonData.storage_system})) def test_populate_masking_dict_fast(self, mock_find_lun): extraSpecs = self.populate_masking_dict_setup() # If fast is enabled it will uniquely determine the SG and MV @@ -8869,10 +8869,10 @@ class EMCVMAXCommonTest(test.TestCase): 'OS-fakehost-GOLD-FP-I-MV', maskingViewDict['maskingViewName']) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_find_lun', return_value=( - {'SystemName': EMCVMAXCommonData.storage_system})) + {'SystemName': VMAXCommonData.storage_system})) def test_populate_masking_dict_fast_more_than_14chars(self, mock_find_lun): # If the length of the FAST policy name is greater than 14 chars extraSpecs = self.populate_masking_dict_setup() @@ -8887,10 +8887,10 @@ class EMCVMAXCommonTest(test.TestCase): maskingViewDict['maskingViewName']) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_find_lun', return_value=( - {'SystemName': EMCVMAXCommonData.storage_system})) + {'SystemName': VMAXCommonData.storage_system})) def test_populate_masking_dict_no_fast(self, mock_find_lun): # If fast isn't enabled the pool will uniquely determine the SG and MV # on the host along with the protocol(iSCSI) e.g. I @@ -8904,10 +8904,10 @@ class EMCVMAXCommonTest(test.TestCase): 'OS-fakehost-gold_pool-I-MV', maskingViewDict['maskingViewName']) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_find_lun', return_value=( - {'SystemName': EMCVMAXCommonData.storage_system})) + {'SystemName': VMAXCommonData.storage_system})) def test_populate_masking_dict_fast_both_exceeding(self, mock_find_lun): # If the length of the FAST policy name is greater than 14 chars and # the length of the short host is more than 38 characters @@ -8921,10 +8921,10 @@ class EMCVMAXCommonTest(test.TestCase): self.assertLessEqual(len(maskingViewDict['maskingViewName']), 64) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_find_lun', return_value=( - {'SystemName': EMCVMAXCommonData.storage_system})) + {'SystemName': VMAXCommonData.storage_system})) def test_populate_masking_dict_no_fast_both_exceeding(self, mock_find_lun): # If the length of the FAST policy name is greater than 14 chars and # the length of the short host is more than 38 characters @@ -8939,10 +8939,10 @@ class EMCVMAXCommonTest(test.TestCase): self.assertLessEqual(len(maskingViewDict['maskingViewName']), 64) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_find_lun', return_value=( - {'SystemName': EMCVMAXCommonData.storage_system})) + {'SystemName': VMAXCommonData.storage_system})) def test_populate_masking_dict_no_slo(self, mock_find_lun): extraSpecs = {'storagetype:pool': 'SRP_1', 'volume_backend_name': 'V3_BE', @@ -8962,10 +8962,10 @@ class EMCVMAXCommonTest(test.TestCase): 'OS-fakehost-No_SLO-I-MV', maskingViewDict['maskingViewName']) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_find_lun', return_value=( - {'SystemName': EMCVMAXCommonData.storage_system})) + {'SystemName': VMAXCommonData.storage_system})) def test_populate_masking_dict_slo_NONE(self, mock_find_lun): extraSpecs = {'storagetype:pool': 'SRP_1', 'volume_backend_name': 'V3_BE', @@ -8986,10 +8986,10 @@ class EMCVMAXCommonTest(test.TestCase): maskingViewDict['maskingViewName']) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_find_lun', return_value=( - {'SystemName': EMCVMAXCommonData.storage_system})) + {'SystemName': VMAXCommonData.storage_system})) def test_populate_masking_dict_v3(self, mock_find_lun): extraSpecs = {'storagetype:pool': u'SRP_1', 'volume_backend_name': 'VMAX_ISCSI_BE', @@ -9008,10 +9008,10 @@ class EMCVMAXCommonTest(test.TestCase): maskingViewDict['maskingViewName']) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_find_lun', return_value=( - {'SystemName': EMCVMAXCommonData.storage_system})) + {'SystemName': VMAXCommonData.storage_system})) def test_populate_masking_dict_v3_compression(self, mock_find_lun): extraSpecs = {'storagetype:pool': u'SRP_1', 'volume_backend_name': 'COMPRESSION_BE', @@ -9032,10 +9032,10 @@ class EMCVMAXCommonTest(test.TestCase): maskingViewDict['maskingViewName']) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_find_lun', return_value=( - {'SystemName': EMCVMAXCommonData.storage_system})) + {'SystemName': VMAXCommonData.storage_system})) def test_populate_masking_dict_v3_compression_no_slo(self, mock_find_lun): # Compression is no applicable when there is no slo extraSpecs = {'storagetype:pool': u'SRP_1', @@ -9055,7 +9055,7 @@ class EMCVMAXCommonTest(test.TestCase): 'OS-fakehost-No_SLO-I-MV', maskingViewDict['maskingViewName']) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_migrate_volume_v3', return_value=True) def test_slo_workload_migration_compression_enabled(self, mock_migrate): @@ -9084,7 +9084,7 @@ class EMCVMAXCommonTest(test.TestCase): extraSpecs)) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_migrate_volume_v3', return_value=True) def test_slo_workload_migration_compression_disabled(self, mock_migrate): @@ -9112,7 +9112,7 @@ class EMCVMAXCommonTest(test.TestCase): extraSpecs)) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_migrate_volume_v3', return_value=True) def test_slo_workload_migration_compression_false(self, mock_migrate): @@ -9142,9 +9142,9 @@ class EMCVMAXCommonTest(test.TestCase): extraSpecs)) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_initial_setup', - return_value=EMCVMAXCommonData.extra_specs) + return_value=VMAXCommonData.extra_specs) def test_failover_not_replicated(self, mock_setup): common = self.driver.common common.conn = FakeEcomConnection() @@ -9170,21 +9170,21 @@ class EMCVMAXCommonTest(test.TestCase): self.assertEqual(verify_update_fo, volume_update_2) -class EMCVMAXProvisionTest(test.TestCase): +class VMAXProvisionTest(test.TestCase): def setUp(self): - self.data = EMCVMAXCommonData() + self.data = VMAXCommonData() - super(EMCVMAXProvisionTest, self).setUp() + super(VMAXProvisionTest, self).setUp() configuration = mock.Mock() configuration.safe_get.return_value = 'ProvisionTests' configuration.config_group = 'ProvisionTests' - emc_vmax_common.EMCVMAXCommon._gather_info = mock.Mock() - driver = emc_vmax_iscsi.EMCVMAXISCSIDriver( + common.VMAXCommon._gather_info = mock.Mock() + driver = iscsi.VMAXISCSIDriver( configuration=configuration) driver.db = FakeDB() self.driver = driver - self.driver.utils = emc_vmax_utils.EMCVMAXUtils(object) + self.driver.utils = utils.VMAXUtils(object) def test_remove_device_from_storage_group(self): conn = FakeEcomConnection() @@ -9248,26 +9248,26 @@ class EMCVMAXProvisionTest(test.TestCase): repserv = common.conn.EnumerateInstanceNames( "EMC_ReplicationService")[0] cgInstanceName, cgName = common._find_consistency_group( - repserv, EMCVMAXCommonData.test_CG['id']) - self.assertEqual(EMCVMAXCommonData.replicationgroup_creationclass, + repserv, VMAXCommonData.test_CG['id']) + self.assertEqual(VMAXCommonData.replicationgroup_creationclass, cgInstanceName['CreationClassName']) - self.assertEqual(EMCVMAXCommonData.test_CG['id'], cgName) + self.assertEqual(VMAXCommonData.test_CG['id'], cgName) -class EMCVMAXISCSITest(test.TestCase): +class VMAXISCSITest(test.TestCase): def setUp(self): - self.data = EMCVMAXCommonData() + self.data = VMAXCommonData() - super(EMCVMAXISCSITest, self).setUp() + super(VMAXISCSITest, self).setUp() configuration = mock.Mock() configuration.safe_get.return_value = 'iSCSITests' configuration.config_group = 'iSCSITests' - emc_vmax_common.EMCVMAXCommon._gather_info = mock.Mock() + common.VMAXCommon._gather_info = mock.Mock() instancename = FakeCIMInstanceName() - self.mock_object(emc_vmax_utils.EMCVMAXUtils, 'get_instance_name', + self.mock_object(utils.VMAXUtils, 'get_instance_name', instancename.fake_getinstancename) - driver = emc_vmax_iscsi.EMCVMAXISCSIDriver(configuration=configuration) + driver = iscsi.VMAXISCSIDriver(configuration=configuration) driver.db = FakeDB() self.driver = driver @@ -9290,14 +9290,14 @@ class EMCVMAXISCSITest(test.TestCase): properties['target_portals']) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, 'find_device_number', return_value={'hostlunid': 1, - 'storagesystem': EMCVMAXCommonData.storage_system}) + 'storagesystem': VMAXCommonData.storage_system}) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, 'initialize_connection', - return_value=EMCVMAXCommonData.iscsi_device_info) + return_value=VMAXCommonData.iscsi_device_info) def test_initialize_connection_snapshot(self, mock_conn, mock_num): data = self.driver.initialize_connection_snapshot( self.data.test_snapshot_v3, self.data.connector) @@ -9305,7 +9305,7 @@ class EMCVMAXISCSITest(test.TestCase): self.assertEqual(1, data['data']['target_lun']) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_unmap_lun') def test_terminate_connection_snapshot(self, mock_unmap): common = self.driver.common @@ -9319,7 +9319,7 @@ class EMCVMAXISCSITest(test.TestCase): class EMCV3ReplicationTest(test.TestCase): def setUp(self): - self.data = EMCVMAXCommonData() + self.data = VMAXCommonData() self.flags(rpc_backend='oslo_messaging._drivers.impl_fake') @@ -9346,29 +9346,29 @@ class EMCV3ReplicationTest(test.TestCase): return getattr(self.configuration, key) self.configuration.safe_get = safe_get - self.mock_object(emc_vmax_common.EMCVMAXCommon, '_get_ecom_connection', + self.mock_object(common.VMAXCommon, '_get_ecom_connection', self.fake_ecom_connection) instancename = FakeCIMInstanceName() - self.mock_object(emc_vmax_utils.EMCVMAXUtils, 'get_instance_name', + self.mock_object(utils.VMAXUtils, 'get_instance_name', instancename.fake_getinstancename) - self.mock_object(emc_vmax_utils.EMCVMAXUtils, 'isArrayV3', + self.mock_object(utils.VMAXUtils, 'isArrayV3', self.fake_is_v3) self.mock_object(volume_types, 'get_volume_type_extra_specs', self.fake_volume_type_extra_specs) - self.mock_object(emc_vmax_common.EMCVMAXCommon, + self.mock_object(common.VMAXCommon, '_get_multi_pool_support_enabled_flag', self.fake_get_multi_pool) - self.mock_object(emc_vmax_utils.EMCVMAXUtils, + self.mock_object(utils.VMAXUtils, 'get_existing_instance', self.fake_get_existing_instance) self.mock_object(cinder_utils, 'get_bool_param', return_value=False) self.patcher = mock.patch( 'oslo_service.loopingcall.FixedIntervalLoopingCall', - new=utils.ZeroIntervalLoopingCall) + new=unit_utils.ZeroIntervalLoopingCall) self.patcher.start() - driver = emc_vmax_fc.EMCVMAXFCDriver(configuration=self.configuration) + driver = fc.VMAXFCDriver(configuration=self.configuration) driver.db = FakeDB() self.driver = driver @@ -9463,13 +9463,13 @@ class EMCV3ReplicationTest(test.TestCase): shutil.rmtree(self.tempdir) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, 'get_target_instance', return_value='volume_instance') @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) def test_setup_volume_replication_success(self, mock_pool, mock_target): common = self.driver.common @@ -9486,9 +9486,9 @@ class EMCV3ReplicationTest(test.TestCase): self.assertEqual(self.data.keybindings2, rep_driver_data) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) def test_setup_volume_replication_failed(self, mock_pool): common = self.driver.common common.conn = self.fake_ecom_connection() @@ -9501,12 +9501,12 @@ class EMCV3ReplicationTest(test.TestCase): volumeDict, extraSpecs) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_cleanup_remote_target') @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) def test_cleanup_lun_replication(self, mock_pool, mock_delete): common = self.driver.common common.conn = self.fake_ecom_connection() @@ -9542,7 +9542,7 @@ class EMCV3ReplicationTest(test.TestCase): 'EMC_ReplicationService')[0]) @mock.patch.object( - emc_vmax_provision_v3.EMCVMAXProvisionV3, + provision_v3.VMAXProvisionV3, '_check_sync_state', return_value=6) def test_failover_volume_success(self, mock_sync): @@ -9577,7 +9577,7 @@ class EMCV3ReplicationTest(test.TestCase): self.assertEqual(check_update_list, volume_update_list) @mock.patch.object( - emc_vmax_provision_v3.EMCVMAXProvisionV3, + provision_v3.VMAXProvisionV3, '_check_sync_state', return_value=12) def test_failback_volume_success(self, mock_sync): @@ -9612,17 +9612,17 @@ class EMCV3ReplicationTest(test.TestCase): self.assertEqual(check_update_list, volume_update_list) @mock.patch.object( - emc_vmax_utils.EMCVMAXUtils, + utils.VMAXUtils, 'compare_size', return_value=0) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, 'add_volume_to_replication_group', - return_value=EMCVMAXCommonData.re_storagegroup) + return_value=VMAXCommonData.re_storagegroup) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_create_remote_replica', - return_value=(0, EMCVMAXCommonData.provider_location)) + return_value=(0, VMAXCommonData.provider_location)) def test_extend_volume_is_replicated_success( self, mock_replica, mock_sg, mock_size): common = self.driver.common @@ -9639,7 +9639,7 @@ class EMCV3ReplicationTest(test.TestCase): newSizeBits, extendedVolumeSize) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_create_remote_replica', return_value=(1, 'error')) def test_extend_volume_is_replicated_failed(self, mock_replica): @@ -9649,20 +9649,20 @@ class EMCV3ReplicationTest(test.TestCase): self.driver.extend_volume, volume, new_size) @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, 'remove_and_reset_members') @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, 'add_volume_to_replication_group', - return_value=EMCVMAXCommonData.re_storagegroup) + return_value=VMAXCommonData.re_storagegroup) @mock.patch.object( - emc_vmax_provision_v3.EMCVMAXProvisionV3, + provision_v3.VMAXProvisionV3, 'get_volume_dict_from_job', - return_value=EMCVMAXCommonData.provider_location) + return_value=VMAXCommonData.provider_location) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) def test_create_remote_replica_success(self, mock_pool, mock_volume_dict, mock_sg, mock_return): common = self.driver.common @@ -9678,7 +9678,7 @@ class EMCV3ReplicationTest(test.TestCase): extraSpecs = self.data.extra_specs_is_re rep_config = common.utils.get_replication_config( self.replication_device) - referenceDict = EMCVMAXCommonData.provider_location + referenceDict = VMAXCommonData.provider_location rc, rdfDict = common.create_remote_replica( common.conn, repServiceInstanceName, rdfGroupInstance, sourceVolume, sourceInstance, targetInstance, @@ -9686,15 +9686,15 @@ class EMCV3ReplicationTest(test.TestCase): self.assertEqual(referenceDict, rdfDict) @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, 'remove_and_reset_members') @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_cleanup_remote_target') @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_get_pool_and_storage_system', - return_value=(None, EMCVMAXCommonData.storage_system)) + return_value=(None, VMAXCommonData.storage_system)) def test_create_remote_replica_failed(self, mock_pool, mock_cleanup, mock_return): common = self.driver.common @@ -9728,7 +9728,7 @@ class EMCV3ReplicationTest(test.TestCase): targetInstance, extraSpecs, repExtraSpecs) @mock.patch.object( - emc_vmax_masking.EMCVMAXMasking, + masking.VMAXMasking, 'get_masking_view_from_storage_group', return_value=None) def test_add_volume_to_replication_group_success(self, mock_mv): @@ -9769,13 +9769,13 @@ class EMCV3ReplicationTest(test.TestCase): volumeInstance, volumeName, extraSpecs) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, 'add_volume_to_replication_group') @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_create_v3_volume', - return_value=(0, EMCVMAXCommonData.provider_location, - EMCVMAXCommonData.storage_system)) + return_value=(0, VMAXCommonData.provider_location, + VMAXCommonData.storage_system)) def test_create_replicated_volume_success(self, mock_create, mock_add): model_update = self.driver.create_volume( self.data.test_volume_re) @@ -9786,13 +9786,13 @@ class EMCV3ReplicationTest(test.TestCase): self.assertIsNotNone(rep_data) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_cleanup_replication_source') @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_create_v3_volume', - return_value=(0, EMCVMAXCommonData.provider_location, - EMCVMAXCommonData.storage_system)) + return_value=(0, VMAXCommonData.provider_location, + VMAXCommonData.storage_system)) def test_create_replicated_volume_failed(self, mock_create, mock_cleanup): common = self.driver.common common.conn = self.fake_ecom_connection() @@ -9805,7 +9805,7 @@ class EMCV3ReplicationTest(test.TestCase): common.conn, volumeName, volumeDict, extraSpecs) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_delete_from_pool_v3') def test_cleanup_replication_source(self, mock_delete): common = self.driver.common @@ -9827,7 +9827,7 @@ class EMCV3ReplicationTest(test.TestCase): volumeName, deviceId, extraSpecs) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, '_delete_from_pool_v3') def test_cleanup_remote_target(self, mock_delete): common = self.driver.common @@ -9856,7 +9856,7 @@ class EMCV3ReplicationTest(test.TestCase): deviceId, repExtraSpecs) @mock.patch.object( - emc_vmax_common.EMCVMAXCommon, + common.VMAXCommon, 'cleanup_lun_replication') def test_delete_re_volume(self, mock_cleanup): common = self.driver.common diff --git a/cinder/volume/drivers/dell_emc/vmax/__init__.py b/cinder/volume/drivers/dell_emc/vmax/__init__.py new file mode 100644 index 00000000000..e69de29bb2d diff --git a/cinder/volume/drivers/emc/emc_vmax_common.py b/cinder/volume/drivers/dell_emc/vmax/common.py similarity index 99% rename from cinder/volume/drivers/emc/emc_vmax_common.py rename to cinder/volume/drivers/dell_emc/vmax/common.py index 7693d7979b5..7724e7b1a98 100644 --- a/cinder/volume/drivers/emc/emc_vmax_common.py +++ b/cinder/volume/drivers/dell_emc/vmax/common.py @@ -27,12 +27,12 @@ from cinder import exception from cinder import utils as cinder_utils from cinder.i18n import _, _LE, _LI, _LW from cinder.objects import fields -from cinder.volume.drivers.emc import emc_vmax_fast -from cinder.volume.drivers.emc import emc_vmax_https -from cinder.volume.drivers.emc import emc_vmax_masking -from cinder.volume.drivers.emc import emc_vmax_provision -from cinder.volume.drivers.emc import emc_vmax_provision_v3 -from cinder.volume.drivers.emc import emc_vmax_utils +from cinder.volume.drivers.dell_emc.vmax import fast +from cinder.volume.drivers.dell_emc.vmax import https +from cinder.volume.drivers.dell_emc.vmax import masking +from cinder.volume.drivers.dell_emc.vmax import provision +from cinder.volume.drivers.dell_emc.vmax import provision_v3 +from cinder.volume.drivers.dell_emc.vmax import utils from cinder.volume import utils as volume_utils @@ -100,7 +100,7 @@ emc_opts = [ CONF.register_opts(emc_opts) -class EMCVMAXCommon(object): +class VMAXCommon(object): """Common class for SMI-S based EMC volume drivers. This common class is for EMC volume drivers based on SMI-S. @@ -142,11 +142,11 @@ class EMCVMAXCommon(object): self.url = None self.user = None self.passwd = None - self.masking = emc_vmax_masking.EMCVMAXMasking(prtcl) - self.utils = emc_vmax_utils.EMCVMAXUtils(prtcl) - self.fast = emc_vmax_fast.EMCVMAXFast(prtcl) - self.provision = emc_vmax_provision.EMCVMAXProvision(prtcl) - self.provisionv3 = emc_vmax_provision_v3.EMCVMAXProvisionV3(prtcl) + self.masking = masking.VMAXMasking(prtcl) + self.utils = utils.VMAXUtils(prtcl) + self.fast = fast.VMAXFast(prtcl) + self.provision = provision.VMAXProvision(prtcl) + self.provisionv3 = provision_v3.VMAXProvisionV3(prtcl) self.version = version # replication self.replication_enabled = False @@ -1659,7 +1659,7 @@ class EMCVMAXCommon(object): "cert_file": self.configuration.safe_get( 'driver_client_cert')} - pywbem.cim_http.wbem_request = emc_vmax_https.wbem_request + pywbem.cim_http.wbem_request = https.wbem_request conn = pywbem.WBEMConnection( self.url, (self.user, self.passwd), diff --git a/cinder/volume/drivers/emc/emc_vmax_fast.py b/cinder/volume/drivers/dell_emc/vmax/fast.py similarity index 99% rename from cinder/volume/drivers/emc/emc_vmax_fast.py rename to cinder/volume/drivers/dell_emc/vmax/fast.py index a215245929f..3fa04488f9c 100644 --- a/cinder/volume/drivers/emc/emc_vmax_fast.py +++ b/cinder/volume/drivers/dell_emc/vmax/fast.py @@ -17,8 +17,8 @@ from oslo_log import log as logging from cinder import exception from cinder.i18n import _, _LE, _LI, _LW -from cinder.volume.drivers.emc import emc_vmax_provision -from cinder.volume.drivers.emc import emc_vmax_utils +from cinder.volume.drivers.dell_emc.vmax import provision +from cinder.volume.drivers.dell_emc.vmax import utils LOG = logging.getLogger(__name__) @@ -26,7 +26,7 @@ DEFAULT_SG_PREFIX = 'OS_default_' DEFAULT_SG_POSTFIX = '_SG' -class EMCVMAXFast(object): +class VMAXFast(object): """FAST Class for SMI-S based EMC volume drivers. This FAST class is for EMC volume drivers based on SMI-S. @@ -34,8 +34,8 @@ class EMCVMAXFast(object): """ def __init__(self, prtcl): self.protocol = prtcl - self.utils = emc_vmax_utils.EMCVMAXUtils(prtcl) - self.provision = emc_vmax_provision.EMCVMAXProvision(prtcl) + self.utils = utils.VMAXUtils(prtcl) + self.provision = provision.VMAXProvision(prtcl) def _check_if_fast_supported(self, conn, storageSystemInstanceName): """Check to see if fast is supported on the array. diff --git a/cinder/volume/drivers/emc/emc_vmax_fc.py b/cinder/volume/drivers/dell_emc/vmax/fc.py similarity index 98% rename from cinder/volume/drivers/emc/emc_vmax_fc.py rename to cinder/volume/drivers/dell_emc/vmax/fc.py index cc564881c79..1abadf546fa 100644 --- a/cinder/volume/drivers/emc/emc_vmax_fc.py +++ b/cinder/volume/drivers/dell_emc/vmax/fc.py @@ -1,4 +1,4 @@ -# Copyright (c) 2015 EMC Corporation. +# Copyright (c) 2012 - 2015 EMC Corporation. # All Rights Reserved. # # Licensed under the Apache License, Version 2.0 (the "License"); you may @@ -21,14 +21,14 @@ import six from cinder.i18n import _LW from cinder import interface from cinder.volume import driver -from cinder.volume.drivers.emc import emc_vmax_common +from cinder.volume.drivers.dell_emc.vmax import common from cinder.zonemanager import utils as fczm_utils LOG = logging.getLogger(__name__) @interface.volumedriver -class EMCVMAXFCDriver(driver.FibreChannelDriver): +class VMAXFCDriver(driver.FibreChannelDriver): """EMC FC Drivers for VMAX using SMI-S. Version history: @@ -76,6 +76,7 @@ class EMCVMAXFCDriver(driver.FibreChannelDriver): (bp vmax-volume-migration) - Support for compression on All Flash - Volume replication 2.1 (bp add-vmax-replication) + - rename and restructure driver (bp vmax-rename-dell-emc) """ @@ -86,9 +87,9 @@ class EMCVMAXFCDriver(driver.FibreChannelDriver): def __init__(self, *args, **kwargs): - super(EMCVMAXFCDriver, self).__init__(*args, **kwargs) + super(VMAXFCDriver, self).__init__(*args, **kwargs) self.active_backend_id = kwargs.get('active_backend_id', None) - self.common = emc_vmax_common.EMCVMAXCommon( + self.common = common.VMAXCommon( 'FC', self.VERSION, configuration=self.configuration, diff --git a/cinder/volume/drivers/emc/emc_vmax_https.py b/cinder/volume/drivers/dell_emc/vmax/https.py similarity index 100% rename from cinder/volume/drivers/emc/emc_vmax_https.py rename to cinder/volume/drivers/dell_emc/vmax/https.py diff --git a/cinder/volume/drivers/emc/emc_vmax_iscsi.py b/cinder/volume/drivers/dell_emc/vmax/iscsi.py similarity index 98% rename from cinder/volume/drivers/emc/emc_vmax_iscsi.py rename to cinder/volume/drivers/dell_emc/vmax/iscsi.py index 09cd61a63f8..77cceb1e31f 100644 --- a/cinder/volume/drivers/emc/emc_vmax_iscsi.py +++ b/cinder/volume/drivers/dell_emc/vmax/iscsi.py @@ -23,7 +23,7 @@ from cinder import exception from cinder.i18n import _, _LE, _LI from cinder import interface from cinder.volume import driver -from cinder.volume.drivers.emc import emc_vmax_common +from cinder.volume.drivers.dell_emc.vmax import common LOG = logging.getLogger(__name__) @@ -32,7 +32,7 @@ CINDER_CONF = '/etc/cinder/cinder.conf' @interface.volumedriver -class EMCVMAXISCSIDriver(driver.ISCSIDriver): +class VMAXISCSIDriver(driver.ISCSIDriver): """EMC ISCSI Drivers for VMAX using SMI-S. Version history: @@ -82,6 +82,7 @@ class EMCVMAXISCSIDriver(driver.ISCSIDriver): (bp vmax-volume-migration) - Support for compression on All Flash - Volume replication 2.1 (bp add-vmax-replication) + - rename and restructure driver (bp vmax-rename-dell-emc) """ @@ -92,10 +93,10 @@ class EMCVMAXISCSIDriver(driver.ISCSIDriver): def __init__(self, *args, **kwargs): - super(EMCVMAXISCSIDriver, self).__init__(*args, **kwargs) + super(VMAXISCSIDriver, self).__init__(*args, **kwargs) self.active_backend_id = kwargs.get('active_backend_id', None) self.common = ( - emc_vmax_common.EMCVMAXCommon( + common.VMAXCommon( 'iSCSI', self.VERSION, configuration=self.configuration, diff --git a/cinder/volume/drivers/emc/emc_vmax_masking.py b/cinder/volume/drivers/dell_emc/vmax/masking.py similarity index 99% rename from cinder/volume/drivers/emc/emc_vmax_masking.py rename to cinder/volume/drivers/dell_emc/vmax/masking.py index fcbfb9fcd45..11ded8eebd9 100644 --- a/cinder/volume/drivers/emc/emc_vmax_masking.py +++ b/cinder/volume/drivers/dell_emc/vmax/masking.py @@ -19,10 +19,10 @@ import six from cinder import exception from cinder.i18n import _, _LE, _LI, _LW -from cinder.volume.drivers.emc import emc_vmax_fast -from cinder.volume.drivers.emc import emc_vmax_provision -from cinder.volume.drivers.emc import emc_vmax_provision_v3 -from cinder.volume.drivers.emc import emc_vmax_utils +from cinder.volume.drivers.dell_emc.vmax import fast +from cinder.volume.drivers.dell_emc.vmax import provision +from cinder.volume.drivers.dell_emc.vmax import provision_v3 +from cinder.volume.drivers.dell_emc.vmax import utils LOG = logging.getLogger(__name__) @@ -38,7 +38,7 @@ FASTPOLICY = 'storagetype:fastpolicy' ISV3 = 'isV3' -class EMCVMAXMasking(object): +class VMAXMasking(object): """Masking class for SMI-S based EMC volume drivers. Masking code to dynamically create a masking view @@ -47,10 +47,10 @@ class EMCVMAXMasking(object): """ def __init__(self, prtcl): self.protocol = prtcl - self.utils = emc_vmax_utils.EMCVMAXUtils(prtcl) - self.fast = emc_vmax_fast.EMCVMAXFast(prtcl) - self.provision = emc_vmax_provision.EMCVMAXProvision(prtcl) - self.provisionv3 = emc_vmax_provision_v3.EMCVMAXProvisionV3(prtcl) + self.utils = utils.VMAXUtils(prtcl) + self.fast = fast.VMAXFast(prtcl) + self.provision = provision.VMAXProvision(prtcl) + self.provisionv3 = provision_v3.VMAXProvisionV3(prtcl) def setup_masking_view(self, conn, maskingViewDict, extraSpecs): diff --git a/cinder/volume/drivers/emc/emc_vmax_provision.py b/cinder/volume/drivers/dell_emc/vmax/provision.py similarity index 99% rename from cinder/volume/drivers/emc/emc_vmax_provision.py rename to cinder/volume/drivers/dell_emc/vmax/provision.py index 9f25ccfa3c3..66a90bca2a2 100644 --- a/cinder/volume/drivers/emc/emc_vmax_provision.py +++ b/cinder/volume/drivers/dell_emc/vmax/provision.py @@ -20,7 +20,7 @@ import six from cinder import exception from cinder.i18n import _ -from cinder.volume.drivers.emc import emc_vmax_utils +from cinder.volume.drivers.dell_emc.vmax import utils LOG = logging.getLogger(__name__) @@ -36,7 +36,7 @@ COPY_ON_WRITE = 6 TF_CLONE = 8 -class EMCVMAXProvision(object): +class VMAXProvision(object): """Provisioning Class for SMI-S based EMC volume drivers. This Provisioning class is for EMC volume drivers based on SMI-S. @@ -44,7 +44,7 @@ class EMCVMAXProvision(object): """ def __init__(self, prtcl): self.protocol = prtcl - self.utils = emc_vmax_utils.EMCVMAXUtils(prtcl) + self.utils = utils.VMAXUtils(prtcl) def delete_volume_from_pool( self, conn, storageConfigservice, volumeInstanceName, volumeName, diff --git a/cinder/volume/drivers/emc/emc_vmax_provision_v3.py b/cinder/volume/drivers/dell_emc/vmax/provision_v3.py similarity index 99% rename from cinder/volume/drivers/emc/emc_vmax_provision_v3.py rename to cinder/volume/drivers/dell_emc/vmax/provision_v3.py index 9dc5c65b69d..66617ea8cf0 100644 --- a/cinder/volume/drivers/emc/emc_vmax_provision_v3.py +++ b/cinder/volume/drivers/dell_emc/vmax/provision_v3.py @@ -21,7 +21,7 @@ import six from cinder import exception from cinder.i18n import _, _LE, _LW -from cinder.volume.drivers.emc import emc_vmax_utils +from cinder.volume.drivers.dell_emc.vmax import utils LOG = logging.getLogger(__name__) @@ -43,7 +43,7 @@ RDF_SYNCHRONIZED = 6 RDF_FAILEDOVER = 12 -class EMCVMAXProvisionV3(object): +class VMAXProvisionV3(object): """Provisioning Class for SMI-S based EMC volume drivers. This Provisioning class is for EMC volume drivers based on SMI-S. @@ -51,7 +51,7 @@ class EMCVMAXProvisionV3(object): """ def __init__(self, prtcl): self.protocol = prtcl - self.utils = emc_vmax_utils.EMCVMAXUtils(prtcl) + self.utils = utils.VMAXUtils(prtcl) def delete_volume_from_pool( self, conn, storageConfigservice, volumeInstanceName, volumeName, diff --git a/cinder/volume/drivers/emc/emc_vmax_utils.py b/cinder/volume/drivers/dell_emc/vmax/utils.py similarity index 99% rename from cinder/volume/drivers/emc/emc_vmax_utils.py rename to cinder/volume/drivers/dell_emc/vmax/utils.py index 2a1a522c5d5..545ee90dc3b 100644 --- a/cinder/volume/drivers/emc/emc_vmax_utils.py +++ b/cinder/volume/drivers/dell_emc/vmax/utils.py @@ -70,7 +70,7 @@ IS_RE = 'replication_enabled' REPLICATION_FAILOVER = fields.ReplicationStatus.FAILED_OVER -class EMCVMAXUtils(object): +class VMAXUtils(object): """Utility class for SMI-S based EMC volume drivers. This Utility class is for EMC volume drivers based on SMI-S. @@ -2048,9 +2048,9 @@ class EMCVMAXUtils(object): portGroupName = portGroupElement.childNodes[0].nodeValue if portGroupName: portGroupNames.append(portGroupName.strip()) - portGroupNames = EMCVMAXUtils._filter_list(portGroupNames) + portGroupNames = VMAXUtils._filter_list(portGroupNames) if len(portGroupNames) > 0: - return EMCVMAXUtils.get_random_pg_from_list(portGroupNames) + return VMAXUtils.get_random_pg_from_list(portGroupNames) exception_message = (_("No Port Group elements found in config file.")) LOG.error(exception_message) diff --git a/cinder/volume/manager.py b/cinder/volume/manager.py index a580e3d59b5..fed2c0bf836 100644 --- a/cinder/volume/manager.py +++ b/cinder/volume/manager.py @@ -165,6 +165,10 @@ MAPPING = { 'cinder.volume.drivers.dell_emc.xtremio.XtremIOFCDriver', 'cinder.volume.drivers.datera.DateraDriver': 'cinder.volume.drivers.datera.datera_iscsi.DateraDriver', + 'cinder.volume.drivers.emc.emc_vmax_iscsi.EMCVMAXISCSIDriver': + 'cinder.volume.drivers.dell_emc.vmax.iscsi.VMAXISCSIDriver', + 'cinder.volume.drivers.emc.emc_vmax_fc.EMCVMAXFCDriver': + 'cinder.volume.drivers.dell_emc.vmax.fc.VMAXFCDriver', } diff --git a/releasenotes/notes/vmax-rename-dell-emc-f9ebfb9eb567f427.yaml b/releasenotes/notes/vmax-rename-dell-emc-f9ebfb9eb567f427.yaml new file mode 100644 index 00000000000..3b633b5bb03 --- /dev/null +++ b/releasenotes/notes/vmax-rename-dell-emc-f9ebfb9eb567f427.yaml @@ -0,0 +1,6 @@ +--- +upgrade: + - The VMAX driver is moved to the dell_emc directory. + volume_driver entry in cinder.conf needs to be changed to + cinder.volume.drivers.dell_emc.vmax.iscsi.VMAXISCSIDriver or + cinder.volume.drivers.dell_emc.vmax.fc.VMAXFCDriver.