summaryrefslogtreecommitdiff
path: root/data/templates/frr/zebra.vrf.route-map.frr.j2
diff options
context:
space:
mode:
authorChristian Breunig <christian@breunig.cc>2023-04-10 10:57:34 +0200
committerChristian Breunig <christian@breunig.cc>2023-04-13 09:01:31 +0200
commitb454ddc8c2cc0edbdc832bd60ef03a1819a6d8d6 (patch)
tree530343f475c58af633766d13928d289d6edf0a2a /data/templates/frr/zebra.vrf.route-map.frr.j2
parentf9aa4c6312a773c216e65400db7e66849d5a02c7 (diff)
downloadvyos-1x-b454ddc8c2cc0edbdc832bd60ef03a1819a6d8d6.tar.gz
vyos-1x-b454ddc8c2cc0edbdc832bd60ef03a1819a6d8d6.zip
T5150: initial VRF support for Kernel/Zebra route-map filtering
Diffstat (limited to 'data/templates/frr/zebra.vrf.route-map.frr.j2')
-rw-r--r--data/templates/frr/zebra.vrf.route-map.frr.j224
1 files changed, 24 insertions, 0 deletions
diff --git a/data/templates/frr/zebra.vrf.route-map.frr.j2 b/data/templates/frr/zebra.vrf.route-map.frr.j2
new file mode 100644
index 000000000..eb6abd8e7
--- /dev/null
+++ b/data/templates/frr/zebra.vrf.route-map.frr.j2
@@ -0,0 +1,24 @@
+!
+{% if name is vyos_defined %}
+{% for vrf, vrf_config in name.items() %}
+vrf {{ vrf }}
+{% if vrf_config.ip.protocol is vyos_defined %}
+{% for protocol_name, protocol_config in vrf_config.ip.protocol.items() %}
+ ip protocol {{ protocol_name }} route-map {{ protocol_config.route_map }}
+{% endfor %}
+{% endif %}
+{% if vrf_config.ipv6.protocol is vyos_defined %}
+{% for protocol_name, protocol_config in vrf_config.ipv6.protocol.items() %}
+{% if protocol_name is vyos_defined('ospfv3') %}
+{% set protocol_name = 'ospf6' %}
+{% endif %}
+ ipv6 protocol {{ protocol_name }} route-map {{ protocol_config.route_map }}
+{% endfor %}
+{% endif %}
+{% if vrf_config.vni is vyos_defined %}
+ vni {{ vrf_config.vni }}
+{% endif %}
+{% endfor %}
+ exit-vrf
+!
+{% endif %}