From cca9cd63768d809c824fbe2d8546ceeaf2068812 Mon Sep 17 00:00:00 2001
From: gifrerenom <lluis.gifre@cttc.es>
Date: Thu, 30 May 2024 18:46:51 +0000
Subject: [PATCH] Service component - L3NM gNMI OpenConfig:

- Corrected generation of removal rules
---
 .../l3nm_gnmi_openconfig/ConfigRuleComposer.py     | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/src/service/service/service_handlers/l3nm_gnmi_openconfig/ConfigRuleComposer.py b/src/service/service/service_handlers/l3nm_gnmi_openconfig/ConfigRuleComposer.py
index 343c37f5d..20595e896 100644
--- a/src/service/service/service_handlers/l3nm_gnmi_openconfig/ConfigRuleComposer.py
+++ b/src/service/service/service_handlers/l3nm_gnmi_openconfig/ConfigRuleComposer.py
@@ -93,15 +93,19 @@ class EndpointComposer:
         if self.ipv4_address is None: return []
         if self.ipv4_prefix_len is None: return []
         json_config_rule = json_config_rule_delete if delete else json_config_rule_set
-        return [
-            json_config_rule(*_interface(
-                self.objekt.name, index=self.sub_interface_index, address_ip=self.ipv4_address,
-                address_prefix=self.ipv4_prefix_len, enabled=True
-            )),
+        config_rules = [
             json_config_rule(*_network_instance_interface(
                 network_instance_name, self.objekt.name, self.sub_interface_index
             )),
         ]
+        if not delete:
+            config_rules.extend([
+                json_config_rule(*_interface(
+                    self.objekt.name, index=self.sub_interface_index, address_ip=self.ipv4_address,
+                    address_prefix=self.ipv4_prefix_len, enabled=True
+                )),
+            ])
+        return config_rules
 
     def dump(self) -> Dict:
         return {
-- 
GitLab