def test_vlan(self):
        """test vlan allocation/de-alloc."""

        self.vbm_ = vlan_bitmap.VlanBitmap(self.context)
        vlan_id = self.vbm_.get_next_vlan(None)

        # First vlan is always 2
        self.assertEqual(vlan_id, 2)

        # next vlan is always 3
        vlan_id = self.vbm_.get_next_vlan(None)
        self.assertEqual(vlan_id, 3)

        # get a specific vlan i.e. 4
        vlan_id = self.vbm_.get_next_vlan(4)
        self.assertEqual(vlan_id, 4)

        # get a specific vlan i.e. 5
        vlan_id = self.vbm_.get_next_vlan(5)
        self.assertEqual(vlan_id, 5)

        # Skip 6

        # get a specific vlan i.e. 7
        vlan_id = self.vbm_.get_next_vlan(7)
        self.assertEqual(vlan_id, 7)

        # get a specific vlan i.e. 1900
        vlan_id = self.vbm_.get_next_vlan(1900)
        self.assertEqual(vlan_id, 1900)

        # Release 4 and get next again
        self.vbm_.release_vlan(4)
        vlan_id = self.vbm_.get_next_vlan(None)
        self.assertEqual(vlan_id, 4)
示例#2
0
    def __init__(self):
        """Initialize Brocade Plugin.

        Specify switch address and db configuration.
        """

        super(BrocadePluginV2, self).__init__()
        self.supported_extension_aliases = ["binding", "security-group",
                                            "external-net", "router",
                                            "extraroute", "agent",
                                            "l3_agent_scheduler",
                                            "dhcp_agent_scheduler"]

        self.physical_interface = (cfg.CONF.PHYSICAL_INTERFACE.
                                   physical_interface)
        self.base_binding_dict = self._get_base_binding_dict()
        portbindings_base.register_port_dict_function()
        self.ctxt = n_context.get_admin_context()
        self._vlan_bitmap = vbm.VlanBitmap(self.ctxt)
        self._setup_rpc()
        self.network_scheduler = importutils.import_object(
            cfg.CONF.network_scheduler_driver
        )
        self.router_scheduler = importutils.import_object(
            cfg.CONF.router_scheduler_driver
        )
        self.brocade_init()
        self.start_periodic_dhcp_agent_status_check()
示例#3
0
    def __init__(self):
        """Initialize Brocade Plugin.

        Specify switch address and db configuration.
        """

        self.supported_extension_aliases = [
            "binding", "security-group", "router", "extraroute", "agent",
            "l3_agent_scheduler", "dhcp_agent_scheduler"
        ]

        self.physical_interface = (
            cfg.CONF.PHYSICAL_INTERFACE.physical_interface)
        db.configure_db()
        self.ctxt = context.get_admin_context()
        self.ctxt.session = db.get_session()
        self._vlan_bitmap = vbm.VlanBitmap(self.ctxt)
        self._setup_rpc()
        self.network_scheduler = importutils.import_object(
            cfg.CONF.network_scheduler_driver)
        self.router_scheduler = importutils.import_object(
            cfg.CONF.router_scheduler_driver)
        self.brocade_init()