From d5b25eabc68da18a471e7fe79f0d7637346b59a7 Mon Sep 17 00:00:00 2001
From: Aleksandr Kurbatov <ak@geant.org>
Date: Thu, 16 Jan 2025 10:33:13 +0000
Subject: [PATCH 1/4] Remove `replace` from vprn.j2

---
 .../gap_ansible/roles/bc_templates/routers/nokia/router/vprn.j2 | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/geant/gap_ansible/roles/bc_templates/routers/nokia/router/vprn.j2 b/geant/gap_ansible/roles/bc_templates/routers/nokia/router/vprn.j2
index ec4648f9..9f7be1fb 100644
--- a/geant/gap_ansible/roles/bc_templates/routers/nokia/router/vprn.j2
+++ b/geant/gap_ansible/roles/bc_templates/routers/nokia/router/vprn.j2
@@ -1,5 +1,5 @@
     {% for vprn in pe_vprns %}
-    <vprn alu:operation="replace">
+    <vprn>
         <service-name>{{ vprn.name }}</service-name>
         <admin-state>{{ vprn.admin_state | default('enable') }}</admin-state>
         {% if vprn.description is defined %}
-- 
GitLab


From 40cfd6365f2e5d60e457768619db309b0ea4065b Mon Sep 17 00:00:00 2001
From: Aleksandr Kurbatov <ak@geant.org>
Date: Thu, 16 Jan 2025 10:33:30 +0000
Subject: [PATCH 2/4] BGP role - update neighbor description

---
 geant/gap_ansible/roles/bgp_config/templates/bgp_neighbor.j2 | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/geant/gap_ansible/roles/bgp_config/templates/bgp_neighbor.j2 b/geant/gap_ansible/roles/bgp_config/templates/bgp_neighbor.j2
index dc71e135..f5f2e069 100644
--- a/geant/gap_ansible/roles/bgp_config/templates/bgp_neighbor.j2
+++ b/geant/gap_ansible/roles/bgp_config/templates/bgp_neighbor.j2
@@ -5,11 +5,12 @@
                     {% if neighbor.bfd_enabled %}
                     <bfd-liveness>true</bfd-liveness>
                     {% endif %}
-                    <description>{{ partner_name | upper }}_{{ partner.type }}</description>
 
                     {% if neighbor.ip_type == 'ipv4' %}
+                    <description>-- Peering with {{ partner_name | upper }} --</description>
                     <group>{{ bgp.group.ipv4 }}</group>
                     {% elif neighbor.ip_type == 'ipv6' %}
+                    <description>-- IPv6 Peering with {{ partner_name | upper }} --</description>
                     <group>{{ bgp.group.ipv6 }}</group>
                     {% endif %}
                     <peer-as>{{ partner.asn }}</peer-as>
-- 
GitLab


From 54e568645f37a5095607dca3bf49c9c0765c92ad Mon Sep 17 00:00:00 2001
From: Aleksandr Kurbatov <ak@geant.org>
Date: Thu, 16 Jan 2025 10:34:04 +0000
Subject: [PATCH 3/4] Edge port - update description in edge_port_create
 template

---
 .../edge_port/templates/nokia/edge_port_create.j2      | 10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)

diff --git a/geant/gap_ansible/roles/edge_port/templates/nokia/edge_port_create.j2 b/geant/gap_ansible/roles/edge_port/templates/nokia/edge_port_create.j2
index b6b130a6..2a50c462 100644
--- a/geant/gap_ansible/roles/edge_port/templates/nokia/edge_port_create.j2
+++ b/geant/gap_ansible/roles/edge_port/templates/nokia/edge_port_create.j2
@@ -1,3 +1,5 @@
+{% set gaid_prefix = '$' %}
+{% set csn_prefix = '#' %}
 <config xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" xmlns:alu="urn:ietf:params:xml:ns:netconf:base:1.0">
     <configure xmlns="urn:nokia.com:sros:ns:yang:sr:conf">
 
@@ -5,7 +7,7 @@
       <port xmlns="urn:nokia.com:sros:ns:yang:sr:conf" xmlns:nc="urn:ietf:params:xml:ns:netconf:base:1.0" xmlns:nokia-attr="urn:nokia.com:sros:ns:yang:sr:attributes" alu:operation="replace">
           <port-id>{{ member.interface_name }}</port-id>
           <admin-state>enable</admin-state>
-          <description>PHY {{ ep.edge_port_type }} {{ partner_name }} P_{{ ep.edge_port_name }} | {{ member.interface_description }}</description>
+          <description>PHY {{ ep.edge_port_type }} {{ partner_name }} P_{{ ep.edge_port_name }}{{ ' | '+member.interface_description if member.interface_description is string }}</description>
           <ethernet>
               <mode>access</mode>
               <encap-type>{{ ep.encapsulation }}</encap-type>
@@ -39,11 +41,7 @@
           <lag-name>{{ ep.edge_port_name | lower }}</lag-name>
           <admin-state>enable</admin-state>
           <encap-type>{{ ep.encapsulation }}</encap-type>
-          {% if ep.ga_id is string %}
-          <description>LAG {{ ep.edge_port_type }} {{ partner_name }} ${{ ep.ga_id }} |</description>
-          {% else %}
-          <description>LAG {{ ep.edge_port_type }} {{ partner_name }} |</description>
-          {% endif %}
+          <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 }}</description>
           <mode>access</mode>
          {% if ep.enable_lacp is true %} 
           <lacp>
-- 
GitLab


From b1f052e07783a4ac10ac1627738d26618f69ade4 Mon Sep 17 00:00:00 2001
From: Aleksandr Kurbatov <ak@geant.org>
Date: Thu, 16 Jan 2025 10:34:19 +0000
Subject: [PATCH 4/4] SBP - update description in SBP

---
 geant/gap_ansible/roles/sbp/templates/deploy_sbp.j2 | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/geant/gap_ansible/roles/sbp/templates/deploy_sbp.j2 b/geant/gap_ansible/roles/sbp/templates/deploy_sbp.j2
index 7aa5ef4b..07b1b5d4 100644
--- a/geant/gap_ansible/roles/sbp/templates/deploy_sbp.j2
+++ b/geant/gap_ansible/roles/sbp/templates/deploy_sbp.j2
@@ -14,9 +14,9 @@
                 <interface alu:operation="replace">
                     <interface-name>{{ lag_name }}.{{ ap.sbp.vlan_id }}</interface-name>
                 {% if subscription.l3_core_service_type in ['GEANT_IP', 'GEANT IP'] %}
-                    <description>SRV_GLOBAL CUSTOMER {{ partner_name }} #{{ partner_name }}-{{ ap.ap_type }} ${{ ap.sbp.gs_id }} | ASN{{ partner.asn }} | </description>
+                    <description>SRV_GLOBAL CUSTOMER {{ partner_name }} {{ '#'+ap.custom_service_name if ap.custom_service_name is string }} ${{ ap.sbp.gs_id }} | ASN{{ partner.asn }} | </description>
                 {% elif subscription.l3_core_service_type in ['LHCONE'] %}
-                    <description>SRV_L3VPN CUSTOMER {{ partner_name }} #{{ partner_name }}-{{ ap.ap_type }} ${{ ap.sbp.gs_id }} | ASN{{ partner.asn }} | </description>
+                    <description>SRV_L3VPN CUSTOMER {{ partner_name }} {{ '#'+ap.custom_service_name if ap.custom_service_name is string }} ${{ ap.sbp.gs_id }} | ASN{{ partner.asn }} | </description>
                 {% endif %}
                     <ip-mtu>{{ sbp_params.ip_mtu }}</ip-mtu>
                     <sap>
-- 
GitLab