summaryrefslogtreecommitdiff
path: root/data/templates/frr/static.frr.tmpl
diff options
context:
space:
mode:
authorChristian Poessinger <christian@poessinger.com>2021-02-04 19:35:18 +0100
committerChristian Poessinger <christian@poessinger.com>2021-02-05 22:42:29 +0100
commit1f8c257f126d492a3f41eee72728b2c35b6b534e (patch)
treea4111e0fa5dccef83b755e3eb9071e39334a2eac /data/templates/frr/static.frr.tmpl
parent3dd78cddfe90851cb7a6891add8a0973d23da292 (diff)
downloadvyos-1x-1f8c257f126d492a3f41eee72728b2c35b6b534e.tar.gz
vyos-1x-1f8c257f126d492a3f41eee72728b2c35b6b534e.zip
route: static: T2450: provide full protocol support in XML and Python with new CLI
Diffstat (limited to 'data/templates/frr/static.frr.tmpl')
-rw-r--r--data/templates/frr/static.frr.tmpl38
1 files changed, 38 insertions, 0 deletions
diff --git a/data/templates/frr/static.frr.tmpl b/data/templates/frr/static.frr.tmpl
new file mode 100644
index 000000000..bb0ec80a5
--- /dev/null
+++ b/data/templates/frr/static.frr.tmpl
@@ -0,0 +1,38 @@
+{% from 'frr/static_routes_macro.j2' import static_routes %}
+!
+{# IPv4 routing #}
+{% if route is defined and route is not none %}
+{% for prefix, prefix_config in route.items() %}
+{{ static_routes('ip', prefix, prefix_config) }}
+{%- endfor -%}
+{% endif %}
+!
+{# IPv6 routing #}
+{% if route6 is defined and route6 is not none %}
+{% for prefix, prefix_config in route6.items() %}
+{{ static_routes('ipv6', prefix, prefix_config) }}
+{%- endfor -%}
+{% endif %}
+!
+{# Policy route tables #}
+{% if table is defined and table is not none %}
+{% for table_id, table_config in table.items() %}
+{% if table_config.route is defined and table_config.route is not none %}
+{% for prefix, prefix_config in table_config.route.items() %}
+{{ static_routes('ip', prefix, prefix_config, table_id) }}
+{%- endfor -%}
+{% endif %}
+!
+{% if table_config.route6 is defined and table_config.route6 is not none %}
+{% for prefix, prefix_config in table_config.route6.items() %}
+{{ static_routes('ipv6', prefix, prefix_config, table_id) }}
+{%- endfor -%}
+{% endif %}
+!
+{% endfor %}
+{% endif %}
+!
+{% if route_map is defined and route_map is not none %}
+ip protocol static route-map {{ route_map }}
+!
+{% endif %}