diff options
Diffstat (limited to 'tests/topotests/lib/topogen.py')
| -rw-r--r-- | tests/topotests/lib/topogen.py | 27 |
1 files changed, 16 insertions, 11 deletions
diff --git a/tests/topotests/lib/topogen.py b/tests/topotests/lib/topogen.py index 2d6138990e..6ddd223e25 100644 --- a/tests/topotests/lib/topogen.py +++ b/tests/topotests/lib/topogen.py @@ -84,7 +84,7 @@ def get_exabgp_cmd(commander=None): """Return the command to use for ExaBGP version < 4.""" if commander is None: - commander = Commander("topogen") + commander = Commander("exabgp", logger=logging.getLogger("exabgp")) def exacmd_version_ok(exacmd): logger.debug("checking %s for exabgp < version 4", exacmd) @@ -107,7 +107,7 @@ def get_exabgp_cmd(commander=None): exacmd = py2_path + " -m exabgp" if exacmd_version_ok(exacmd): return exacmd - py2_path = commander.get_exec_path("python") + py2_path = commander.get_exec_path("python") if py2_path: exacmd = py2_path + " -m exabgp" if exacmd_version_ok(exacmd): @@ -209,7 +209,11 @@ class Topogen(object): # Mininet(Micronet) to build the actual topology. assert not inspect.isclass(topodef) - self.net = Mininet(rundir=self.logdir, pytestconfig=topotest.g_pytest_config) + self.net = Mininet( + rundir=self.logdir, + pytestconfig=topotest.g_pytest_config, + logger=topolog.get_logger("mu", log_level="debug"), + ) # Adjust the parent namespace topotest.fix_netns_limits(self.net) @@ -798,23 +802,23 @@ class TopoRouter(TopoGear): Start the daemons in the list If daemons is None, try to infer daemons from the config file """ - self.load_config(self.RD_FRR, source) + source_path = self.load_config(self.RD_FRR, source) if not daemons: # Always add zebra - self.load_config(self.RD_ZEBRA) + self.load_config(self.RD_ZEBRA, "") for daemon in self.RD: # This will not work for all daemons daemonstr = self.RD.get(daemon).rstrip("d") if daemonstr == "pim": - grep_cmd = "grep 'ip {}' {}".format(daemonstr, source) + grep_cmd = "grep 'ip {}' {}".format(daemonstr, source_path) else: - grep_cmd = "grep 'router {}' {}".format(daemonstr, source) + grep_cmd = "grep 'router {}' {}".format(daemonstr, source_path) result = self.run(grep_cmd, warn=False).strip() if result: - self.load_config(daemon) + self.load_config(daemon, "") else: for daemon in daemons: - self.load_config(daemon) + self.load_config(daemon, "") def load_config(self, daemon, source=None, param=None): """Loads daemon configuration from the specified source @@ -833,7 +837,7 @@ class TopoRouter(TopoGear): """ daemonstr = self.RD.get(daemon) self.logger.debug('loading "{}" configuration: {}'.format(daemonstr, source)) - self.net.loadConf(daemonstr, source, param) + return self.net.loadConf(daemonstr, source, param) def check_router_running(self): """ @@ -1090,8 +1094,9 @@ class TopoSwitch(TopoGear): # pylint: disable=too-few-public-methods def __init__(self, tgen, name, **params): + logger = topolog.get_logger(name, log_level="debug") super(TopoSwitch, self).__init__(tgen, name, **params) - tgen.net.add_switch(name) + tgen.net.add_switch(name, logger=logger) def __str__(self): gear = super(TopoSwitch, self).__str__() |
