コード例 #1
0
 def test_create_duplicate_default_l2_gateway_noop(self):
     def_bridge_cluster_name = nsx_v3_mocks.NSX_BRIDGE_CLUSTER_NAME
     with mock.patch.object(nsx_v3_driver.NsxV3Driver,
                            'subscribe_callback_notifications'):
         cfg.CONF.set_override("default_bridge_cluster",
                               def_bridge_cluster_name, "nsx_v3")
         nsx_v3_driver.NsxV3Driver(mock.MagicMock())
         nsx_v3_driver.NsxV3Driver(mock.MagicMock())
         l2gws = self.driver._get_l2_gateways(self.context)
         # Verify whether only one default L2 gateway is created
         self.assertEqual(1, len(l2gws))
コード例 #2
0
 def test_nsxl2gw_driver_init(self):
     with mock.patch.object(nsx_v3_driver.NsxV3Driver,
                            'subscribe_callback_notifications') as sub:
         with mock.patch.object(nsx_v3_driver.LOG, 'debug') as debug:
             nsx_v3_driver.NsxV3Driver(mock.MagicMock())
             self.assertTrue(sub.called)
             self.assertTrue(debug.called)
コード例 #3
0
 def test_create_default_l2_gateway(self):
     def_bep_name = NSX_DEFAULT_BEP_NAME
     cfg.CONF.set_override("default_bridge_endpoint_profile", def_bep_name,
                           "nsx_v3")
     with mock.patch.object(nsx_v3_driver.NsxV3Driver,
                            '_get_bridge_vlan_tz_id',
                            return_value=['some_tz_id']) as mock_get_tz:
         nsx_v3_driver.NsxV3Driver(mock.MagicMock())
         def_bep_id = (self.nsxlib.bridge_endpoint_profile.
                       get_id_by_name_or_id(def_bep_name))
         # fake the callback invoked after init
         registry.publish(resources.PROCESS, events.BEFORE_SPAWN,
                          mock.MagicMock())
         l2gws = self.driver._get_l2_gateways(self.context)
         def_l2gw = None
         for l2gw in l2gws:
             for device in l2gw['devices']:
                 if device['device_name'] == def_bep_id:
                     def_l2gw = l2gw
         self.assertIsNotNone(def_l2gw)
         self.assertTrue(def_l2gw.devices[0].device_name, def_bep_id)
         self.assertTrue(def_l2gw.devices[0].interfaces[0].interface_name,
                         'some_tz_id')
         mock_get_tz.assert_called_once_with({
             'id': def_bep_id,
             'edge_cluster_id': 'meh'
         })
コード例 #4
0
    def setUp(self):
        super(TestNsxV3L2GatewayDriver, self).setUp()
        self.core_plugin = importutils.import_object(NSX_V3_PLUGIN_CLASS)
        self.driver = nsx_v3_driver.NsxV3Driver(mock.MagicMock())
        mock.patch.object(config, 'register_l2gw_opts_helper')
        mock.patch('neutron.services.service_base.load_drivers',
                   return_value=({
                       'dummyprovider': self.driver
                   }, 'dummyprovider')).start()
        mock.patch.object(l2gateway_db.L2GatewayMixin, '__init__'),
        mock.patch.object(l2gateway_db, 'subscribe')
        mock.patch('neutron.db.servicetype_db.ServiceTypeManager.get_instance',
                   return_value=mock.MagicMock()).start()
        mock_default_bep_uuid = uuidutils.generate_uuid()
        mock.patch(
            'vmware_nsxlib.v3.core_resources.'
            'NsxLibBridgeEndpointProfile.get_id_by_name_or_id',
            return_value=mock_default_bep_uuid).start()
        mock.patch(
            'vmware_nsxlib.v3.core_resources.'
            'NsxLibBridgeEndpointProfile.get',
            return_value={
                'id': mock_default_bep_uuid,
                'edge_cluster_id': 'meh'
            }).start()
        mock.patch(
            'vmware_nsxlib.v3.core_resources.'
            'NsxLibTransportZone.get_transport_type',
            return_value="VLAN").start()

        self.l2gw_plugin = core_l2gw_plugin.L2GatewayPlugin()
        self.context = context.get_admin_context()
コード例 #5
0
 def test_create_default_l2_gateway_no_bc_uuid_noop(self):
     with mock.patch.object(nsx_v3_driver.NsxV3Driver,
                            'subscribe_callback_notifications'):
         nsx_v3_driver.NsxV3Driver(mock.MagicMock())
         l2gws = self.driver._get_l2_gateways(self.context)
         # Verify no default L2 gateway is created if bridge cluster id is
         # not configured in nsx.ini
         self.assertEqual([], l2gws)
コード例 #6
0
    def setUp(self):
        super(TestNsxV3L2GatewayDriver, self).setUp()
        cfg.CONF.set_override("nsx_l2gw_driver", NSX_V3_L2GW_DRIVER_CLASS_PATH)

        self.core_plugin = importutils.import_object(NSX_V3_PLUGIN_CLASS)

        self.driver = nsx_v3_driver.NsxV3Driver()
        self.l2gw_plugin = l2gw_plugin.NsxL2GatewayPlugin(mock.MagicMock())
        self.context = context.get_admin_context()
コード例 #7
0
 def test_create_duplicate_default_l2_gateway_noop(self):
     def_bridge_cluster_name = nsx_v3_mocks.NSX_BRIDGE_CLUSTER_NAME
     cfg.CONF.set_override("default_bridge_cluster",
                           def_bridge_cluster_name, "nsx_v3")
     for i in range(0, 2):
         nsx_v3_driver.NsxV3Driver(mock.MagicMock())
         # fake the callback invoked after init
         registry.publish(resources.PROCESS, events.BEFORE_SPAWN,
                          mock.MagicMock())
     l2gws = self.driver._get_l2_gateways(self.context)
     # Verify whether only one default L2 gateway is created
     self.assertEqual(1, len(l2gws))
コード例 #8
0
 def setUp(self):
     super(TestNsxV3L2GatewayDriver, self).setUp()
     self.core_plugin = importutils.import_object(NSX_V3_PLUGIN_CLASS)
     self.driver = nsx_v3_driver.NsxV3Driver(mock.MagicMock())
     mock.patch.object(config, 'register_l2gw_opts_helper')
     mock.patch('neutron.services.service_base.load_drivers',
                return_value=({'dummyprovider': self.driver},
                              'dummyprovider')).start()
     mock.patch.object(l2gateway_db.L2GatewayMixin, '__init__'),
     mock.patch.object(l2gateway_db, 'subscribe')
     mock.patch('neutron.db.servicetype_db.ServiceTypeManager.get_instance',
                return_value=mock.MagicMock()).start()
     self.l2gw_plugin = core_l2gw_plugin.L2GatewayPlugin()
     self.context = context.get_admin_context()
コード例 #9
0
 def test_create_duplicate_default_l2_gateway_noop(self):
     def_bep_name = NSX_DEFAULT_BEP_NAME
     cfg.CONF.set_override("default_bridge_endpoint_profile", def_bep_name,
                           "nsx_v3")
     with mock.patch.object(nsx_v3_driver.NsxV3Driver,
                            '_get_bridge_vlan_tz_id',
                            return_value=['some_tz_id']):
         for i in range(0, 2):
             nsx_v3_driver.NsxV3Driver(mock.MagicMock())
             # fake the callback invoked after init
             registry.publish(resources.PROCESS, events.BEFORE_SPAWN,
                              mock.MagicMock())
         l2gws = self.driver._get_l2_gateways(self.context)
         # Verify whether only one default L2 gateway is created
         self.assertEqual(1, len(l2gws))
コード例 #10
0
ファイル: driver.py プロジェクト: ullbergm/vmware-nsx
    def __init__(self, plugin):
        super(NsxTvdL2GatewayDriver, self).__init__()
        self._plugin = plugin

        # supported drivers:
        self.drivers = {}
        try:
            self.drivers[projectpluginmap.NsxPlugins.NSX_T] = (
                t_driver.NsxV3Driver(plugin))
        except Exception:
            LOG.warning("NsxTvdL2GatewayDriver failed to initialize the NSX-T "
                        "driver")
            self.drivers[projectpluginmap.NsxPlugins.NSX_T] = None
        try:
            self.drivers[projectpluginmap.NsxPlugins.NSX_V] = (
                v_driver.NsxvL2GatewayDriver(plugin))
        except Exception:
            LOG.warning("NsxTvdL2GatewayDriver failed to initialize the NSX-V "
                        "driver")
            self.drivers[projectpluginmap.NsxPlugins.NSX_V] = None
コード例 #11
0
 def test_create_default_l2_gateway(self):
     def_bridge_cluster_name = nsx_v3_mocks.NSX_BRIDGE_CLUSTER_NAME
     cfg.CONF.set_override("default_bridge_cluster",
                           def_bridge_cluster_name, "nsx_v3")
     nsx_v3_driver.NsxV3Driver(mock.MagicMock())
     # fake the callback invoked after init
     registry.publish(resources.PROCESS, events.BEFORE_SPAWN,
                      mock.MagicMock())
     l2gws = self.driver._get_l2_gateways(self.context)
     def_bridge_cluster_id = (self.nsxlib.bridge_cluster.
                              get_id_by_name_or_id(def_bridge_cluster_name))
     def_l2gw = None
     for l2gw in l2gws:
         for device in l2gw['devices']:
             if device['device_name'] == def_bridge_cluster_id:
                 def_l2gw = l2gw
     self.assertIsNotNone(def_l2gw)
     self.assertTrue(def_l2gw.devices[0].device_name, def_bridge_cluster_id)
     self.assertTrue(def_l2gw.devices[0].interfaces[0].interface_name,
                     'default-bridge-cluster')
コード例 #12
0
 def test_create_default_l2_gateway(self):
     def_bridge_cluster_name = nsx_v3_mocks.NSX_BRIDGE_CLUSTER_NAME
     with mock.patch.object(nsx_v3_driver.NsxV3Driver,
                            'subscribe_callback_notifications'):
         cfg.CONF.set_override("default_bridge_cluster",
                               def_bridge_cluster_name, "nsx_v3")
         nsx_v3_driver.NsxV3Driver(mock.MagicMock())
         l2gws = self.driver._get_l2_gateways(self.context)
         def_bridge_cluster_id = (
             self.nsxlib.get_bridge_cluster_id_by_name_or_id(
                 def_bridge_cluster_name))
         def_l2gw = None
         for l2gw in l2gws:
             for device in l2gw['devices']:
                 if device['device_name'] == def_bridge_cluster_id:
                     def_l2gw = l2gw
         self.assertIsNotNone(def_l2gw)
         self.assertTrue(def_l2gw.devices[0].device_name,
                         def_bridge_cluster_id)
         self.assertTrue(def_l2gw.devices[0].interfaces[0].interface_name,
                         'default-bridge-cluster')