summaryrefslogtreecommitdiff
path: root/tests
AgeCommit message (Collapse)Author
2021-11-25Merge pull request #10115 from donaldsharp/bgp_route_server_convergenceDonatas Abraitis
tests: Add aggressive timers to the new route server client test
2021-11-24Merge pull request #10121 from ton31337/feature/match_ipv6_nexthop_prefixlistIgor Ryzhov
bgpd: Add an ability to match ipv6 next-hop by prefix-list
2021-11-24tests: Check if `match ipv6 next-hop prefix-list` command worksDonatas Abraitis
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2021-11-24tests: Remove create_router_ospf6Donald Sharp
This function is never used, remove. Developer can use create_router_ospf instead Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-11-24tests: Do not put area under `router ospf6`Donald Sharp
The interface area command is deprecated under router ospf6 and should be on the individual interface. Let's modify the tests to not actually put the interface foo area 0.0.0.0 command under the router node. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-11-24tests: Add clear event to creation of router for v4 and v6 ospfDonald Sharp
When using build_config_from_json there exists a timing window where neighbors can come up before the router-id is applied. As a precaution, quickly clear the neighbors to ensure that we get neighbors with the expected router-id. This can especially happen under high system load. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-11-24tests: Move area configuration to interface for ospv3Donald Sharp
The test_ospf_dual_stack test had area configuration under the `router ospf6` nodes. This is getting lots of warning messages from the cli. Let's remove this. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-11-24tests: Don't double create ospfv3 configDonald Sharp
When testers use the build_config_from_json function the create_router_ospf function is double creating the ospfv3 cli to be passed in. This is because the create_router_ospf loops over both v2 and v3 and then create_router_ospf6 re-adds v3. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-11-24tests: Do not pick an ip address that overlaps with ourselvesDonald Sharp
The ospf_basic_functionality/test_ospf_lan.py creates a ethernet segment and attaches 4 routers to it and assigns ip addresses in a /24. As one of the tests it picks a new address for r0 which coincides with a ip address on r3. Then the test immediatly checks for other data. The problem is of course that if a test is `slow` enough hello's will start to be ignored from r3 to r0 and the neighbor relationships will come down. Choose an ip address that doesn't cause this issue. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-11-23tests: Add aggressive timers to the new route server client testDonald Sharp
The new bgp_route_server_client test is not setting the timers for peers to be fast enough to have the ability to converge in under 60 seconds if a packet is dropped/missed at startup. Make the test have the ability to converge under load Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-11-23tests: Test if `match ipv6 next-hop` worksDonatas Abraitis
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2021-11-22Merge pull request #10057 from ton31337/fix/we_shouldn_send_LLA_for_RSDonald Sharp
bgpd: Do not send LLA for route-server-client peers
2021-11-20tests: Fix tests using exabgp to explicitly call out which python to useDonald Sharp
There exist systems that do not explicity have a python soft-link on their system. Let's explicity call out which python we want to be using with exabgp. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-11-17Merge pull request #10087 from donaldsharp/core_file_restoreDavid Lamparter
2021-11-17Merge pull request #9852 from opensourcerouting/pim-nht-reworkDonald Sharp
pimd: make PIM NHT less weird
2021-11-17tests: Re-add the ability to generate core files with topotestsDonald Sharp
Somewhere along the line core-files stopped being generated with the running of the topotests. With this change we now see this: sharpd@eva /t/topotests> find . -name '*.dmp' -print ./ospfv3_basic_functionality.test_ospfv3_asbr_summary_topo1/r0/ospf6d_core-sig_6-pid_430478.dmp sharpd@eva /t/topotests> sudo gdb /usr/lib/frr/ospf6d ./ospfv3_basic_functionality.test_ospfv3_asbr_summary_topo1/r0/ospf6d_core-sig_6-pid_430478.dmp GNU gdb (Debian 10.1-1.7) 10.1.90.20210103-git Copyright (C) 2021 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-linux-gnu". Type "show configuration" for configuration details. For bug reporting instructions, please see: <https://www.gnu.org/software/gdb/bugs/>. Find the GDB manual and other documentation resources online at: <http://www.gnu.org/software/gdb/documentation/>. For help, type "help". Type "apropos word" to search for commands related to "word"... Reading symbols from /usr/lib/frr/ospf6d... [New LWP 430478] [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". Core was generated by `/usr/lib/frr/ospf6d --log file:ospf6d.log --log-level debug -d'. Program terminated with signal SIGABRT, Aborted. 50 ../sysdeps/unix/sysv/linux/raise.c: No such file or directory. (gdb) bt (gdb) Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-11-17tests: add one more BSR check to pim_bsmp_01David Lamparter
This is implicitly checked by the "verify mroute" below, but it's much more helpful to explicitly check in advance. Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2021-11-16Merge pull request #9944 from ARShreenidhi/tcp_mss_testcaseRuss White
tests: testcase to configure and verity tcp mss with vrf
2021-11-15tests: Check if we are sending IPV6 GUA for route-server-client peersDonatas Abraitis
Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2021-11-15Merge pull request #10046 from donaldsharp/bgp_instance_delDavid Lamparter
2021-11-13Merge pull request #10032 from opensourcerouting/build-fix-20211111Donald Sharp
build: assorted build system improvements, 2021-11 edition
2021-11-12tests: Ensure BGP has had time to import routes through the vpnDonald Sharp
Currently I get bgp_instance_del-test as well as bgp_l3vpn_to_bgp_vrf failures every ~3-4 runs when under a 40 parallel run with micronet. Examination of the failure and passing cases always leads to the failures showing convergence of bgp bestpath immediately after the show commands to ensure that the routes are there. Modify the code to look for the fact that the vrf has converged from routes being passed around across vrf's and ensure that bestpath has run on them. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-11-12bgpd: Add vrf information to best path debuggingDonald Sharp
When debugging issues for routes in multiple vrf's. It would be extremely useful if the debug output had which vrf we are acting on. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-11-11*: Convert quagga_signal_X to frr_signal_XDonald Sharp
Naming functions/data structures more appropriately for the project we are actually in. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-11-11build: break up tests/subdir.amDavid Lamparter
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2021-11-11build: refactor `tests/subdir.am`David Lamparter
... to put related stuff next to each other. Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2021-11-11tests: fix frr-format warnings in printfrr testDavid Lamparter
Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2021-11-11build: adjust silent make rules in testsDavid Lamparter
Purely aesthetic change to make these rules not stick out like a sore thumb. Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2021-11-10Merge pull request #9988 from idryzhov/ospf-gr-brokenDonald Sharp
ospfd: remove commands for broken GR helper mode
2021-11-10ospfd: remove commands for broken GR helper modeIgor Ryzhov
Issue #9983 explains what is wrong with the GR helper mode. To unblock the CI that fails almost all the time on the ospf_gr_topo1 test, remove the commands and disable the test. Also add a reminder to completely remove the helper mode if no one fixes the code in a month. Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2021-11-10Merge pull request #9700 from mjstapp/add_json_det_attrsDonatas Abraitis
bgpd: Add 'show bgp <afi> <safi> json detail' header data
2021-11-09Merge pull request #9996 from opensourcerouting/resolver-fix-threadsIgor Ryzhov
lib: fix `struct thread **` misuse in c-ares resolver bindings
2021-11-08Merge pull request #9924 from idryzhov/isis-nb-improvementsRuss White
various isisd northbound fixes
2021-11-08Merge pull request #9995 from donaldsharp/bfd_ospf_topo1_convvergenceRuss White
tests: bfd_ospf_topo1 expects unreasonable convergence times under load
2021-11-08tests: add c-ares "exercise" toolDavid Lamparter
This can't really be run as part of CI, it's intended as a helper instead, to use manually after poking around in the c-ares binding code. Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2021-11-08tests: allow common_cli.c with logging enabledDavid Lamparter
common_cli.c disables logging by default so stdio is usable as vty without log messages getting strewn inbetween. This the right thing for most tests, but not all; sometimes we do want log messages. Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
2021-11-08tests: fix bgp_community_change_updateIgor Ryzhov
949aaea5 removed debugs from all topotests, but this test relies on the debug logs so it constantly fails now. Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2021-11-07tests: bfd_ospf_topo1 expects unreasonable convergence times under loadDonald Sharp
When our CI test system is under high load, expecting bfd to converge in under 2 seconds is not going to happen. Modify the test suites to just ensure that things reconvderge. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-11-07tests: Remove debugs from topotestsDonald Sharp
Debugs take up a significant amount of cpu time as well as increased disk space for storage of results. Reduce test over head by removing the debugs, Hopefully this helps alleviate some of the overloading that we are seeing in our CI systems. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-11-06Merge pull request #9958 from donaldsharp/all_protocol_nhg_replaceDonatas Abraitis
tests: Fix route replace test in all_protocol_startup
2021-11-05Merge pull request #9974 from donaldsharp/ldp_vpls_topo1_waitJafar Al-Gharaibeh
tests: Ensure ospf has reconverged before continuing
2021-11-05tests: pim_basic needs to wait for event to happen under loadDonald Sharp
The test system under load looks for upstream state only 1 time immediately after sending 2 streams of S,G data flowing. Give the system some time to process this and ensure that it actually shows up in a small amount of time. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-11-05tests: Ensure ospf has reconverged before continuingDonald Sharp
The test_ldp_pseudowires_after_link_down test shuts a link down and was blindly waiting 5 seconds before just assuming the test system was in a sane state. Remove the sleep(5) and actually look for the changed state for the route 2.2.2.2 that the psueudowire actually depends on. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-11-05tests: test_ospf_topo1.py ensure rib has time to convergeDonald Sharp
The test does this: a) shut link down b) test for ospf convergence c) ensure the route is installed When under a heavily loaded system c) is not guaranteed to happen quickly. Give the system 10 extra seconds to ensure it happens. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-11-04tests: Fix route replace test in all_protocol_startupDonald Sharp
The route replace test was doing this seq of events: a) Create nhg b) Install route w/ sharpd c) Ensure it worked d) Modify nhg d) Ensure the update group replace worked The problem is that the sharp code is doing this: /* Only send via ID if nhgroup has been successfully installed */ if (nhgid && sharp_nhgroup_id_is_installed(nhgid)) { SET_FLAG(api.message, ZAPI_MESSAGE_NHG); api.nhgid = nhgid; } else { for (ALL_NEXTHOPS_PTR(nhg, nh)) { api_nh = &api.nexthops[i]; zapi_nexthop_from_nexthop(api_nh, nh); i++; } api.nexthop_num = i; } The created nhg has not been successfully installed( or at least sharpd has not read the results yet) when it gets the command to install the routes. As such it passes down the individual nexthops instead. The route replace is never going to work. Modify the code to add a bit of sleep to allow sharpd to get notified when the system is under load. At this point there is no way to query sharpd for whether or not it thinks it's nhg is installed properly or not. This test is failing all over the place for a bunch of people let's get this fixed so people can get running Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-11-03tests: testcase to configure verity tcp mss in vrfARShreenidhi
Signed-off-by: ARShreenidhi <rshreenidhi@vmware.com>
2021-11-01tests: All_protocol_startup sporadic failureDonald Sharp
the test_nexthop_groups function is failing occassionally because the test executes 4 in succession sharp install routes commands. When I dumped the rib on a failed test run there were only 2 of the 4 routes in the rib and the two that were in were the last 2 installed. The sharp daemon setups a event process where it installs routes `automatically`. If the previous run is not finished entering a new command to install the routes will mess up the last one from ever happening. It is assumed that the user doesn't do stupid stuff here. In this case I am just adding a small sleep between each installation to just let the test proceed. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-11-01Merge pull request #9928 from donaldsharp/isis_topo1_fixIgor Ryzhov
tests: isis_topo1 needs to wait for results under load
2021-10-31tests: isis_topo1 needs to wait for results under loadDonald Sharp
the isis_topo1 test has two functions where immediately after the test ensures that the routes are in isis tests to see if they are in the rib. Under system load I am seeing this test failing because the routes are still queued. Modify the zebra check for the isis routes to look for the proper results for 10 seconds. Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2021-10-31Merge pull request #9916 from donaldsharp/run_and_expect_failureDonatas Abraitis
tests: Fix `check_ping` function in test_bgp_srv6l3vpn_to_bgp_vrf.py