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 e1d8b5c50791251e0e835a75edd8da137501467a..a1bbe75576977de48b92371df44331e384a43ffb 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))