Commit Graph

903 Commits

Author SHA1 Message Date
Renato Westphal
6a95513d54 tests: extend the isisd SR topotest to test Anycast-SIDs as well
Add the following Anycast-SIDs on routers rt4 and rt5:
* segment-routing prefix 10.10.10.10/32 index 100 no-php-flag n-flag-clear
* segment-routing prefix 2001:db8:1000::10/128 index 101 no-php-flag n-flag-clear

The updated JSON data will then check whether the Anycast-SIDs are
being processed as expected (e.g. rt1 should use ECMP to rt2 and rt3,
rt2 should use rt4 only as it's directly connected, etc).

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2020-10-23 10:31:39 -03:00
Renato Westphal
4c75f7c773 isisd: fix the TI-LFA repair paths to preserve the original Prefix-SID
When computing backup nexthops for routes that contain a Prefix-SID,
the original Prefix-SID label should be present at the end of
backup label stacks (after the repair labels). This commit fixes
that oversight in the original TI-LFA code. The SPF unit tests and
TI-LFA topotes were also updated accordingly.

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2020-10-23 10:31:39 -03:00
Renato Westphal
d4fcd8bd82 isisd: create routes for local destinations
This is preparatory change for the upcoming SR Prefix-SID
refactoring.
Since Prefix-SID information will be stored inside IS-IS routes
(instead of being maintained separately), it will be necessary to
have local routes in order to store local Prefix-SID information.

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2020-10-23 10:30:36 -03:00
Donatas Abraitis
90a65457d1
Merge pull request #7345 from opensourcerouting/bgp-aggr-suppress
bgpd: aggregate-address suppress-map
2020-10-23 15:02:57 +03:00
Rafael Zalamena
6ba6de7e17 bgpd,topotests: log route suppression messages
To see the messages activate the BGP debug: `debug bgp updates`.

Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
2020-10-22 13:52:06 -03:00
Rafael Zalamena
e84dfa4c2e topotests: test aggregate address suppress map
Add test for new aggregate address option: test aggregate address option
without converged routes, then test again with a different route map
with converged routes.

Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
2020-10-21 21:50:06 -03:00
Martin Winter
dad65cbe73
Merge pull request #7276 from donaldsharp/speedup_isis_topotests
tests: add `lsp-gen-interval 2` to isis configuration
2020-10-21 13:30:51 +02:00
Renato Westphal
955c9b438e tests: fix spurious failures in the TI-LFA topotest
Skip comparing neighbor-extended-circuit-id in yang output. They
are not consistent.

This is similar to commit ecc11c93b7 which fixed the same
problem in the IS-IS SR topotest.

Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2020-10-16 20:40:11 -03:00
Renato Westphal
9687c500c6 tests: add IS-IS TI-LFA topotest
Signed-off-by: Renato Westphal <renato@opensourcerouting.org>
2020-10-14 16:27:37 -03:00
Donald Sharp
6431621e4e
Merge pull request #7180 from kuldeepkash/bgp-communities
tests: Add bgp_communities_topo1 test suite
2020-10-14 09:14:10 -04:00
Kuldeep Kashyap
c66ca86168 tests: Enable evpn_type5_test_topo1 suite to run in CI
1. Suite: evpn_type5_test_topo1 was added to pytest.ini during triaging phase as
there was bug: https://github.com/FRRouting/frr/issues/6867, which is fixed. Enabling
suite to be run in CI.

Signed-off-by: Kuldeep Kashyap <kashyapk@vmware.com>
2020-10-13 14:55:14 +00:00
Kuldeep Kashyap
1cba703357 tests: Add bgp_communities_topo1 test suite
1. Adding test to verify well known communities: no-export, local-AS, internet
2. Exection time is 90 sec

Signed-off-by: Kuldeep Kashyap <kashyapk@vmware.com>
2020-10-13 04:58:31 +00:00
Donald Sharp
9000da255f tests: add lsp-gen-interval 2 to isis configuration
Force faster generation of lsp's and also cause the
networks to converge faster.  All affected tests
run faster now.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
2020-10-10 09:44:30 -04:00
Quentin Young
f20093b5c3 tests: bgp_l3vpn_to_bgp_vrf test needed to correct order
The bgp_l3vpn_to_bgp_vrf test is looking for a prefix
on multiple routers that the ordered received is non-deterministic.
As such the regex's are failing occassionaly when the
route is received in an unexpected order.

One possible order:
(#89) scripts/check_routes.py:120 COMMAND:ce3:vtysh -c "show bgp ipv4 uni 6.0.1.0":2 available, best .*192.168.1.1.* Local.* 99.0.0.3 from 0.0.0.0 .99.0.0.3.* Origin IGP, metric 200, localpref 50, weight 32768, valid, sourced, local, best .Weight.* Community: 0:67.* Extended Community: RT:89:123.* Large Community: 12:34:56.* Local.* 192.168.1.1 from 192.168.1.1 .192.168.1.1.* Origin IGP, metric 98, localpref 123, valid, internal.* Community: 0:67.* Extended Community: RT:52:100 RT:89:123.* Large Community: 12:34:56:pass:Redundant route 1 details c:
COMMAND OUTPUT:BGP routing table entry for 6.0.1.0/24^M
Paths: (2 available, best #1, table default)^M
  Advertised to non peer-group peers:^M
  192.168.1.1^M
  Local^M
    99.0.0.3 from 0.0.0.0 (99.0.0.3)^M
      Origin IGP, metric 200, localpref 50, weight 32768, valid, sourced, local, best (Weight)^M
      Community: 0:67^M
      Extended Community: RT:89:123^M
      Large Community: 12:34:56^M
      Last update: Wed Oct  7 11:12:22 2020^M
  Local^M
    192.168.1.1 from 192.168.1.1 (192.168.1.1)^M
      Origin IGP, metric 98, localpref 123, valid, internal^M
      Community: 0:67^M
      Extended Community: RT:52:100 RT:89:123^M
      Large Community: 12:34:56^M
      Last update: Wed Oct  7 11:12:41 2020:
R:89   ce3    Redundant route 1 details c                              1    0

Second possible order:
(#89) scripts/check_routes.py:120 COMMAND:ce3:vtysh -c "show bgp ipv4 uni 6.0.1.0":2 available, best .*192.168.1.1.* Local.* 99.0.0.3 from 0.0.0.0 .99.0.0.3.* Origin IGP, metric 200, localpref 50, weight 32768, valid, sourced, local, best .Weight.* Community: 0:67.* Extended Community: RT:89:123.* Large Community: 12:34:56.* Local.* 192.168.1.1 from 192.168.1.1 .192.168.1.1.* Origin IGP, metric 98, localpref 123, valid, internal.* Community: 0:67.* Extended Community: RT:52:100 RT:89:123.* Large Community: 12:34:56:pass:Redundant route 1 details c:
COMMAND OUTPUT:BGP routing table entry for 6.0.1.0/24^M
Paths: (2 available, best #2, table default)^M
  Advertised to non peer-group peers:^M
  192.168.1.1^M
  Local^M
    192.168.1.1 from 192.168.1.1 (192.168.1.1)^M
      Origin IGP, metric 98, localpref 123, valid, internal^M
      Community: 0:67^M
      Extended Community: RT:52:100 RT:89:123^M
      Large Community: 12:34:56^M
      Last update: Wed Oct  7 11:14:45 2020^M
  Local^M
    99.0.0.3 from 0.0.0.0 (99.0.0.3)^M
      Origin IGP, metric 200, localpref 50, weight 32768, valid, sourced, local, best (Weight)^M
      Community: 0:67^M
      Extended Community: RT:89:123^M
      Large Community: 12:34:56^M
      Last update: Wed Oct  7 11:14:27 2020:
R:89   ce3    Redundant route 1 details c                              0    1

BGP displays the paths in the order received since it's just a linked list.
For this test modify/add the luCommands to track that we may
receive the paths in a non-deterministic order.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>
Signed-off-by: Quentin Young <qlyoung@nvidia.com>
2020-10-08 13:02:06 -04:00
whitespace
701a01920e *: reformat python files
We are now using black.

Signed-off-by: Quentin Young <qlyoung@nvidia.com>
2020-10-07 17:22:26 -04:00
Donatas Abraitis
64fe0feea3
Merge pull request #7239 from opensourcerouting/bgp-aggregate-med
bgpd: aggregate-address on matching MED only
2020-10-07 09:44:30 +03:00
Lou Berger
a69e5dd7ef tests: bgp_l3vpn_to_bgp_vrf - verify details of exported/imported routes
Signed-off-by: Lou Berger <lberger@labn.net>
2020-10-06 10:34:32 -04:00
Lou Berger
7946452bfc tests: bgp_l3vpn_to_bgp_vrf - change 1 route to have equal metrics
Signed-off-by: Lou Berger <lberger@labn.net>
2020-10-06 10:34:32 -04:00
Lou Berger
5df69602e7 tests: bgp_l3vpn_to_bgp_vrf - add bestpath checks
Signed-off-by: Lou Berger <lberger@labn.net>
2020-10-06 10:34:32 -04:00
Lou Berger
b4bfe0aa47 tests: lib/bgprib.py - add bestpath checks and logging to lu log file
Signed-off-by: Lou Berger <lberger@labn.net>
2020-10-06 10:34:32 -04:00
Lou Berger
801f483b4e tests: bgp_l3vpn_to_bgp_vrf - add redundant ce routes
Signed-off-by: Lou Berger <lberger@labn.net>
2020-10-06 10:34:32 -04:00
Rafael Zalamena
d3c9581960 topotests: test aggregate-address matching-MED-only
Add a new topology test for `aggregate-address` to test
`matching-MED-only` and its combination with `summary-only`.

Signed-off-by: Rafael Zalamena <rzalamena@opensourcerouting.org>
2020-10-06 06:42:17 -03:00
Martin Winter
ecc11c93b7
tests: Skip comparing neighbor-extended-circuit-id in yang output. They are not consistent
Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
2020-10-02 22:07:25 +02:00
Igor Ryzhov
a09775ec9b tests: don't compare internal vrfId in topotests
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2020-10-02 14:45:51 +03:00
Igor Ryzhov
0224261ee4 tests: don't compare internal vrfId in topotests
Signed-off-by: Igor Ryzhov <iryzhov@nfware.com>
2020-10-02 11:24:16 +03:00
Quentin Young
46d80d4532
Merge pull request #7226 from opensourcerouting/topotestfixes
tests: Topotest fixes to skip comparing InterfaceIndex and Internal status
2020-10-01 19:17:34 -04:00
Martin Winter
71edf4dd17
Merge pull request #7224 from mjstapp/fix_topo_ptyest
tests: fix typos in zebra_rib and _netlink
2020-10-01 23:01:02 +02:00
Martin Winter
737a7c578f
tests: Topotest fixes to skip comparing InterfaceIndex and Internal status in json_cmp
Signed-off-by: Martin Winter <mwinter@opensourcerouting.org>
2020-10-01 21:33:55 +02:00
Mark Stapp
5094b56dc5 tests: fix typos in zebra_rib and _netlink
Fix a couple of typos in the zebra_rib and _netlink topotest
suites.

Signed-off-by: Mark Stapp <mjs@voltanet.io>
2020-10-01 14:17:06 -04:00
Mark Stapp
207c9fb4a1 tests: fix regex in all_proto test
Make sure the all-protocols test_isis_interfaces testcase uses
a regex substitution that includes all the hex characters.

Signed-off-by: Mark Stapp <mjs@voltanet.io>
2020-10-01 10:21:03 -04:00
Donald Sharp
b0b19fd0ec
Merge pull request #7201 from mjstapp/fix_topo_ubu20
tests: pim-basic mcast scripts fixes for python3
2020-09-29 18:14:30 -04:00
Mark Stapp
f635350e8e tests: pim-basic mcast scripts fixes for python3
The pim-basic suite uses some private python scripts to
send and receive mcast traffic: revise them to support
both py2 and py3.

Signed-off-by: Mark Stapp <mjs@voltanet.io>
2020-09-29 15:03:43 -04:00
Donald Sharp
e587774b74
Merge pull request #7039 from opensourcerouting/bgp-norib-runtime
bgpd: set/unset no-rib option at runtime
2020-09-29 13:42:02 -04:00
Donald Sharp
97e551e300
Merge pull request #7177 from mjstapp/fix_topo_tab_open
tests: python3 compat fixes for topotests: tabs and misc api
2020-09-29 10:06:48 -04:00
Stephen Worley
8f4d7212f5 tests: add topotest for NHG Proto APIs
Add a topotest for basic NHG Proto Add/Del/Replace.

Signed-off-by: Stephen Worley <sworley@cumulusnetworks.com>
2020-09-28 12:41:00 -04:00
Mark Stapp
1e5b2db644 tests: avoid python2 regex syntax
Update a few regexs to avoid python2-specific syntax

Signed-off-by: Mark Stapp <mjs@voltanet.io>
2020-09-26 15:40:00 -04:00
Mark Stapp
45c3045aef tests: report uname info once per test
Report 'uname' info once per test, not once per
configured router in each test.

Signed-off-by: Mark Stapp <mjs@voltanet.io>
2020-09-26 15:40:00 -04:00
Mark Stapp
61196140a6 tests: improve unicode handling
Support more of the string/unicode interactions in various
topotests.

Signed-off-by: Mark Stapp <mjs@voltanet.io>
2020-09-26 15:40:00 -04:00
Mark Stapp
11761ab0f4 tests: python3 compat fixes for topotests: tabs and misc
Use only spaces in python files; no tabs; also a couple of small
api fixes.

Signed-off-by: Mark Stapp <mjs@voltanet.io>
2020-09-26 15:40:00 -04:00
Mark Stapp
ccda0eadac
Merge pull request #7155 from donaldsharp/TRAP
Offload/Trap
2020-09-23 16:06:37 -04:00
Stephen Worley
57d7d1948e
Merge pull request #7160 from mjstapp/fix_topo_daemons_list
tests: fix bug in handling of daemons to start
2020-09-23 14:47:13 -04:00
Donatas Abraitis
64b1483ccb
Merge pull request #7154 from donaldsharp/frr_topotests
tests: Our tests are for FRR
2020-09-23 17:33:08 +03:00
Mark Stapp
bb91e9c03b tests: fix bug in handling of daemons to start
Ensure the list of daemons to start is either the one specified
by a caller or the default one from the router configuration.

Signed-off-by: Mark Stapp <mjs@voltanet.io>
2020-09-23 08:48:25 -04:00
Donald Sharp
5a3cf85391 lib, zebra: Add ability to read kernel notice of TRAP/OFFLOAD
The linux kernel is getting RTM_F_TRAP and RTM_F_OFFLOAD for
kernel routes that have an underlying asic offload.  Write the
code to receive these notifications from the linux kernel and
to store that data for display about the routes.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
2020-09-22 15:57:43 -04:00
Donald Sharp
e2dcd0c2c5
Merge pull request #7132 from volta-networks/fix_ldp_sync_cmds
Fix ldp sync cmds
2020-09-22 14:20:21 -04:00
Donald Sharp
622c4996ef tests: Our tests are for FRR
These tests at this point only work for FRR.  Let's cut to the chase
and admit it.

Signed-off-by: Donald Sharp <sharpd@nvidia.com>`
2020-09-22 10:11:58 -04:00
lynne
e82329ef20 ldpd: update topo tests for new show isis ldp-sync command output
Signed-off-by: Lynne Morrison <lynne@voltanet.io>
2020-09-21 12:07:13 -04:00
vivek
211a9d4b97 topotests: Add test for BGP graceful shutdown
Signed-off-by: Vivek Venkatraman <vivek@nvidia.com>
2020-09-20 20:19:51 -07:00
Donald Sharp
0b8125588a
Merge pull request #7069 from opensourcerouting/fix-set-metric
lib: fix the "set metric" route-map command
2020-09-19 08:06:36 -04:00
Donald Sharp
dfc51e66bf
Merge pull request #6814 from gpnaveen/ospf_basic_functionality
tests: ospf basic functionality topojson testcases.
2020-09-18 21:20:04 -04:00