From 785b6d720ae8e175d42e67be4704962d37fb6cd5 Mon Sep 17 00:00:00 2001 From: Robin Sonnabend <robin@fsmpi.rwth-aachen.de> Date: Wed, 6 Jun 2018 12:19:28 +0200 Subject: [PATCH] Fix arrow direction, remove duplicate switch-switch lines --- mrtg/files/makeweather.py | 20 ++++++++------------ 1 file changed, 8 insertions(+), 12 deletions(-) diff --git a/mrtg/files/makeweather.py b/mrtg/files/makeweather.py index 5a38ef7..25cba00 100755 --- a/mrtg/files/makeweather.py +++ b/mrtg/files/makeweather.py @@ -94,12 +94,16 @@ def get_total_speed(links): return sum(link.get_speed() for link in links if link.get_speed() is not None) def group_links(links): - def _make_name(link): - return "{} {}".format(link.node_from, link.node_to) + def _make_name(link, invert=False): + name_from, name_to = link.node_from, link.node_to + if invert: + name_from, name_to = name_to, name_from + return "{} {}".format(name_from, name_to) groups = {} for link in links: name = _make_name(link) - groups[name] = groups.get(name, []) + [link] + if _make_name(link, invert=True) not in groups: + groups[name] = groups.get(name, []) + [link] result = [] for group in groups.values(): if any(link.is_portchannel for link in group): @@ -252,7 +256,7 @@ class ConfigWriter: def write_links(self, links): self.write("LINK {}".format(",".join(link.name for link in links))) - self.write("NODES {} {}".format(links[0].node_from, links[0].node_to), 1) + self.write("NODES {} {}".format(links[0].node_to, links[0].node_from), 1) self.write("TARGET {}".format(" ".join( os.path.join(self.source_path, link.name + ".html") for link in links)), 1) @@ -261,14 +265,6 @@ class ConfigWriter: self.write("WIDTH {}".format(6 if total_speed == 2 else (8 if total_speed == 20 else 4)), 1) self.write() - def write_link(self, link): - self.write("LINK {}".format(link.name)) - self.write("NODES {} {}".format(link.node_from, link.node_to), 1) - # TODO: bandwidth - self.write("TARGET {}".format( - os.path.join(self.source_path, link.name + ".html")), 1) - self.write() - if __name__ == "__main__": import argparse -- GitLab