def test_associating_bgpvpn(self): # Create one virtual network vn = self.create_virtual_network('vn-%s' % self.id(), '10.0.0.0/24') # Create two bgpvpn with route targets for idx in range(2): bgpvpn = Bgpvpn('bgpvpn%d-%s' % (idx, self.id())) bgpvpn.set_route_target_list( RouteTargetList(['target:%d:0' % idx])) bgpvpn.set_import_route_target_list( RouteTargetList(['target:%d:1' % idx])) bgpvpn.set_export_route_target_list( RouteTargetList(['target:%d:2' % idx])) self._vnc_lib.bgpvpn_create(bgpvpn) vn.add_bgpvpn(bgpvpn) self._vnc_lib.virtual_network_update(vn) # Check bgpvpn's route targets are correctly associated to virtual # network's primary routing instances. # Check imported and exported route targets self.check_rt_in_ri(self.get_ri_name(vn), 'target:0:0') self.check_rt_in_ri(self.get_ri_name(vn), 'target:0:0') # Check imported route targets self.check_rt_in_ri(self.get_ri_name(vn), 'target:0:1', exim='import') self.check_rt_in_ri(self.get_ri_name(vn), 'target:0:1', exim='import') # Check exported route targets self.check_rt_in_ri(self.get_ri_name(vn), 'target:0:2', exim='export') self.check_rt_in_ri(self.get_ri_name(vn), 'target:0:2', exim='export')
def test_associating_bgpvpn(self): # Create one logical with one interface on a virtual network lr, vns, _, _ = self.create_logical_router('lr-%s' % self.id()) # We attached only one virtual network to the logical router vn = vns[0] # Create two bgpvpn with route targets for idx in range(2): bgpvpn = Bgpvpn('bgpvpn%d-%s' % (idx, self.id())) bgpvpn.set_route_target_list( RouteTargetList(['target:%d:0' % idx])) bgpvpn.set_import_route_target_list( RouteTargetList(['target:%d:1' % idx])) bgpvpn.set_export_route_target_list( RouteTargetList(['target:%d:2' % idx])) self._vnc_lib.bgpvpn_create(bgpvpn) lr.add_bgpvpn(bgpvpn) self._vnc_lib.logical_router_update(lr) # Check bgpvpn's route targets are correctly associated to virtual # network's primary routing instances of network attached to the # logical routers. # Check imported and exported route targets self.check_rt_in_ri(self.get_ri_name(vn), 'target:0:0') self.check_rt_in_ri(self.get_ri_name(vn), 'target:1:0') # Check imported route targets self.check_rt_in_ri(self.get_ri_name(vn), 'target:0:1', exim='import') self.check_rt_in_ri(self.get_ri_name(vn), 'target:1:1', exim='import') # Check exported route targets self.check_rt_in_ri(self.get_ri_name(vn), 'target:0:2', exim='export') self.check_rt_in_ri(self.get_ri_name(vn), 'target:1:2', exim='export')
def test_updating_bgpvpn(self): # Create one logical router with one private virtual network lr, vns, _, _ = self.create_logical_router('lr-%s' % self.id()) # We attached only one virtual network to the logical router vn = vns[0] # Create one bgpvpn without any route target associated to the logical # router bgpvpn = Bgpvpn('bgpvpn-%s' % self.id()) bgpvpn_id = self._vnc_lib.bgpvpn_create(bgpvpn) bgpvpn = self._vnc_lib.bgpvpn_read(id=bgpvpn_id) lr.add_bgpvpn(bgpvpn) self._vnc_lib.logical_router_update(lr) rt_name = 'target:3:1' # Check set/unset import and export route target bgpvpn.set_route_target_list(RouteTargetList([rt_name])) self._vnc_lib.bgpvpn_update(bgpvpn) self.check_rt_in_ri(self.get_ri_name(vn), rt_name) bgpvpn.set_route_target_list(RouteTargetList()) self._vnc_lib.bgpvpn_update(bgpvpn) self.check_rt_in_ri(self.get_ri_name(vn), rt_name, is_present=False) self.check_rt_is_deleted(rt_name) # Check set/unset import route target bgpvpn.set_import_route_target_list(RouteTargetList([rt_name])) self._vnc_lib.bgpvpn_update(bgpvpn) self.check_rt_in_ri(self.get_ri_name(vn), rt_name, exim='import') bgpvpn.set_import_route_target_list(RouteTargetList()) self._vnc_lib.bgpvpn_update(bgpvpn) self.check_rt_in_ri(self.get_ri_name(vn), rt_name, is_present=False) self.check_rt_is_deleted(rt_name) # Check set/unset export route target bgpvpn.set_export_route_target_list(RouteTargetList([rt_name])) self._vnc_lib.bgpvpn_update(bgpvpn) self.check_rt_in_ri(self.get_ri_name(vn), rt_name, exim='export') bgpvpn.set_export_route_target_list(RouteTargetList()) self._vnc_lib.bgpvpn_update(bgpvpn) self.check_rt_in_ri(self.get_ri_name(vn), rt_name, is_present=False) self.check_rt_is_deleted(rt_name)
def test_updating_bgpvpn(self): # Create one virtual network vn = self.create_virtual_network('vn-%s' % self.id(), '10.0.0.0/24') # Create one bgpvpn without any route target associated to the virtual # network bgpvpn = Bgpvpn('bgpvpn-%s' % self.id()) bgpvpn_id = self._vnc_lib.bgpvpn_create(bgpvpn) bgpvpn = self._vnc_lib.bgpvpn_read(id=bgpvpn_id) vn.add_bgpvpn(bgpvpn) self._vnc_lib.virtual_network_update(vn) rt_name = 'target:3:1' # Check set/unset import and export route target bgpvpn.set_route_target_list(RouteTargetList([rt_name])) self._vnc_lib.bgpvpn_update(bgpvpn) self.check_rt_in_ri(self.get_ri_name(vn), rt_name) bgpvpn.set_route_target_list(RouteTargetList()) self._vnc_lib.bgpvpn_update(bgpvpn) self.check_rt_in_ri(self.get_ri_name(vn), rt_name, is_present=False) self.check_rt_is_deleted(rt_name) # Check set/unset import route target bgpvpn.set_import_route_target_list(RouteTargetList([rt_name])) self._vnc_lib.bgpvpn_update(bgpvpn) self.check_rt_in_ri(self.get_ri_name(vn), rt_name, exim='import') bgpvpn.set_import_route_target_list(RouteTargetList()) self._vnc_lib.bgpvpn_update(bgpvpn) self.check_rt_in_ri(self.get_ri_name(vn), rt_name, is_present=False) self.check_rt_is_deleted(rt_name) # Check set/unset export route target bgpvpn.set_export_route_target_list(RouteTargetList([rt_name])) self._vnc_lib.bgpvpn_update(bgpvpn) self.check_rt_in_ri(self.get_ri_name(vn), rt_name, exim='export') bgpvpn.set_export_route_target_list(RouteTargetList()) self._vnc_lib.bgpvpn_update(bgpvpn) self.check_rt_in_ri(self.get_ri_name(vn), rt_name, is_present=False) self.check_rt_is_deleted(rt_name)