summaryrefslogtreecommitdiff
path: root/tests
AgeCommit message (Collapse)Author
2019-04-09Merge pull request #3779 from opensourcerouting/fix-mpls-label-topotestsQuentin Young
tests: Remove some inconsistent local labels in check in test_ldp_vpls_topo1
2019-04-04tests: test_ldp_vpls_topo1 Remove some inconsistent labels in checkMartin Winter
Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
2019-04-04Merge pull request #3899 from ton31337/fix/remove_private_as_with_local_asLou Berger
bgpd: Remove private AS numbers if local-as is defined
2019-04-03lib: remove event_counter.[ch]Quentin Young
goodbye spooky code Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
2019-03-28Merge pull request #4015 from opensourcerouting/topotests-fixesMark Stapp
topotests: fix missing log file and duplicated output folder
2019-03-27topotests: Add a bit more useful debugging to ldp-vpls-topo1Donald Sharp
When something goes wrong with this test, having these turned on will help us debug zebra processing a bit better in the future without having to modify anything else. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2019-03-26bgpd: Remove private AS numbers if local-as is definedDonatas Abraitis
When using remove-private-AS together with local-as aspath_remove_private_asns() is called before bgp_packet_attribute(). In this case, private AS will always appear in front of change_local_as. Signed-off-by: Donatas Abraitis <donatas.abraitis@gmail.com>
2019-03-25topotests/lib: fix router specific log outputRafael Zalamena
Change the router log output to the previous folder so it doesn't get erased when starting the old API (unbreaks command/output logging on Topogen). Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
2019-03-25topotests/lib: fallback topology logdir if none was configuredRafael Zalamena
`param.get` always evaluates the second argument and it was causing two log directories being created for topologies using Topogen. Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
2019-03-20topotests: pim-basic: fix some rough edgesRafael Zalamena
Move daemon configuration to appropriated files and use `json_cmp` to assert the values we expect. Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
2019-03-20Add code to test some very basic pim functionalityDonald Sharp
Add code to send a S,G stream and make sure the RP see's it. Add code to send a *,G report and make sure the RP see's it. This is just some *very* basic functionality testing to ensure that we don't break anything basic. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2019-03-19tests: point topotests docker img to new locationQuentin Young
The topotests docker image has moved from frrouting/frr to frrouting/topotests. Update accordingly. Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
2019-03-15Merge pull request #3920 from AkhileshSamineni/show_bgp_ipv6_summary_fix_masterDonald Sharp
bgpd: Incorrect number of peers count in "show bgp ipv6 summary" output
2019-03-11topotests: add new bfd topology with IPv6Rafael Zalamena
New BFD topology using IPv6 and multi hop peer to cover more daemon features. This topology also tests BFD integration with BGP, OSPF and OSPF6. Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
2019-03-07bgpd: Incorrect number of peers count in "show bgp ipv6 summary outputAkhilesh Samineni
The "show bgp ipv6 summary" output displays incorrect number of peers count. sonic# show bgp ipv6 summary IPv6 Unicast Summary: BGP router identifier 10.1.0.1, local AS number 65100 vrf-id 0 BGP table version 0 RIB entries 0, using 0 bytes of memory Peers 5, using 103 KiB of memory Peer groups 1, using 64 bytes of memory Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd 2003::1 4 65099 0 0 0 0 0 never Active 2088::1 4 65100 0 0 0 0 0 never Active 3021::2 4 65100 0 0 0 0 0 never Active Total number of neighbors 3 sonic# In the above output, the peers count displays as 5 but the actual peer count is 3, i.e.. 3 neighbors are activated in ipv6 unicast address family. Displayed peer count (5) is the number of the neighbors activated in a BGP instance. Fix : Now the peers count displays the number of neighbors activated per afi/safi. After Fix: sonic# show bgp ipv6 summary IPv6 Unicast Summary: BGP router identifier 10.1.0.1, local AS number 65100 vrf-id 0 BGP table version 0 RIB entries 0, using 0 bytes of memory Peers 3, using 62 KiB of memory Peer groups 1, using 64 bytes of memory Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd 2003::1 4 65099 0 0 0 0 0 never Active 2088::1 4 65100 0 0 0 0 0 never Active 3021::2 4 65100 0 0 0 0 0 never Active Total number of neighbors 3 sonic# Signed-off-by: Akhilesh Samineni <akhilesh.samineni@broadcom.com>
2019-02-25*: use array_size instead of raw divisionQuentin Young
Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
2019-02-25*: return bool from boolean functionsQuentin Young
Not 1 or 0. Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
2019-02-25*: Rename backet to bucketTim Bray
Presume typo from original author Signed-off-by: Tim Bray <tim@kooky.org>
2019-02-18Merge pull request #3777 from donaldsharp/topotest_all_routesDavid Lamparter
topotests: Add code to ensure routes are as expected
2019-02-13Merge pull request #3622 from mjstapp/fix_cpp_compileDonald Sharp
libs, daemons: changes to permit c++ compilation
2019-02-13Merge pull request #3753 from LabNConsulting/working/master/topotest-l3mdev=1Donald Sharp
topotest: bgp_l3vpn_to_bgp_vrf: fix setting of TCP l3mdev
2019-02-11tests: add C++ header compatibility smoke testDavid Lamparter
Compiling an empty C file with most headers included and -Wc++-compat gives us a build error if we introduce some stupid C++-incompatible change. While this won't catch everything, it's a good start. Signed-off-by: David Lamparter <equinox@diac24.net>
2019-02-11topotests: Add code to ensure routes are as expectedDonald Sharp
This code just ensures that v4 and v6 routes are as expected in the rib. While this test addition is not that complicated it would have caught some issues while I was attempting to handle the switchover to a different style of rib processing. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2019-02-11eigrpd: Do not redelete the eigrp interface data structureDonald Sharp
On interface down do not delete the eigrp interface data structure. Ensure that the address that we have setup the eigrp data structure ontop of is what we are deleting. Additionally add a test to show that this is no-longer crashing eigrp. Future commits will further modify this test to actually ensure that the eigrp topo is updated correctly and the rib has the correct data. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2019-02-10zebra: Update zserv debug messages to give a bit more useful infoDonald Sharp
When we schedule a packet for future handling, list the packet type so that we can see what we are getting with debugs. Also note which client and how many packets we received from that client. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2019-02-07bgp_l3vpn_to_bgp_vrf: verify TCP l3mdev set as expectedLou Berger
Signed-off-by: Lou Berger <lberger@labn.net>
2019-02-07bgp_l3vpn_to_bgp_vrf: fix setting of TCP l3mdevLou Berger
Signed-off-by: Lou Berger <lberger@labn.net>
2019-02-05doc: move topotests docs to developers guideQuentin Young
Signed-off-by: Quentin Young <qlyoung@cumulusnetworks.com>
2019-02-03eigrpd: Modify code to pass down metric to zebraDonald Sharp
Modify EIGRP code to pass its used metric down to zebra. Additionally update topotests to pass with these changes. Fixes: #3703 Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2019-01-30build: fix a whole bunch of *FLAGSDavid Lamparter
- some target_CFLAGS that needed to include AM_CFLAGS didn't do so - libyang/sysrepo/sqlite3/confd CFLAGS + LIBS weren't used at all - consistently use $(FOO_CFLAGS) instead of @FOO_CFLAGS@ - 2 dependencies were missing for clippy Signed-off-by: David Lamparter <equinox@diac24.net>
2019-01-25bgpd: interface based peers should automatically override it's peer groupDonald Sharp
When a interface based peer is setup and if it is part of a peer group we should ignore this and just use the PEER_FLAG_CAPABILITY_ENHE no matter what. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2019-01-24Treewide: use ANSI function definitionsRuben Kerkhof
Signed-off-by: Ruben Kerkhof <ruben@rubenkerkhof.com>
2019-01-22topotests: Modify bgp convergence to be more than 120 secondsDonald Sharp
Waiting 10 seconds for bgp convergence makes no sense, especially if the test system is under load and a node is started up before the node it is connecting to is up. We should wait for the full default of 120 seconds, plus a little time to ensure nothing is screwed up too much. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2019-01-07bgp_rfapi_basic_sanity_config2: delayed timeouts not supported without VNC attrLou Berger
Signed-off-by: Lou Berger <lberger@labn.net>
2019-01-07bgp_rfapi_basic_sanity: delayed timeouts not supported without VNC attrLou Berger
Signed-off-by: Lou Berger <lberger@labn.net>
2018-12-20Merge pull request #3499 from donaldsharp/topotest_inheritanceRafael Zalamena
Topotest inheritance
2018-12-18Merge pull request #3279 from adharkar/frr-default_localMartin Winter
bgpd: Display default local preference and local AS for BGP show commands
2018-12-17topotests: add FreeBSDRouter abstractionDonald Sharp
Start the addition of FreeBSDRouter class that inherits from class Router. At this point we do not do a whole lot. We just come up on FreeBSD, lots of stuff that still needs to be fixed. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2018-12-17topotests: Move linux specific config into Linux config sectionDonald Sharp
As part of the class rework, move the linux specific config into the LinuxRouter.config section instead of being in the Router class. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2018-12-17topotests: Make 'LinuxRouter' a class of 'Router'Donald Sharp
Modify the LinuxRouter code such that it inherits from the Router class. This is setup work for (a) pulling out linux specific config from class Router and (b) creating a FreebsdRouter that inherits from class 'Router'. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2018-12-16topotests: Allow sharpd to be used in topotestsDonald Sharp
The sharp daemon did not have any ability to be used in topotests. Add some code to allow this. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2018-12-16topotests: module_present should return a True/FalseDonald Sharp
The recent change to module_present accidently didn't return anything. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2018-12-15topotests: Start abstraction of module_present for other platformsDonald Sharp
Start abstraction of the module_present into module_present_linux and freebsd To allow for multiple platforms that the topotests can be run on. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2018-12-15topotests: Cleanup diagnose_env to allow thought about multi-platformsDonald Sharp
Start the cleanup of diagnose_env to allow the running of topotests on platforms besides linux. So we split up diagnose_env into linux and freebsd variants. At this point in time freebsd doesn't have any special code. To be determined in the future. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2018-12-12topotests: Add a basic route leak vrf testDonald Sharp
A recent commit broke this functionality, so add a very basic route leak vrf test. router bgp 99 vrf DONNA address-family ipv4 uni redistribute connected import vrf EVA router bgp 99 vrf EVA address-family ipv4 uni redistribute connected import vrf DONNA Routes should be leaked between the two vrf's. Ensure that it does. Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2018-12-10tests/topotests: Pull docker image from registryChristian Franke
We have set up automated builds for the topotest images at dockerhub. Therefore, people don't need to perform a local build to run the topotests on docker, but can use the image built by dockerhub. As there is not much benefit in building locally, but the disadvantage of weird errors if using an outdated image, change the topotests target to always pull the most recent image from dockerhub. Add an environment variable to disable this, e.g. for local development. Signed-off-by: Christian Franke <chris@opensourcerouting.org>
2018-12-09lib, tests: add support for keyless YANG listsRenato Westphal
YANG allows lists without keys for operational data, in which case the list elements are uniquely identified using a positional index (starting from one). This commit does the following: * Remove the need to implement the 'get_keys' and 'lookup_entry' callbacks for keyless lists. * Extend nb_oper_data_iter_list() so that it special-cases keyless lists appropriately. Since both the CLI and the sysrepo plugin use nb_oper_data_iterate() to fetch operational data, both these northbound clients automatically gain the ability to understand keyless lists without additional changes. * Extend the confd plugin to special-case keyless lists as well. This was a bit painful to implement given ConfD's clumsy API, but keyless lists should work ok now. * Update the "test_oper_data" unit test to test keyless YANG lists in addition to regular lists. Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2018-12-09Merge pull request #3452 from opensourcerouting/reprobuild-masterDonald Sharp
[master] build reproducibility
2018-12-09Merge pull request #3442 from opensourcerouting/confirmed-commitsDonald Sharp
lib: add support for confirmed commits
2018-12-08Merge pull request #3420 from LabNConsulting/working/master/topotest/ce4-in-vrfDonald Sharp
Topotest: put ce4 into vrf (no default), plus a couple of lib changes