Reclass values print and message updates
diff --git a/cfg_checker/common/salt_utils.py b/cfg_checker/common/salt_utils.py
index 4955fae..d4bd007 100644
--- a/cfg_checker/common/salt_utils.py
+++ b/cfg_checker/common/salt_utils.py
@@ -44,7 +44,7 @@
_ssh_cmd.append(_salt_cmd)
_ssh_cmd = " ".join(_ssh_cmd)
- logger_cli.debug("### Calling salt: '{}'".format(_ssh_cmd))
+ logger_cli.debug("...calling salt: '{}'".format(_ssh_cmd))
_result = shell(_ssh_cmd)
if len(_result) < 1:
raise InvalidReturnException("# Empty value returned for '{}".format(
diff --git a/cfg_checker/modules/network/checker.py b/cfg_checker/modules/network/checker.py
index ccc7d62..24d751f 100644
--- a/cfg_checker/modules/network/checker.py
+++ b/cfg_checker/modules/network/checker.py
@@ -36,7 +36,7 @@
:return: none
"""
- logger_cli.info("### Collecting network data")
+ logger_cli.info("# Mapping node runtime network data")
_result = self.execute_script_on_active_nodes("ifs_data.py", args=["json"])
for key in self.nodes.keys():
@@ -47,7 +47,7 @@
self.nodes[key]['networks'] = _dict
else:
self.nodes[key]['networks'] = {}
- logger_cli.debug("# {} has {} networks".format(
+ logger_cli.debug("... {} has {} networks".format(
key,
len(self.nodes[key]['networks'].keys())
))
@@ -85,10 +85,11 @@
)
# save collected info
- self.all_networks = _all_nets
+ self.all_nets = _all_nets
def collect_reclass_networks(self):
+ logger_cli.info("# Mapping reclass networks")
# Get networks from reclass and mark them
_reclass_nets = {}
# Get required pillars
@@ -119,20 +120,46 @@
:return: none
"""
- for network, nodes in self.all_networks.iteritems():
+ _all_nets = self.all_nets.keys()
+ logger_cli.info("# Reclass networks")
+ _reclass = [n for n in _all_nets if n in self.reclass_nets]
+ for network in _reclass:
+ # shortcuts
logger_cli.info("-> {}".format(str(network)))
- names = sorted(nodes.keys())
+ names = sorted(self.all_nets[network].keys())
for hostname in names:
- _text = "{0:30}: {1:19} {2:5} {3:4}".format(
- nodes[hostname]['name'],
- str(nodes[hostname]['if'].ip),
- nodes[hostname]['mtu'],
- nodes[hostname]['state']
+ _a = self.all_nets[network][hostname]
+ _r = self.reclass_nets[network][hostname]
+ _text = "{0:30}: {1:19} {2:5}{3:10} {4}{5}".format(
+ _a['name'],
+ str(_a['if'].ip),
+ _a['mtu'],
+ '('+str(_r['mtu'])+')' if 'mtu' in _r else '(unset!)',
+ _a['state'],
+ "(enabled)" if _r['enabled'] else "(disabled)"
)
logger_cli.info(
"\t{0:10} {1}".format(hostname.split('.')[0], _text)
)
+
+ logger_cli.info("\n# Other networks")
+ _other = [n for n in _all_nets if n not in self.reclass_nets]
+ for network in _other:
+ logger_cli.info("-> {}".format(str(network)))
+ names = sorted(self.all_nets[network].keys())
+
+ for hostname in names:
+ _text = "{0:30}: {1:19} {2:5} {3:4}".format(
+ self.all_nets[network][hostname]['name'],
+ str(self.all_nets[network][hostname]['if'].ip),
+ self.all_nets[network][hostname]['mtu'],
+ self.all_nets[network][hostname]['state']
+ )
+ logger_cli.info(
+ "\t{0:10} {1}".format(hostname.split('.')[0], _text)
+ )
+
def create_html_report(self, filename):
"""
diff --git a/cfg_checker/modules/packages/checker.py b/cfg_checker/modules/packages/checker.py
index 61e84b5..797c0fe 100644
--- a/cfg_checker/modules/packages/checker.py
+++ b/cfg_checker/modules/packages/checker.py
@@ -19,7 +19,7 @@
:return: none
"""
- logger_cli.info("### Collecting installed packages")
+ logger_cli.info("# Collecting installed packages")
_result = self.execute_script_on_active_nodes("pkg_versions.py")
for key in self.nodes.keys():
@@ -30,7 +30,7 @@
self.nodes[key]['packages'] = _dict
else:
self.nodes[key]['packages'] = {}
- logger_cli.debug("# {} has {} packages installed".format(
+ logger_cli.debug("... {} has {} packages installed".format(
key,
len(self.nodes[key]['packages'].keys())
))
@@ -59,7 +59,7 @@
:return: buff with html
"""
- logger_cli.info("### Generating report to '{}'".format(filename))
+ logger_cli.info("# Generating report to '{}'".format(filename))
_report = reporter.ReportToFile(
reporter.HTMLPackageCandidates(),
filename
diff --git a/cfg_checker/modules/reclass/__init__.py b/cfg_checker/modules/reclass/__init__.py
index a695482..66576b6 100644
--- a/cfg_checker/modules/reclass/__init__.py
+++ b/cfg_checker/modules/reclass/__init__.py
@@ -37,7 +37,7 @@
def do_diff(args):
- logger_cli.info("Reclass comparer (HTML report: '{}'".format(args.file))
+ logger_cli.info("# Reclass comparer (HTML report: '{}'".format(args.file))
_filename = args_utils.get_file_arg(args)
# checking folder params
diff --git a/cfg_checker/modules/reclass/comparer.py b/cfg_checker/modules/reclass/comparer.py
index 0dec9d1..eaf1ce8 100644
--- a/cfg_checker/modules/reclass/comparer.py
+++ b/cfg_checker/modules/reclass/comparer.py
@@ -82,7 +82,7 @@
Arguments:
root_folder_path {string} -- Path to Model's root folder. Optional
"""
- logger_cli.info("Loading reclass tree from '{}'".format(root_path))
+ logger_cli.info("# Loading reclass tree from '{}'".format(root_path))
# prepare the file tree to walk
raw_tree = {}
# Credits to Andrew Clark@MIT. Original code is here:
diff --git a/cfg_checker/nodes.py b/cfg_checker/nodes.py
index a8c7cd1..798a8e5 100644
--- a/cfg_checker/nodes.py
+++ b/cfg_checker/nodes.py
@@ -19,13 +19,13 @@
class SaltNodes(object):
def __init__(self):
- logger_cli.info("### Collecting nodes")
+ logger_cli.info("# Collecting nodes")
# simple salt rest client
self.salt = salt_utils.SaltRemote()
# Keys for all nodes
# this is not working in scope of 2016.8.3, will overide with list
- logger_cli.info("# Collecting node names existing in the cloud")
+ logger_cli.debug("...collecting node names existing in the cloud")
try:
_keys = self.salt.list_keys()
_str = []
@@ -86,7 +86,7 @@
:return: no return value, data pulished internally
"""
- logger_cli.info("# Collecting node pillars for '{}'".format(pillar_path))
+ logger_cli.debug("...collecting node pillars for '{}'".format(pillar_path))
_result = self.salt.pillar_get(self.active_nodes_compound, pillar_path)
for node, data in self.nodes.iteritems():
_pillar_keys = pillar_path.split(':')
@@ -108,7 +108,7 @@
config.salt_file_root, config.salt_scripts_folder
)
logger_cli.debug(
- "# Uploading script {} to master's file cache folder: '{}'".format(
+ "...Uploading script {} to master's file cache folder: '{}'".format(
script_filename,
_storage_path
)
@@ -127,11 +127,11 @@
script_filename
)
- logger_cli.debug("# Creating file in cache '{}'".format(_cache_path))
+ logger_cli.debug("...creating file in cache '{}'".format(_cache_path))
_result = self.salt.f_touch_master(_cache_path)
_result = self.salt.f_append_master(_cache_path, _script)
# command salt to copy file to minions
- logger_cli.debug("# Creating script target folder '{}'".format(_cache_path))
+ logger_cli.debug("...creating script target folder '{}'".format(_cache_path))
_result = self.salt.mkdir(
self.active_nodes_compound,
os.path.join(