From da45289e1297f825044e00ac2ef954d70e6a9e38 Mon Sep 17 00:00:00 2001 From: alexquali Date: Thu, 2 May 2019 16:47:00 +0300 Subject: [PATCH 1/4] Fixed sub module index intersection --- .../juniper/autoload/juniper_snmp_autoload.py | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/cloudshell/networking/juniper/autoload/juniper_snmp_autoload.py b/cloudshell/networking/juniper/autoload/juniper_snmp_autoload.py index 006894c..3972436 100755 --- a/cloudshell/networking/juniper/autoload/juniper_snmp_autoload.py +++ b/cloudshell/networking/juniper/autoload/juniper_snmp_autoload.py @@ -453,6 +453,19 @@ def _build_modules(self): chassis.add_sub_resource(module_id, module) self._modules[module_id] = module + def _get_submodule_ids(self, element_indexes): + """ Get all sub modules ids based on sub_modules types/prefixes indexes + Sequences of types is important (from less important to more important) + """ + + res = {} + for prefix in element_indexes: + value = self.content_indexes.get(prefix, []) + + res.update({i.split(".", 1)[-1]: i for i in value}) + + return res.values() + def _build_sub_modules(self): """ Build SubModules resources and attributes @@ -465,7 +478,8 @@ def _build_sub_modules(self): "jnxContentsRevision": "str"} element_indexes = ["8", "20"] - for index in reduce(lambda x, y: x + self.content_indexes.get(y, []), element_indexes, []): + # for index in reduce(lambda x, y: x + self.content_indexes.get(y, []), element_indexes, []): + for index in self._get_submodule_ids(element_indexes=element_indexes): content_data = self.snmp_handler.get_properties("JUNIPER-MIB", index, sub_modules_snmp_attributes).get(index) index1, index2, index3, index4 = index.split(".")[:4] From 8eafa9c2456d3cd0c6a83893cb1e6626e6fb7952 Mon Sep 17 00:00:00 2001 From: Yaroslav Nikonorov Date: Mon, 6 May 2019 16:48:36 +0300 Subject: [PATCH 2/4] version 4.2.6 --- version.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.txt b/version.txt index df0228d..d6f85ab 100644 --- a/version.txt +++ b/version.txt @@ -1 +1 @@ -4.2.5 +4.2.6 From 96f095e48c80ca229e050f877d67f8eb3bbcccdd Mon Sep 17 00:00:00 2001 From: Yaroslav Nikonorov Date: Tue, 7 May 2019 13:31:41 +0300 Subject: [PATCH 3/4] Fixed port name --- cloudshell/networking/juniper/autoload/juniper_snmp_autoload.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cloudshell/networking/juniper/autoload/juniper_snmp_autoload.py b/cloudshell/networking/juniper/autoload/juniper_snmp_autoload.py index 3972436..b30d16d 100755 --- a/cloudshell/networking/juniper/autoload/juniper_snmp_autoload.py +++ b/cloudshell/networking/juniper/autoload/juniper_snmp_autoload.py @@ -97,7 +97,7 @@ def type(self): @property def port_name(self): if not self._port_name: - self._port_name = self._get_snmp_attribute(self.IF_MIB, 'ifDescr') + self._port_name = self._get_snmp_attribute(self.IF_MIB, 'ifDescr') or self._get_snmp_attribute(self.IF_MIB, 'ifName') return self._port_name def _get_associated_ipv4_address(self): From 449c64dba6ad5cd47fbb5f5c0aeced2379df2c7a Mon Sep 17 00:00:00 2001 From: Yaroslav Nikonorov Date: Tue, 7 May 2019 13:32:23 +0300 Subject: [PATCH 4/4] Version 4.2.7 --- version.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/version.txt b/version.txt index d6f85ab..4739c61 100644 --- a/version.txt +++ b/version.txt @@ -1 +1 @@ -4.2.6 +4.2.7