From 9682337c3f13f703511bf093123b7ac1d45f48df Mon Sep 17 00:00:00 2001 From: Christian Poessinger Date: Mon, 24 May 2021 18:41:12 +0200 Subject: isis: T3576: support metric and route-map when originating a default route --- data/templates/frr/isis.frr.tmpl | 9 ++-- .../include/isis/default-information-level.xml.i | 32 ++++++++++++++ interface-definitions/include/isis/metric.xml.i | 14 ++++++ .../include/isis/protocol-common-config.xml.i | 51 ++-------------------- 4 files changed, 53 insertions(+), 53 deletions(-) create mode 100644 interface-definitions/include/isis/default-information-level.xml.i create mode 100644 interface-definitions/include/isis/metric.xml.i diff --git a/data/templates/frr/isis.frr.tmpl b/data/templates/frr/isis.frr.tmpl index 433f10892..58c44e2d4 100644 --- a/data/templates/frr/isis.frr.tmpl +++ b/data/templates/frr/isis.frr.tmpl @@ -101,11 +101,10 @@ router isis VyOS {{ 'vrf ' + vrf if vrf is defined and vrf is not none }} area-password clear {{ area_password.plaintext_password }} {% endif %} {% if default_information is defined and default_information.originate is defined and default_information.originate is not none %} -{% for level in default_information.originate.ipv4 if default_information.originate.ipv4 is defined %} - default-information originate ipv4 {{ level | replace('_', '-') }} -{% endfor %} -{% for level in default_information.originate.ipv6 if default_information.originate.ipv6 is defined %} - default-information originate ipv6 {{ level | replace('_', '-') }} always +{% for afi, afi_config in default_information.originate.items() %} +{% for level, level_config in afi_config.items() %} + default-information originate {{ afi }} {{ level | replace('_', '-') }} {{ 'always' if level_config.always is defined }} {{ 'route-map ' ~ level_config.route_map if level_config.route_map is defined }} {{ 'metric ' ~ level_config.metric if level_config.metric is defined }} +{% endfor %} {% endfor %} {% endif %} {% if redistribute is defined and redistribute.ipv4 is defined and redistribute.ipv4 is not none %} diff --git a/interface-definitions/include/isis/default-information-level.xml.i b/interface-definitions/include/isis/default-information-level.xml.i new file mode 100644 index 000000000..5ade72a4b --- /dev/null +++ b/interface-definitions/include/isis/default-information-level.xml.i @@ -0,0 +1,32 @@ + + + + Distribute default route into level-1 + + + + + Always advertise default route + + + + #include + #include + + + + + Distribute default route into level-2 + + + + + Always advertise default route + + + + #include + #include + + + diff --git a/interface-definitions/include/isis/metric.xml.i b/interface-definitions/include/isis/metric.xml.i new file mode 100644 index 000000000..30e2cdc10 --- /dev/null +++ b/interface-definitions/include/isis/metric.xml.i @@ -0,0 +1,14 @@ + + + + Set default metric for circuit + + u32:0-16777215 + Default metric value + + + + + + + diff --git a/interface-definitions/include/isis/protocol-common-config.xml.i b/interface-definitions/include/isis/protocol-common-config.xml.i index c4a913385..9b8283f40 100644 --- a/interface-definitions/include/isis/protocol-common-config.xml.i +++ b/interface-definitions/include/isis/protocol-common-config.xml.i @@ -39,18 +39,7 @@ Distribute default route for IPv4 - - - Distribute default route into level-1 - - - - - - Distribute default route into level-2 - - - + #include @@ -58,30 +47,7 @@ Distribute default route for IPv6 - - - Distribute default route into level-1 - - always - - - always - Always advertise default route - - - - - - Distribute default route into level-2 - - always - - - always - Always advertise default route - - - + #include @@ -677,18 +643,7 @@ - - - Set default metric for circuit - - u32:0-16777215 - Default metric value - - - - - - + #include Set network type -- cgit v1.2.3