def setup_fake_driver(self): config = conf.Configuration(None) config.fc_fabric_names = fabric_name def fake_build_driver(self): self.driver = mock.Mock(fc_zone_driver.FCZoneDriver) self.set_initialized(True) self.mock_object(fc_zone_manager.ZoneManager, '_build_driver', fake_build_driver) self.zm = fc_zone_manager.ZoneManager(configuration=config) self.configuration = conf.Configuration(None) self.configuration.fc_fabric_names = fabric_name
def setUp(self, opt_mock): super(TestFCZoneManager, self).setUp() config = conf.Configuration(None) config.fc_fabric_names = fabric_name def fake_build_driver(self): self.driver = mock.Mock(fc_zone_driver.FCZoneDriver) self.stubs.Set(fc_zone_manager.ZoneManager, '_build_driver', fake_build_driver) self.zm = fc_zone_manager.ZoneManager(configuration=config) self.configuration = conf.Configuration(None) self.configuration.fc_fabric_names = fabric_name self.driver = mock.Mock(fc_zone_driver.FCZoneDriver)
def test_unsupported_driver_disabled(self): config = conf.Configuration(fc_zone_manager.zone_manager_opts, 'fc-zone-manager') config.fc_fabric_names = fabric_name config.enable_unsupported_driver = False def fake_import(self, *args, **kwargs): fake_driver = mock.Mock(fc_zone_driver.FCZoneDriver) fake_driver.supported = False return fake_driver self.patch('oslo_utils.importutils.import_object', fake_import) zm = fc_zone_manager.ZoneManager(configuration=config) self.assertFalse(zm.driver.supported) self.assertFalse(zm.initialized)
def setUp(self): super(TestVolumeManager, self).setUp() self.configuration = conf.Configuration(None) self.configuration.set_default('fc_fabric_names', 'BRCD_FAB_4', 'fc-zone-manager') self.configuration.zoning_mode = 'fabric' self.driver = mock.Mock(driver.VolumeDriver) self.driver.initialize_connection.return_value = conn_info self.driver.terminate_connection.return_value = conn_info self.driver.create_export.return_value = None self.db = mock.Mock() self.db.volume_get.return_value = {'volume_type_id': None} self.db.volume_admin_metadata_get.return_value = {} self.context_mock = mock.Mock() self.context_mock.elevated.return_value = None self.zonemanager = fc_zone_manager.ZoneManager( configuration=self.configuration)
def test_unsupported_driver_enabled(self): config = conf.Configuration(None) config.fc_fabric_names = fabric_name def fake_import(self, *args, **kwargs): fake_driver = mock.Mock(fc_zone_driver.FCZoneDriver) fake_driver.supported = False return fake_driver self.patch('oslo_utils.importutils.import_object', fake_import) with mock.patch( 'cinder.volume.configuration.Configuration') as mock_config: mock_config.return_value.zone_driver = 'test' mock_config.return_value.enable_unsupported_driver = True zm = fc_zone_manager.ZoneManager(configuration=config) self.assertFalse(zm.driver.supported) self.assertTrue(zm.initialized)
def create_zone_manager(): """If zoning is enabled, build the Zone Manager.""" config = configuration.Configuration(manager.volume_manager_opts) LOG.debug("Zoning mode: %s", config.safe_get('zoning_mode')) if config.safe_get('zoning_mode') == 'fabric': LOG.debug("FC Zone Manager enabled.") zm = fc_zone_manager.ZoneManager() LOG.info( _LI("Using FC Zone Manager %(zm_version)s," " Driver %(drv_name)s %(drv_version)s."), { 'zm_version': zm.get_version(), 'drv_name': zm.driver.__class__.__name__, 'drv_version': zm.driver.get_version() }) return zm else: LOG.debug("FC Zone Manager not enabled in cinder.conf.") return None