From 039f5bd1b2a1fb85ab06590f4d6d969a1dedf24a Mon Sep 17 00:00:00 2001
From: "th.l" <thl-cmk@outlook.com>
Date: Fri, 8 Mar 2024 16:41:29 +0100
Subject: [PATCH] update project

---
 agent_based/inv_cisco_wlc_ap_cdp_cache.py     | 185 ------------------
 gui/views/inv_cisco_wlc_ap_cdp_cache.py       |  33 ----
 .../inv_cisco_wlc_ap_cdp_cache.py             |  76 -------
 ..._cisco_wlc_ap_cdp_cache-0.4.1-20240308.mkp | Bin 3526 -> 3519 bytes
 packages/inv_cisco_wlc_ap_cdp_cache           |  21 --
 5 files changed, 315 deletions(-)
 delete mode 100644 agent_based/inv_cisco_wlc_ap_cdp_cache.py
 delete mode 100644 gui/views/inv_cisco_wlc_ap_cdp_cache.py
 delete mode 100644 gui/wato/check_parameters/inv_cisco_wlc_ap_cdp_cache.py
 delete mode 100644 packages/inv_cisco_wlc_ap_cdp_cache

diff --git a/agent_based/inv_cisco_wlc_ap_cdp_cache.py b/agent_based/inv_cisco_wlc_ap_cdp_cache.py
deleted file mode 100644
index b983c81..0000000
--- a/agent_based/inv_cisco_wlc_ap_cdp_cache.py
+++ /dev/null
@@ -1,185 +0,0 @@
-#!/usr/bin/env python3
-# -*- coding: utf-8 -*-
-#
-# License: GNU General Public License v2
-#
-# Author: thl-cmk[at]outlook[dot]com
-# URL   : https://thl-cmk.hopto.org
-# Date  : 2016-04-08
-#
-# inventory of cisco wlc ap cdp cache
-#
-# 2016-08-22: removed index column
-# 2018-08-03: code cleanup
-# 2018-09-04: changes for CMK 1.5.x (inv_tree --> inv_tree_list)
-# 2020-03-15: added support for CMK1.6x
-# 2021-07-10: rewritten vor CMK 2.0
-# 2021-07-15 : added support for Catalyst 9800 Controllers
-# 2023-06-07: moved gui files to ~/local/lib/chek_mk/gui/plugins/...
-#
-
-from cmk.base.plugins.agent_based.agent_based_api.v1 import (
-    register,
-    SNMPTree,
-    TableRow,
-    contains,
-    any_of,
-)
-from cmk.base.plugins.agent_based.agent_based_api.v1.type_defs import (
-    StringTable,
-    InventoryResult,
-)
-
-
-def _render_ip_address(bytestring):
-    if len(bytestring) == 4:
-        return '.'.join(['%s' % ord(m) for m in bytestring])
-    else:
-        bytestring_clean = bytestring.replace('"', '').replace('|4|', '').replace('.', ' ').strip().split(' ')
-        try:
-            return '.'.join(['%s' % int(m, 16) for m in bytestring_clean])
-        except ValueError:
-            return bytestring
-
-
-_cdp_duplex = {
-    '0': 'N/A',
-    '1': 'unknown',
-    '2': 'full duplex',
-    '3': 'half duplex',
-}
-
-_cdp_speed = {
-    '0': 'N/A',
-    '1': 'none',
-    '2': '10Mbps',
-    '3': '100Mbps',
-    '4': '1000Mbps',
-    '5': 'auto',
-}
-
-_interface_displayhints = {
-    'ethernet': 'eth',
-    'fastethernet': 'Fa',
-    'gigabitethernet': 'Gi',
-    'tengigabitethernet': 'Te',
-    'fortygigabitethernet': 'Fo',
-    'hundredgigabitethernet': 'Hu',
-    'port-channel': 'Po',
-    'tunnel': 'Tu',
-    'loopback': 'Lo',
-    'cellular': 'Cel',
-    'vlan': 'Vlan',
-    'management': 'Ma',
-}
-
-
-def _get_short_if_name(ifname: str) -> str:
-    """
-    returns short interface name from long interface name
-    ifname: is the long interface name
-    :type ifname: str
-    """
-
-    for ifname_prefix in _interface_displayhints.keys():
-        if ifname.lower().startswith(ifname_prefix.lower()):
-            ifname_short = _interface_displayhints[ifname_prefix]
-            return ifname.lower().replace(ifname_prefix.lower(), ifname_short, 1)
-    return ifname
-
-
-def parse_cisco_wlc_ap_cdp_cache(string_table: StringTable):
-    neighbours = []
-    for deviceindex, apname, apaddresstype, apaddress, neighname, neighaddresstype, neighaddress, neighinterface, \
-        platform, duplex, speed in string_table:
-
-        if int(apaddresstype) == 1:
-            apaddress = _render_ip_address(apaddress)
-
-        if int(neighaddresstype) == 1:
-            neighaddress = _render_ip_address(neighaddress)
-
-        neighbours.append({
-            'ap_name': apname,
-            'ap_address': apaddress,
-            'neighbour_name': neighname,
-            'neighbour_address': neighaddress,
-            'neighbour_interface': neighinterface,
-            'neighbour_platform': platform,
-            'duplex': _cdp_duplex.get(duplex),
-            'speed': _cdp_speed.get(speed),
-        })
-
-    return neighbours
-
-
-def inventory_cisco_wlc_ap_cdp_cache(params, section) -> InventoryResult:
-    removecolumns = []
-    remove_domain = False
-    domain_name = ''
-    use_short_if_name = False
-
-    if params:
-        removecolumns = params.get('removecolumns', removecolumns)
-        remove_domain = params.get('remove_domain', remove_domain)
-        domain_name = params.get('domain_name', domain_name)
-        use_short_if_name = params.get('use_short_if_name', use_short_if_name)
-
-    path = ['networking', 'wlan', 'controller', 'ap_cdp_cache']
-
-    for neighbour in section:
-        if remove_domain:
-            if not domain_name == '':
-                neighbour['neighbour_name'] = neighbour['neighbour_name'].replace(domain_name, '')
-            else:
-                neighbour['neighbour_name'] = neighbour['neighbour_name'].split('.')[0]
-
-        if use_short_if_name:
-            neighbour['neighbour_interface'] = _get_short_if_name(neighbour['neighbour_interface'])
-
-        key_columns = {'ap_name': neighbour['ap_name']}
-
-        for key in key_columns.keys():
-            neighbour.pop(key)
-
-        for entry in removecolumns:
-            neighbour.pop(entry)
-
-        yield TableRow(
-            path=path,
-            key_columns=key_columns,
-            inventory_columns=neighbour
-        )
-
-
-register.snmp_section(
-    name='inv_cisco_wlc_ap_cdp_cache',
-    parse_function=parse_cisco_wlc_ap_cdp_cache,
-    fetch=SNMPTree(
-        base='.1.3.6.1.4.1.9.9.623.1.3.1.1',  # CISCO-LWAPP-CDP-MIB::clcCdpApCacheEntry
-        oids=[
-            '1',  # clcCdpApCacheDeviceIndex
-            '2',  # clcCdpApCacheApName
-            '3',  # clcCdpApCacheApAddressType
-            '4',  # clcCdpApCacheApAddress
-            '6',  # clcCdpApCacheNeighName
-            '7',  # clcCdpApCacheNeighAddressType
-            '8',  # clcCdpApCacheNeighAddress
-            '9',  # clcCdpApCacheNeighInterface
-            '12',  # clcCdpApCachePlatform
-            '15',  # clcCdpApCacheDuplex
-            '16',  # clcCdpApCacheInterfaceSpeed
-        ]
-    ),
-    detect=any_of(
-        contains('.1.3.6.1.2.1.1.1.0', 'Cisco Controller'),  # sysDescr
-        contains('.1.3.6.1.2.1.1.1.0', 'C9800 Software'),  # sysDescr
-    )
-)
-
-register.inventory_plugin(
-    name='inv_cisco_wlc_ap_cdp_cache',
-    inventory_function=inventory_cisco_wlc_ap_cdp_cache,
-    inventory_default_parameters={},
-    inventory_ruleset_name='inv_cisco_wlc_ap_cdp_cache',
-)
diff --git a/gui/views/inv_cisco_wlc_ap_cdp_cache.py b/gui/views/inv_cisco_wlc_ap_cdp_cache.py
deleted file mode 100644
index 08a3932..0000000
--- a/gui/views/inv_cisco_wlc_ap_cdp_cache.py
+++ /dev/null
@@ -1,33 +0,0 @@
-#!/usr/bin/env python3
-# -*- coding: utf-8 -*-
-#
-# License: GNU General Public License v2
-#
-# Author: thl-cmk[at]outlook[dot]com
-# URL   : https://thl-cmk.hopto.org
-# Date  : 2016-04-08
-#
-#
-# 2023-06-14: removed declare_invtable_view from view definition on cmk 2.2 (see werk 15493)
-#             changed inventory_displayhints import (see werk 15493)
-
-
-from cmk.gui.i18n import _
-from cmk.gui.views.inventory.registry import inventory_displayhints
-
-inventory_displayhints.update({
-    '.networking.wlan.controller.ap_cdp_cache:': {'title': _('Access Points CDP Cache'),
-                                                  'keyorder': ['ap_name', 'ap_address', 'neighbour_name',
-                                                               'neighbour_address', 'neighbour_interface',
-                                                               'neighbour_platform', ],
-                                                  'view': 'invwlcapcdpcache_of_host',
-                                                  },
-    '.networking.wlan.controller.ap_cdp_cache:*.ap_name': {'title': _('AP name'), },
-    '.networking.wlan.controller.ap_cdp_cache:*.ap_address': {'title': _('AP address'), },
-    '.networking.wlan.controller.ap_cdp_cache:*.neighbour_name': {'title': _('Neighbour name'), },
-    '.networking.wlan.controller.ap_cdp_cache:*.neighbour_address': {'title': _('Neighbour address'), },
-    '.networking.wlan.controller.ap_cdp_cache:*.neighbour_interface': {'title': _('Neighbour interface'), },
-    '.networking.wlan.controller.ap_cdp_cache:*.neighbour_platform': {'title': _('Neighbour platform'), },
-    '.networking.wlan.controller.ap_cdp_cache:*.duplex': {'title': _('Duplex'), },
-    '.networking.wlan.controller.ap_cdp_cache:*.speed': {'title': _('Speed'), },
-})
diff --git a/gui/wato/check_parameters/inv_cisco_wlc_ap_cdp_cache.py b/gui/wato/check_parameters/inv_cisco_wlc_ap_cdp_cache.py
deleted file mode 100644
index d24febe..0000000
--- a/gui/wato/check_parameters/inv_cisco_wlc_ap_cdp_cache.py
+++ /dev/null
@@ -1,76 +0,0 @@
-#!/usr/bin/env python3
-# -*- coding: utf-8 -*-
-#
-# License: GNU General Public License v2
-#
-# Author: thl-cmk[at]outlook[dot]com
-# URL   : https://thl-cmk.hopto.org
-# Date  : 2016-04-08
-#
-#
-# 2023-06-14: moved wato file to check_parameters sub directory
-
-from cmk.gui.i18n import _
-from cmk.gui.plugins.wato.utils import (
-    HostRulespec,
-    rulespec_registry,
-)
-from cmk.gui.valuespec import (
-    Dictionary,
-    FixedValue,
-    TextAscii,
-    ListChoice,
-)
-
-from cmk.gui.plugins.wato.inventory import (
-    RulespecGroupInventory,
-)
-
-_removecolumns_cisco_wlc_ap_cdp_cache = [
-    ('duplex', 'Duplex'),
-    ('speed', 'Speed'),
-]
-
-
-def _valuespec_inv_cisco_wlc_ap_cdp_cache():
-    return Dictionary(
-        title=_('Cisco WLC AP CDP cache'),
-        elements=[
-            ('remove_domain',
-             FixedValue(
-                 True,
-                 title=_('Remove domain name from neighbour device name'),
-                 totext=_('Remove the domain name enabled'),
-                 default_value=False,
-             )),
-            ('domain_name',
-             TextAscii(
-                 title=_('Specific domain name to remove from neighbour device name'),
-                 allow_empty=False,
-                 default_value='',
-             )),
-            ('removecolumns',
-             ListChoice(
-                 title=_('List of columns to remove'),
-                 help=_('information to remove from inventory'),
-                 choices=_removecolumns_cisco_wlc_ap_cdp_cache,
-                 default_value=[],
-             )),
-            ('use_short_if_name',
-             FixedValue(
-                 True,
-                 title=_('use short interface names (i.e. Gi0/0 for GigabitEthernet0/0)'),
-                 totext=_('use short interface names enabled'),
-                 default_value=False,
-             )),
-        ],
-    )
-
-
-rulespec_registry.register(
-    HostRulespec(
-        group=RulespecGroupInventory,
-        match_type='dict',
-        name='inv_parameters:inv_cisco_wlc_ap_cdp_cache',
-        valuespec=_valuespec_inv_cisco_wlc_ap_cdp_cache,
-    ))
diff --git a/mkp/inv_cisco_wlc_ap_cdp_cache-0.4.1-20240308.mkp b/mkp/inv_cisco_wlc_ap_cdp_cache-0.4.1-20240308.mkp
index f1ee1d7d9944f04d602f8ed2914c9608b3ba91c8..5475aeec6c66d759562d2892098da906e6400ab6 100644
GIT binary patch
literal 3519
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
PDDwH0(qpn>GP3^wgblo`

literal 3526
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
U{eLLo_EMq*dJ;(Tg@ojP0Cn;Ey#N3J

diff --git a/packages/inv_cisco_wlc_ap_cdp_cache b/packages/inv_cisco_wlc_ap_cdp_cache
deleted file mode 100644
index 835b039..0000000
--- a/packages/inv_cisco_wlc_ap_cdp_cache
+++ /dev/null
@@ -1,21 +0,0 @@
-{'author': 'Th.L. (thl-cmk[at]outlook[dot]com)',
- 'description': 'SNMP inventory for Cisco WLC AP CDP cache '
-                '(CISCO-LWAPP-CDP-MIB).\n'
-                '\n'
-                'via WATO you can:\n'
-                ' - you can add/remove some fields\n'
-                ' - remove domain from neighbor name\n'
-                ' - use short interface names\n'
-                '\n'
-                '2020-03.15: added support for CMK1.6x\n'
-                '2021-07-10: rewritten for CMK 2.0\n',
- 'download_url': 'https://thl-cmk.hopto.org',
- 'files': {'agent_based': ['inv_cisco_wlc_ap_cdp_cache.py'],
-           'gui': ['views/inv_cisco_wlc_ap_cdp_cache.py',
-                   'wato/check_parameters/inv_cisco_wlc_ap_cdp_cache.py']},
- 'name': 'inv_cisco_wlc_ap_cdp_cache',
- 'title': 'inventory for Cisco WLC AP CDP cache (CISCO-LWAPP-CDP-MIB)',
- 'version': '0.4.0-20230614',
- 'version.min_required': '2.2.0b1',
- 'version.packaged': '2.2.0p2',
- 'version.usable_until': None}
-- 
GitLab