From 9b1f6806e9a0f7c66a94d809d136b5c4a62a208e Mon Sep 17 00:00:00 2001
From: "Th.L" <thl-cmk@outlook.com>
Date: Fri, 5 Mar 2021 20:32:11 +0100
Subject: [PATCH] update project

---
 agent_based/checkpoint_inv_base.py |  14 ++++++++++++--
 inv_checkpoint_base.mkp            | Bin 2221 -> 2330 bytes
 2 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/agent_based/checkpoint_inv_base.py b/agent_based/checkpoint_inv_base.py
index 511bac8..db97bed 100644
--- a/agent_based/checkpoint_inv_base.py
+++ b/agent_based/checkpoint_inv_base.py
@@ -13,6 +13,7 @@
 # 2020-11-28 : added available updates
 # 2021-02-08 : transfered license/support info to seperate plugin
 # 2021-02-22 : code cleanup
+# 2021-03-05 : added hostlabel section
 #
 # sample string_table
 # [
@@ -28,11 +29,13 @@
 from typing import List, NamedTuple
 
 from .agent_based_api.v1.type_defs import (
+    HostLabelGenerator,
     StringTable,
     InventoryResult,
 )
 from .agent_based_api.v1 import (
     Attributes,
+    HostLabel,
     register,
     SNMPTree,
     startswith,
@@ -85,16 +88,23 @@ def parse_checkpoint_inv_base(string_table: List[StringTable]) -> List:
     return section
 
 
+def host_label_checkpoint_inv_base(section: List) -> HostLabelGenerator:
+    for invPath, key, value in section:
+        if key == 'appliance_series' and value.lower() == 'maestro':
+            yield HostLabel('checkpoint/device_type', 'maestro')
+
+
 def inventory_checkpoint_base(section: List) -> InventoryResult:
     for invPath, key, value in section:
         yield Attributes(
-            path= invPath,
+            path=invPath,
             inventory_attributes={key: value})
 
 
 register.snmp_section(
     name='checkpoint_inv_base',
     parse_function=parse_checkpoint_inv_base,
+    host_label_function=host_label_checkpoint_inv_base,
     fetch=[
         SNMPTree(
             base='.1.3.6.1.4.1.2620.1.6',  # CHECKPOINT-MIB::svn
@@ -129,4 +139,4 @@ register.snmp_section(
 register.inventory_plugin(
     name='checkpoint_inv_base',
     inventory_function=inventory_checkpoint_base,
-)
\ No newline at end of file
+)
diff --git a/inv_checkpoint_base.mkp b/inv_checkpoint_base.mkp
index 9683670039ff5ad592bf8a64f7f5d0f4e1b5d4c3..c9c748a15e785762e82f228200a8f2f4dde31146 100644
GIT binary patch
delta 2267
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

delta 2157
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

-- 
GitLab