Module: check_mk
Branch: master
Commit: fc68605ce7d06882b72169fb4de7b234fc58ff6b
URL:
http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=fc68605ce7d068…
Author: Sven Panne <sp(a)mathias-kettner.de>
Date: Fri Jun 8 08:10:23 2018 +0200
Revert "added WK5818"
The commit lead to 6 pylint warnings (undefined variable 'cmk_base') in
cmk_base.data_sources.tcp.
This reverts commit d6227564203a0fc7c57c1a19c8808db0f438061d.
---
.werks/5818 | 9 ---------
cmk_base/data_sources/__init__.py | 5 -----
cmk_base/data_sources/abstract.py | 39 +++++++++++++++++++++++++++++++++++++++
cmk_base/data_sources/tcp.py | 39 ---------------------------------------
4 files changed, 39 insertions(+), 53 deletions(-)
diff --git a/.werks/5818 b/.werks/5818
deleted file mode 100644
index d184b2e..0000000
--- a/.werks/5818
+++ /dev/null
@@ -1,9 +0,0 @@
-Title: Fixed "unknown agent version" message in Check_MK check, shown by
cluster hosts
-Level: 1
-Component: checks
-Compatible: compat
-Edition: cre
-Version: 1.6.0i1
-Date: 1528389637
-Class: fix
-
diff --git a/cmk_base/data_sources/__init__.py b/cmk_base/data_sources/__init__.py
index af4f586..3a03826 100644
--- a/cmk_base/data_sources/__init__.py
+++ b/cmk_base/data_sources/__init__.py
@@ -107,11 +107,6 @@ class DataSources(object):
def _initialize_data_sources(self):
self._sources = {}
- if config.is_cluster(self._hostname):
- # Cluster hosts do not have any actual data sources
- # Instead all data is provided by the nodes
- return
-
self._initialize_agent_based_data_sources()
self._initialize_snmp_data_sources()
self._initialize_management_board_data_sources()
diff --git a/cmk_base/data_sources/abstract.py b/cmk_base/data_sources/abstract.py
index 7afea91..1a599ac 100644
--- a/cmk_base/data_sources/abstract.py
+++ b/cmk_base/data_sources/abstract.py
@@ -726,6 +726,45 @@ class CheckMKAgentDataSource(DataSource):
return agent_info
+ def _is_expected_agent_version(self, agent_version, expected_version):
+ try:
+ if agent_version in [ '(unknown)', None, 'None' ]:
+ return False
+
+ if type(expected_version) == str and expected_version != agent_version:
+ return False
+
+ elif type(expected_version) == tuple and expected_version[0] ==
'at_least':
+ spec = expected_version[1]
+ if cmk_base.utils.is_daily_build_version(agent_version) and
'daily_build' in spec:
+ expected = int(spec['daily_build'].replace('.',
''))
+
+ branch = cmk_base.utils.branch_of_daily_build(agent_version)
+ if branch == "master":
+ agent = int(agent_version.replace('.', ''))
+
+ else: # branch build (e.g. 1.2.4-2014.06.01)
+ agent =
int(agent_version.split('-')[1].replace('.', ''))
+
+ if agent < expected:
+ return False
+
+ elif 'release' in spec:
+ if cmk_base.utils.is_daily_build_version(agent_version):
+ return False
+
+ if cmk_base.utils.parse_check_mk_version(agent_version) \
+ <
cmk_base.utils.parse_check_mk_version(spec['release']):
+ return False
+
+ return True
+ except Exception, e:
+ if cmk.debug.enabled():
+ raise
+ raise MKGeneralException("Unable to check agent version (Agent: %s
Expected: %s, Error: %s)" %
+ (agent_version, expected_version, e))
+
+
class ManagementBoardDataSource(DataSource):
"""Abstract base class for all data sources that work with the
management board configuration"""
diff --git a/cmk_base/data_sources/tcp.py b/cmk_base/data_sources/tcp.py
index 42875b6..1572425 100644
--- a/cmk_base/data_sources/tcp.py
+++ b/cmk_base/data_sources/tcp.py
@@ -194,45 +194,6 @@ class TCPDataSource(CheckMKAgentDataSource):
return status, output, perfdata
- def _is_expected_agent_version(self, agent_version, expected_version):
- try:
- if agent_version in [ '(unknown)', None, 'None' ]:
- return False
-
- if type(expected_version) == str and expected_version != agent_version:
- return False
-
- elif type(expected_version) == tuple and expected_version[0] ==
'at_least':
- spec = expected_version[1]
- if cmk_base.utils.is_daily_build_version(agent_version) and
'daily_build' in spec:
- expected = int(spec['daily_build'].replace('.',
''))
-
- branch = cmk_base.utils.branch_of_daily_build(agent_version)
- if branch == "master":
- agent = int(agent_version.replace('.', ''))
-
- else: # branch build (e.g. 1.2.4-2014.06.01)
- agent =
int(agent_version.split('-')[1].replace('.', ''))
-
- if agent < expected:
- return False
-
- elif 'release' in spec:
- if cmk_base.utils.is_daily_build_version(agent_version):
- return False
-
- if cmk_base.utils.parse_check_mk_version(agent_version) \
- <
cmk_base.utils.parse_check_mk_version(spec['release']):
- return False
-
- return True
- except Exception, e:
- if cmk.debug.enabled():
- raise
- raise MKGeneralException("Unable to check agent version (Agent: %s
Expected: %s, Error: %s)" %
- (agent_version, expected_version, e))
-
-
def _decrypt_package(self, encrypted_pkg, encryption_key):
from Cryptodome.Cipher import AES
from hashlib import md5