from cinder import context
from cinder.openstack.common import importutils
from cinder import test
-from cinder.volume.drivers.solidfire import SolidFireDriver
CONF = cfg.CONF
-NEXENTA_MODULE = "cinder.volume.drivers.nexenta.iscsi.NexentaISCSIDriver"
-SOLIDFIRE_MODULE = "cinder.volume.drivers.solidfire.SolidFireDriver"
STORWIZE_MODULE = "cinder.volume.drivers.ibm.storwize_svc.StorwizeSVCDriver"
-WINDOWS_MODULE = "cinder.volume.drivers.windows.windows.WindowsDriver"
-XIV_DS8K_MODULE = "cinder.volume.drivers.ibm.xiv_ds8k.XIVDS8KDriver"
-NETAPP_MODULE = "cinder.volume.drivers.netapp.common.Deprecated"
LEFTHAND_REST_MODULE = ("cinder.volume.drivers.san.hp.hp_lefthand_iscsi."
"HPLeftHandISCSIDriver")
GPFS_MODULE = "cinder.volume.drivers.ibm.gpfs.GPFSDriver"
super(VolumeDriverCompatibility, self).tearDown()
def _load_driver(self, driver):
- if 'SolidFire' in driver:
- # SolidFire driver does update_cluster stat on init
- self.stubs.Set(SolidFireDriver, '_update_cluster_status',
- self.fake_update_cluster_status)
self.manager.__init__(volume_driver=driver)
def _driver_module_name(self):
return "%s.%s" % (self.manager.driver.__class__.__module__,
self.manager.driver.__class__.__name__)
- def test_nexenta_old(self):
- self._load_driver('cinder.volume.drivers.nexenta.volume.NexentaDriver')
- self.assertEqual(self._driver_module_name(), NEXENTA_MODULE)
-
- def test_nexenta_new(self):
- self._load_driver(NEXENTA_MODULE)
- self.assertEqual(self._driver_module_name(), NEXENTA_MODULE)
-
- def test_solidfire_old(self):
- self._load_driver('cinder.volume.drivers.solidfire.SolidFire')
- self.assertEqual(self._driver_module_name(), SOLIDFIRE_MODULE)
-
- def test_solidfire_old2(self):
- self._load_driver('cinder.volume.drivers.solidfire.SolidFire')
- self.assertEqual(self._driver_module_name(), SOLIDFIRE_MODULE)
-
- def test_solidfire_new(self):
- self._load_driver(SOLIDFIRE_MODULE)
- self.assertEqual(self._driver_module_name(), SOLIDFIRE_MODULE)
-
def test_storwize_svc_old(self):
self._load_driver(
'cinder.volume.drivers.storwize_svc.StorwizeSVCDriver')
self._load_driver(STORWIZE_MODULE)
self.assertEqual(self._driver_module_name(), STORWIZE_MODULE)
- def test_windows_old(self):
- self._load_driver('cinder.volume.drivers.windows.WindowsDriver')
- self.assertEqual(self._driver_module_name(), WINDOWS_MODULE)
-
- def test_windows_new(self):
- self._load_driver(WINDOWS_MODULE)
- self.assertEqual(self._driver_module_name(), WINDOWS_MODULE)
-
- def test_xiv_old(self):
- self._load_driver('cinder.volume.drivers.xiv.XIVDriver')
- self.assertEqual(self._driver_module_name(), XIV_DS8K_MODULE)
-
- def test_xiv_ds8k_new(self):
- self._load_driver(XIV_DS8K_MODULE)
- self.assertEqual(self._driver_module_name(), XIV_DS8K_MODULE)
-
- def test_netapp_7m_iscsi_old(self):
- self._load_driver('cinder.volume.drivers.netapp.iscsi.'
- 'NetAppISCSIDriver')
- self.assertEqual(self._driver_module_name(), NETAPP_MODULE)
-
- def test_netapp_cm_iscsi_old(self):
- self._load_driver('cinder.volume.drivers.netapp.iscsi.'
- 'NetAppCmodeISCSIDriver')
- self.assertEqual(self._driver_module_name(), NETAPP_MODULE)
-
- def test_netapp_7m_nfs_old(self):
- self._load_driver('cinder.volume.drivers.netapp.nfs.NetAppNFSDriver')
- self.assertEqual(self._driver_module_name(), NETAPP_MODULE)
-
- def test_netapp_cm_nfs_old(self):
- self._load_driver('cinder.volume.drivers.netapp.nfs.'
- 'NetAppCmodeNfsDriver')
- self.assertEqual(self._driver_module_name(), NETAPP_MODULE)
-
def test_hp_lefthand_rest_old(self):
self._load_driver(
'cinder.volume.drivers.san.hp_lefthand.HpSanISCSIDriver')
CONF.register_opts(volume_manager_opts)
MAPPING = {
- 'cinder.volume.drivers.nexenta.volume.NexentaDriver':
- 'cinder.volume.drivers.nexenta.iscsi.NexentaISCSIDriver',
- 'cinder.volume.drivers.solidfire.SolidFire':
- 'cinder.volume.drivers.solidfire.SolidFireDriver',
'cinder.volume.drivers.storwize_svc.StorwizeSVCDriver':
'cinder.volume.drivers.ibm.storwize_svc.StorwizeSVCDriver',
- 'cinder.volume.drivers.windows.WindowsDriver':
- 'cinder.volume.drivers.windows.windows.WindowsDriver',
- 'cinder.volume.drivers.xiv.XIVDriver':
- 'cinder.volume.drivers.ibm.xiv_ds8k.XIVDS8KDriver',
'cinder.volume.drivers.xiv_ds8k.XIVDS8KDriver':
'cinder.volume.drivers.ibm.xiv_ds8k.XIVDS8KDriver',
- 'cinder.volume.driver.ISCSIDriver':
- 'cinder.volume.drivers.lvm.LVMISCSIDriver',
- 'cinder.volume.drivers.netapp.iscsi.NetAppISCSIDriver':
- 'cinder.volume.drivers.netapp.common.Deprecated',
- 'cinder.volume.drivers.netapp.iscsi.NetAppCmodeISCSIDriver':
- 'cinder.volume.drivers.netapp.common.Deprecated',
- 'cinder.volume.drivers.netapp.nfs.NetAppNFSDriver':
- 'cinder.volume.drivers.netapp.common.Deprecated',
- 'cinder.volume.drivers.netapp.nfs.NetAppCmodeNfsDriver':
- 'cinder.volume.drivers.netapp.common.Deprecated',
- 'cinder.volume.drivers.huawei.HuaweiISCSIDriver':
- 'cinder.volume.drivers.huawei.HuaweiVolumeDriver',
'cinder.volume.drivers.san.hp_lefthand.HpSanISCSIDriver':
'cinder.volume.drivers.san.hp.hp_lefthand_iscsi.HPLeftHandISCSIDriver',
'cinder.volume.drivers.gpfs.GPFSDriver':
LOG.warn(_("Driver path %s is deprecated, update your "
"configuration to the new path."), volume_driver)
volume_driver = MAPPING[volume_driver]
- if volume_driver == 'cinder.volume.drivers.lvm.ThinLVMVolumeDriver':
- # Deprecated in Havana
- # Not handled in MAPPING because it requires setting a conf option
- LOG.warn(_("ThinLVMVolumeDriver is deprecated, please configure "
- "LVMISCSIDriver and lvm_type=thin. Continuing with "
- "those settings."))
- volume_driver = 'cinder.volume.drivers.lvm.LVMISCSIDriver'
- self.configuration.lvm_type = 'thin'
self.driver = importutils.import_object(
volume_driver,
configuration=self.configuration,