From 773ce650f1c4cb465e0814e451b6f989b61ec6d1 Mon Sep 17 00:00:00 2001
From: Aleksandr Kurbatov <ak@geant.org>
Date: Tue, 15 Apr 2025 11:11:15 +0100
Subject: [PATCH] Update to Juniper edgeport template

---
 .../templates/juniper/edge_port_create.j2     | 23 +++++++++++++++++++
 1 file changed, 23 insertions(+)
 create mode 100644 geant/gap_ansible/roles/edge_port/templates/juniper/edge_port_create.j2

diff --git a/geant/gap_ansible/roles/edge_port/templates/juniper/edge_port_create.j2 b/geant/gap_ansible/roles/edge_port/templates/juniper/edge_port_create.j2
new file mode 100644
index 00000000..5b71496d
--- /dev/null
+++ b/geant/gap_ansible/roles/edge_port/templates/juniper/edge_port_create.j2
@@ -0,0 +1,23 @@
+{% set gaid_prefix = '$' %}
+{% set csn_prefix = '#' %}
+
+
+{% for member in  ep.edge_port_ae_members %}
+set interfaces {{ member.interface_name }} description "PHY CUSTOMER {{ partner_name }} P_{{ ep.edge_port_name }}{{ ' | '+member.interface_description if member.interface_description is string }}
+set interfaces {{ member.interface_name }} gigether-options 802.3ad {{ ep.edge_port_name }}
+{% endfor %}
+{% if removed_ae_members is defined and removed_ae_members|length > 0 %}
+  {% for member in removed_ae_members %}
+deactivate {{ member.interface_name }}
+  {% endfor %}
+{% endif %}
+
+set interfaces {{ ep.edge_port_name }} description LAG {{ ep.edge_port_type }} {{ partner_name }}{{ ' | '+gaid_prefix+ep.ga_id if ep.ga_id is string }}{{ ' | '+csn_prefix+(ep.custom_service_name | replace("#","")) if ep.custom_service_name is string }}{{ ' | '+ep.edge_port_description if ep.edge_port_description is string }}
+set interfaces {{ ep.edge_port_name }} {% 'flexible-vlan-tagging' if ep.encapsulation == 'qinq' else 'vlan-tagging' %}
+set interfaces {{ ep.edge_port_name }} mtu 9192
+set interfaces {{ ep.edge_port_name }} encapsulation flexible-ethernet-services
+set interfaces {{ ep.edge_port_name }} aggregated-ether-options minimum-links {{ ep.minimum-links }}
+set interfaces {{ ep.edge_port_name }} aggregated-ether-options link-speed {{ ep.edge_port_ae_members[0].memeber_speed }}
+{% if enable_lacp %}
+set interfaces {{ ep.edge_port_name }} aggregated-ether-options lacp active
+{% endif %}
-- 
GitLab