From 1e841e36f21e2d49e3c894991183245a56213bfe Mon Sep 17 00:00:00 2001
From: "th.l" <thl-cmk@outlook.com>
Date: Tue, 18 Jun 2024 20:28:13 +0200
Subject: [PATCH] update project

---
 README.md                          |   2 +-
 mkp/nvdct-0.8.12-20240618.mkp      | Bin 0 -> 40352 bytes
 source/bin/nvdct/lib/backends.py   |  11 ++++++++---
 source/bin/nvdct/lib/settings.py   |   4 +++-
 source/bin/nvdct/lib/topologies.py |   5 ++++-
 source/bin/nvdct/lib/utils.py      |   2 +-
 source/packages/nvdct              |   2 +-
 7 files changed, 18 insertions(+), 8 deletions(-)
 create mode 100644 mkp/nvdct-0.8.12-20240618.mkp

diff --git a/README.md b/README.md
index 7c6b30a..ac6a28b 100644
--- a/README.md
+++ b/README.md
@@ -1,4 +1,4 @@
-[PACKAGE]: ../../raw/master/mkp/nvdct-0.8.10-20240614.mkp "nvdct-0.8.10-20240614.mkp"
+[PACKAGE]: ../../raw/master/mkp/nvdct-0.8.12-20240618.mkp "nvdct-0.8.12-20240618.mkp"
 # Network Visualization Data Creation Tool (NVDCT)
 
 This script creates the topology data file needed for the [Checkmk Exchange Network visualization](https://exchange.checkmk.com/p/network-visualization) plugin by Andreas Boesl and [schnetz](https://exchange.checkmk.com/u/schnetz).\
diff --git a/mkp/nvdct-0.8.12-20240618.mkp b/mkp/nvdct-0.8.12-20240618.mkp
new file mode 100644
index 0000000000000000000000000000000000000000..7edee5d97ebb4aba0909d2abaf77ab34b2c70684
GIT binary patch
literal 40352
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
R8|fSVu%#^UN8ryN{{yA`jHCbn

literal 0
HcmV?d00001

diff --git a/source/bin/nvdct/lib/backends.py b/source/bin/nvdct/lib/backends.py
index 5500c68..0d3e454 100755
--- a/source/bin/nvdct/lib/backends.py
+++ b/source/bin/nvdct/lib/backends.py
@@ -8,6 +8,8 @@
 # Date  : 2023-10-12
 # File  : nvdct/lib/backends.py
 
+# 2024-06-18: fixed host_exist returns always True if host was in host_cache, even with host=None
+
 from _collections_abc import Mapping, Sequence
 from abc import abstractmethod
 from ast import literal_eval
@@ -279,7 +281,7 @@ class HostCacheLiveStatus(HostCache):
             'OutputFormat: python3\n'
             f'Filter: host_name = {host}\n'
         )
-        if host in self.cache:
+        if self.cache.get(host) is not None:
             return True
         # if self.pre_fetch:
         #     LOGGER.warning(f'{self.backend} pre_fetch host not found in cache {host}')
@@ -287,6 +289,7 @@ class HostCacheLiveStatus(HostCache):
         data: Sequence[Sequence[str]] = self.get_raw_data(query=query)
         LOGGER.debug(f'{self.backend} data for host {host}: {data}')
         if [host] in data:
+            LOGGER.debug(f'{self.backend} Host {host} found in CMK')
             return True
 
         LOGGER.warning(f'{self.backend} Host {host} not found in CMK')
@@ -347,6 +350,8 @@ class HostCacheMultiSite(HostCacheLiveStatus):
             self.pre_fetch_hosts()
 
     def get_sites(self):
+        # see: https://github.com/Checkmk/checkmk/blob/master/packages/cmk-livestatus-client/example_multisite.py
+
         sites_mk = Path(f'{OMD_ROOT}/etc/check_mk/multisite.d/sites.mk')
         socket_path = f'unix:{OMD_ROOT}/tmp/run/live'
         if sites_mk.exists():
@@ -505,7 +510,7 @@ class HostCacheRestApi(HostCache):
 
     def host_exists(self, host: str) -> bool:
         LOGGER.debug(f'{self.backend} host_exists {host}')
-        if host in self.cache:
+        if self.cache.get(host) is not None:
             LOGGER.debug(f'{self.backend} host found in cache {host}')
             return True
         # if self.pre_fetch:
@@ -657,7 +662,7 @@ class HostCacheFileSystem(HostCache):
     def host_exists(self, host: str) -> bool:
         # always True, don't works in distributed environments as autocheck files
         # are only locally available
-        return True
+        return False
 
     def get_hosts_by_label(self, label: str) -> List[str] | None:
         # not implemented, no (good) way to get a list of hosts from file system
diff --git a/source/bin/nvdct/lib/settings.py b/source/bin/nvdct/lib/settings.py
index c1a60b2..610abdc 100755
--- a/source/bin/nvdct/lib/settings.py
+++ b/source/bin/nvdct/lib/settings.py
@@ -8,6 +8,8 @@
 # Date  : 2023-10-12
 # File  : nvdct/lib/settings.py
 
+# fixed path to default user data file
+
 from _collections_abc import Mapping
 from ipaddress import AddressValueError, IPv4Address, IPv4Network, NetmaskValueError
 from logging import CRITICAL, FATAL, ERROR, WARNING, INFO, DEBUG
@@ -96,7 +98,7 @@ class Settings:
             'skip_l3_ip': False,
             'time_format': TIME_FORMAT,
             'uppercase': False,
-            'user_data_file': f'{self.omd_root}/local/bin/nvdct/{USER_DATA_FILE}',
+            'user_data_file': f'{self.omd_root}/local/bin/nvdct/conf/{USER_DATA_FILE}',
             'version': False,
         }
         # args in the form {'s, __seed_devices': 'CORE01', 'p, __path_in_inventory': None, ... }}
diff --git a/source/bin/nvdct/lib/topologies.py b/source/bin/nvdct/lib/topologies.py
index a275815..712fb33 100755
--- a/source/bin/nvdct/lib/topologies.py
+++ b/source/bin/nvdct/lib/topologies.py
@@ -30,7 +30,9 @@ class NvObjects:
         if host not in self.nv_objects:
             link: Dict = {}
             metadata: Dict = {}
-            if host_cache.host_exists(host=host):
+            # LOGGER.debug(f'host: {host}, {host_cache.host_exists(host=host)}')
+            if host_cache.host_exists(host=host) is True:
+                LOGGER.debug(f'host: {host} exists')
                 link = {'core': host}
             else:
                 if emblem is not None:
@@ -49,6 +51,7 @@ class NvObjects:
                 'link': link,
                 'metadata': metadata,
             }
+            LOGGER.debug(f'host: {host}, link: {link}, metadata: {metadata}')
 
     def add_service_object(
         self,
diff --git a/source/bin/nvdct/lib/utils.py b/source/bin/nvdct/lib/utils.py
index a244981..bf130f0 100755
--- a/source/bin/nvdct/lib/utils.py
+++ b/source/bin/nvdct/lib/utils.py
@@ -23,7 +23,7 @@ from time import time as now_time
 from tomllib import loads as toml_loads, TOMLDecodeError
 from typing import List, Dict, TextIO
 
-NVDCT_VERSION = '0.8.11-20240617'
+NVDCT_VERSION = '0.8.12-20240618'
 
 
 @unique
diff --git a/source/packages/nvdct b/source/packages/nvdct
index 4811221..d4fb20c 100644
--- a/source/packages/nvdct
+++ b/source/packages/nvdct
@@ -58,7 +58,7 @@
                    'htdocs/images/icons/location_80.png']},
  'name': 'nvdct',
  'title': 'Network Visualization Data Creation Tool (NVDCT)',
- 'version': '0.8.10-20240614',
+ 'version': '0.8.12-20240618',
  'version.min_required': '2.2.0b1',
  'version.packaged': 'cmk-mkp-tool 0.2.0',
  'version.usable_until': '2.4.0p1'}
-- 
GitLab