From 3874e8970be63f77c3011ab433e2499adf367538 Mon Sep 17 00:00:00 2001
From: hajipour <shajipour@cttc.es>
Date: Wed, 1 Jan 2025 14:57:39 +0100
Subject: [PATCH] operation_type selection added to config rule creation

---
 .../l3nm_ietfl3vpn/L3NM_IETFL3VPN_ServiceHandler.py         | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/src/service/service/service_handlers/l3nm_ietfl3vpn/L3NM_IETFL3VPN_ServiceHandler.py b/src/service/service/service_handlers/l3nm_ietfl3vpn/L3NM_IETFL3VPN_ServiceHandler.py
index e1d8b5c50..a1bbe7557 100644
--- a/src/service/service/service_handlers/l3nm_ietfl3vpn/L3NM_IETFL3VPN_ServiceHandler.py
+++ b/src/service/service/service_handlers/l3nm_ietfl3vpn/L3NM_IETFL3VPN_ServiceHandler.py
@@ -229,6 +229,10 @@ class L3NM_IETFL3VPN_ServiceHandler(_ServiceHandler):
             running_candidate_diff = get_running_candidate_ietf_slice_data_diff(
                 service_config
             )
+            if not running_candidate_diff:
+                operation_type = "create"
+            elif "values_changed" in running_candidate_diff:
+                operation_type = "update"
             LOGGER.debug("running_candidate_diff: %s", running_candidate_diff)
             slice_services = candidate_resource_value_dict["network-slice-services"][
                 "slice-service"
@@ -292,7 +296,7 @@ class L3NM_IETFL3VPN_ServiceHandler(_ServiceHandler):
                 "dst_ce_pe_network_prefix": dst_ce_address_prefix,
                 "dst_mtu": MTU,
             }
-            json_config_rules = setup_config_rules(service_uuid, resource_value_dict)
+            json_config_rules = setup_config_rules(service_uuid, resource_value_dict, operation_type)
             del controller.device_config.config_rules[:]
             for jcr in json_config_rules:
                 controller.device_config.config_rules.append(ConfigRule(**jcr))
-- 
GitLab