From: Philippe Guibert Date: Thu, 19 Dec 2024 16:28:21 +0000 (+0100) Subject: topotests: add unified configuration X-Git-Tag: base_10.3~33^2~4 X-Git-Url: https://git.puffer.fish/?a=commitdiff_plain;h=d84b93f2872daeb1605ed09bbd9fb6fbbfa9b760;p=matthieu%2Ffrr.git topotests: add unified configuration Replace the various per-daemon config files with a unique frr.conf configuration file. Signed-off-by: Philippe Guibert --- diff --git a/tests/topotests/bgp_bmp/test_bgp_bmp_1.py b/tests/topotests/bgp_bmp/test_bgp_bmp_1.py index be3e07929a..1d7aa97473 100644 --- a/tests/topotests/bgp_bmp/test_bgp_bmp_1.py +++ b/tests/topotests/bgp_bmp/test_bgp_bmp_1.py @@ -78,7 +78,7 @@ def setup_module(mod): "tcpdump -nni r1-eth0 -s 0 -w {} &".format(pcap_file), stdout=None ) - for rname, router in tgen.routers().items(): + for _, (rname, router) in enumerate(tgen.routers().items(), 1): logger.info("Loading router %s" % rname) router.load_frr_config( os.path.join(CWD, "{}/frr.conf".format(rname)), diff --git a/tests/topotests/bgp_evpn_rt5/r1/bgpd.conf b/tests/topotests/bgp_evpn_rt5/r1/bgpd.conf deleted file mode 100644 index b9c230206f..0000000000 --- a/tests/topotests/bgp_evpn_rt5/r1/bgpd.conf +++ /dev/null @@ -1,44 +0,0 @@ -! debug bgp neighbor-events -! debug bgp updates -! debug bgp zebra -router bgp 65000 - bgp router-id 192.168.100.21 - bgp log-neighbor-changes - no bgp default ipv4-unicast - no bgp ebgp-requires-policy - neighbor 192.168.100.41 remote-as 65000 - neighbor 192.168.100.41 capability extended-nexthop - neighbor 192.168.100.61 remote-as 65500 - neighbor 192.168.100.61 capability extended-nexthop - ! - address-family l2vpn evpn - neighbor 192.168.100.41 activate - neighbor 192.168.100.41 route-map rmap_r1 in - neighbor 192.168.100.61 activate - neighbor 192.168.100.61 route-map rmap_r3 in - advertise-all-vni - exit-address-family -! -router bgp 65000 vrf r1-vrf-101 - bgp router-id 192.168.102.21 - bgp log-neighbor-changes - no bgp network import-check - address-family ipv4 unicast - network 192.168.102.21/32 - exit-address-family - address-family ipv6 unicast - network fd00::1/128 - exit-address-family - address-family l2vpn evpn - rd 65000:101 - route-target both 65:101 - advertise ipv4 unicast - advertise ipv6 unicast - exit-address-family - ! -route-map rmap_r3 deny 1 - match evpn vni 102 -exit -route-map rmap_r1 permit 1 - match evpn vni 101 -exit diff --git a/tests/topotests/bgp_evpn_rt5/r1/frr.conf b/tests/topotests/bgp_evpn_rt5/r1/frr.conf new file mode 100644 index 0000000000..e4a8059988 --- /dev/null +++ b/tests/topotests/bgp_evpn_rt5/r1/frr.conf @@ -0,0 +1,61 @@ +! debug zebra vxlan +! debug zebra kernel +! debug zebra dplane +! debug zebra rib +! debug bgp neighbor-events +! debug bgp updates +! debug bgp zebra +vrf r1-vrf-101 + vni 101 + exit-vrf +! +interface r1-eth0 + ip address 192.168.100.21/24 +! +interface loop101 vrf r1-vrf-101 + ip address 192.168.102.21/32 + ipv6 address fd00::1/128 +! +router bgp 65000 + bgp router-id 192.168.100.21 + bgp log-neighbor-changes + no bgp default ipv4-unicast + no bgp ebgp-requires-policy + neighbor 192.168.100.41 remote-as 65000 + neighbor 192.168.100.41 capability extended-nexthop + neighbor 192.168.100.61 remote-as 65500 + neighbor 192.168.100.61 capability extended-nexthop + ! + address-family l2vpn evpn + neighbor 192.168.100.41 activate + neighbor 192.168.100.41 route-map rmap_r1 in + neighbor 192.168.100.61 activate + neighbor 192.168.100.61 route-map rmap_r3 in + advertise-all-vni + exit-address-family +! +router bgp 65000 vrf r1-vrf-101 + bgp router-id 192.168.102.21 + bgp log-neighbor-changes + no bgp network import-check + address-family ipv4 unicast + network 192.168.102.21/32 + exit-address-family + address-family ipv6 unicast + network fd00::1/128 + exit-address-family + address-family l2vpn evpn + rd 65000:101 + route-target both 65:101 + advertise ipv4 unicast + advertise ipv6 unicast + exit-address-family + ! +route-map rmap_r3 deny 1 + match evpn vni 102 +exit +route-map rmap_r1 permit 1 + match evpn vni 101 +exit + + diff --git a/tests/topotests/bgp_evpn_rt5/r1/zebra.conf b/tests/topotests/bgp_evpn_rt5/r1/zebra.conf deleted file mode 100644 index c3d508c2b6..0000000000 --- a/tests/topotests/bgp_evpn_rt5/r1/zebra.conf +++ /dev/null @@ -1,23 +0,0 @@ -log stdout - -hostname r1 -password zebra - -! debug zebra vxlan -! debug zebra kernel -! debug zebra dplane -! debug zebra rib -log stdout -vrf r1-vrf-101 - vni 101 - exit-vrf -! -interface r1-eth0 - ip address 192.168.100.21/24 -! -interface loop101 vrf r1-vrf-101 - ip address 192.168.102.21/32 - ipv6 address fd00::1/128 -! - - diff --git a/tests/topotests/bgp_evpn_rt5/r2/bgpd.conf b/tests/topotests/bgp_evpn_rt5/r2/bgpd.conf deleted file mode 100644 index 8d60c3e17f..0000000000 --- a/tests/topotests/bgp_evpn_rt5/r2/bgpd.conf +++ /dev/null @@ -1,51 +0,0 @@ -! debug bgp neighbor-events -! debug bgp updates -! debug bgp zebra -router bgp 65000 - bgp router-id 192.168.100.41 - bgp log-neighbor-changes - no bgp default ipv4-unicast - neighbor 192.168.100.21 peer-group - neighbor 192.168.100.21 remote-as 65000 - neighbor 192.168.100.21 capability extended-nexthop - ! - address-family l2vpn evpn - neighbor 192.168.100.21 activate - advertise-all-vni - exit-address-family -! -router bgp 65000 vrf r2-vrf-101 - bgp router-id 192.168.101.41 - bgp log-neighbor-changes - no bgp network import-check - address-family ipv4 unicast - network 192.168.101.41/32 - network 192.168.102.41/32 - exit-address-family - address-family ipv6 unicast - network fd00::2/128 - network fd00::3/128 - exit-address-family - address-family l2vpn evpn - rd 65000:201 - route-target both 65:101 - advertise ipv4 unicast route-map rmap4 - advertise ipv6 unicast route-map rmap6 - exit-address-family - ! -access-list acl4_1 seq 10 permit 192.168.101.41/32 -access-list acl4_2 seq 10 permit 192.168.102.41/32 -ipv6 access-list acl6_1 seq 10 permit fd00::2/128 -ipv6 access-list acl6_2 seq 10 permit fd00::3/128 -route-map rmap4 permit 1 - match ip address acl4_1 -exit -route-map rmap4 deny 2 - match ip address acl4_2 -exit -route-map rmap6 permit 1 - match ipv6 address acl6_1 -exit -route-map rmap6 deny 2 - match ipv6 address acl6_2 -exit diff --git a/tests/topotests/bgp_evpn_rt5/r2/frr.conf b/tests/topotests/bgp_evpn_rt5/r2/frr.conf new file mode 100644 index 0000000000..0bb4b7cab5 --- /dev/null +++ b/tests/topotests/bgp_evpn_rt5/r2/frr.conf @@ -0,0 +1,65 @@ +! debug zebra vxlan +! debug bgp neighbor-events +! debug bgp updates +! debug bgp zebra + +vrf r2-vrf-101 + vni 101 + exit-vrf +! +interface loop101 vrf r2-vrf-101 + ip address 192.168.101.41/32 + ipv6 address fd00::2/128 +! +interface r2-eth0 + ip address 192.168.100.41/24 +! +router bgp 65000 + bgp router-id 192.168.100.41 + bgp log-neighbor-changes + no bgp default ipv4-unicast + neighbor 192.168.100.21 peer-group + neighbor 192.168.100.21 remote-as 65000 + neighbor 192.168.100.21 capability extended-nexthop + ! + address-family l2vpn evpn + neighbor 192.168.100.21 activate + advertise-all-vni + exit-address-family +! +router bgp 65000 vrf r2-vrf-101 + bgp router-id 192.168.101.41 + bgp log-neighbor-changes + no bgp network import-check + address-family ipv4 unicast + network 192.168.101.41/32 + network 192.168.102.41/32 + exit-address-family + address-family ipv6 unicast + network fd00::2/128 + network fd00::3/128 + exit-address-family + address-family l2vpn evpn + rd 65000:201 + route-target both 65:101 + advertise ipv4 unicast route-map rmap4 + advertise ipv6 unicast route-map rmap6 + exit-address-family + ! +access-list acl4_1 seq 10 permit 192.168.101.41/32 +access-list acl4_2 seq 10 permit 192.168.102.41/32 +ipv6 access-list acl6_1 seq 10 permit fd00::2/128 +ipv6 access-list acl6_2 seq 10 permit fd00::3/128 +route-map rmap4 permit 1 + match ip address acl4_1 +exit +route-map rmap4 deny 2 + match ip address acl4_2 +exit +route-map rmap6 permit 1 + match ipv6 address acl6_1 +exit +route-map rmap6 deny 2 + match ipv6 address acl6_2 +exit + diff --git a/tests/topotests/bgp_evpn_rt5/r2/zebra.conf b/tests/topotests/bgp_evpn_rt5/r2/zebra.conf deleted file mode 100644 index 7db40cb59c..0000000000 --- a/tests/topotests/bgp_evpn_rt5/r2/zebra.conf +++ /dev/null @@ -1,19 +0,0 @@ -log stdout - -hostname r2 -password zebra - -! debug zebra vxlan - -vrf r2-vrf-101 - vni 101 - exit-vrf -! -interface loop101 vrf r2-vrf-101 - ip address 192.168.101.41/32 - ipv6 address fd00::2/128 -! -interface r2-eth0 - ip address 192.168.100.41/24 -! - diff --git a/tests/topotests/bgp_evpn_rt5/r3/bgpd.conf b/tests/topotests/bgp_evpn_rt5/r3/bgpd.conf deleted file mode 100644 index 860612ec7d..0000000000 --- a/tests/topotests/bgp_evpn_rt5/r3/bgpd.conf +++ /dev/null @@ -1,33 +0,0 @@ -! debug bgp neighbor-events -! debug bgp updates -! debug bgp zebra -router bgp 65500 - bgp router-id 192.168.100.61 - bgp log-neighbor-changes - no bgp default ipv4-unicast - no bgp ebgp-requires-policy - neighbor 192.168.100.21 remote-as 65000 - neighbor 192.168.100.21 capability extended-nexthop - ! - address-family l2vpn evpn - neighbor 192.168.100.21 activate - advertise-all-vni - exit-address-family -! -router bgp 65000 vrf r3-vrf-102 - bgp router-id 192.168.100.61 - bgp log-neighbor-changes - no bgp network import-check - address-family ipv4 unicast - network 192.168.102.102/32 - exit-address-family - address-family ipv6 unicast - network fd00:102::1/128 - exit-address-family - address-family l2vpn evpn - rd 65000:302 - route-target both 65:101 - advertise ipv4 unicast - advertise ipv6 unicast - exit-address-family - ! diff --git a/tests/topotests/bgp_evpn_rt5/r3/frr.conf b/tests/topotests/bgp_evpn_rt5/r3/frr.conf new file mode 100644 index 0000000000..3f3851bd8c --- /dev/null +++ b/tests/topotests/bgp_evpn_rt5/r3/frr.conf @@ -0,0 +1,46 @@ +! debug bgp neighbor-events +! debug bgp updates +! debug bgp zebra +vrf r3-vrf-102 + vni 102 + exit-vrf +! +interface r3-eth0 + ip address 192.168.100.61/24 +! +interface loop102 vrf r3-vrf-102 + ip address 192.168.102.61/32 + ipv6 address fd00:6::1/128 +! +router bgp 65500 + bgp router-id 192.168.100.61 + bgp log-neighbor-changes + no bgp default ipv4-unicast + no bgp ebgp-requires-policy + neighbor 192.168.100.21 remote-as 65000 + neighbor 192.168.100.21 capability extended-nexthop + ! + address-family l2vpn evpn + neighbor 192.168.100.21 activate + advertise-all-vni + exit-address-family +! +router bgp 65000 vrf r3-vrf-102 + bgp router-id 192.168.100.61 + bgp log-neighbor-changes + no bgp network import-check + address-family ipv4 unicast + network 192.168.102.102/32 + exit-address-family + address-family ipv6 unicast + network fd00:102::1/128 + exit-address-family + address-family l2vpn evpn + rd 65000:302 + route-target both 65:101 + advertise ipv4 unicast + advertise ipv6 unicast + exit-address-family + ! + + diff --git a/tests/topotests/bgp_evpn_rt5/r3/zebra.conf b/tests/topotests/bgp_evpn_rt5/r3/zebra.conf deleted file mode 100644 index 3ab51423d9..0000000000 --- a/tests/topotests/bgp_evpn_rt5/r3/zebra.conf +++ /dev/null @@ -1,13 +0,0 @@ -vrf r3-vrf-102 - vni 102 - exit-vrf -! -interface r3-eth0 - ip address 192.168.100.61/24 -! -interface loop102 vrf r3-vrf-102 - ip address 192.168.102.61/32 - ipv6 address fd00:6::1/128 -! - - diff --git a/tests/topotests/bgp_evpn_rt5/test_bgp_evpn.py b/tests/topotests/bgp_evpn_rt5/test_bgp_evpn.py index 8570f4f8a1..2b8355af09 100644 --- a/tests/topotests/bgp_evpn_rt5/test_bgp_evpn.py +++ b/tests/topotests/bgp_evpn_rt5/test_bgp_evpn.py @@ -159,19 +159,13 @@ def setup_module(mod): tgen.net["r1"].cmd_raises("ip -n r1-vrf-101 link set bridge-101 up") tgen.net["r1"].cmd_raises("ip -n r1-vrf-101 link set vxlan-101 up") - for rname, router in router_list.items(): + for rname, router in tgen.routers().items(): + logger.info("Loading router %s" % rname) if rname == "r1": router.use_netns_vrf() - router.load_config( - TopoRouter.RD_ZEBRA, os.path.join(CWD, "{}/zebra.conf".format(rname)) - ) + router.load_frr_config(os.path.join(CWD, "{}/frr.conf".format(rname))) else: - router.load_config( - TopoRouter.RD_ZEBRA, os.path.join(CWD, "{}/zebra.conf".format(rname)) - ) - router.load_config( - TopoRouter.RD_BGP, os.path.join(CWD, "{}/bgpd.conf".format(rname)) - ) + router.load_frr_config(os.path.join(CWD, "{}/frr.conf".format(rname))) # Initialize all routers. tgen.start_router()