diff options
| -rw-r--r-- | doc/developer/topotests.rst | 9 | ||||
| -rw-r--r-- | tests/topotests/lib/topogen.py | 7 | 
2 files changed, 14 insertions, 2 deletions
diff --git a/doc/developer/topotests.rst b/doc/developer/topotests.rst index e1702c47c7..1089287bc2 100644 --- a/doc/developer/topotests.rst +++ b/doc/developer/topotests.rst @@ -1292,6 +1292,15 @@ Example:             router.load_config(TopoRouter.RD_ZEBRA, "zebra.conf")             router.load_config(TopoRouter.RD_OSPF) +or using unified config (specifying which daemons to run is optional): + +.. code:: py + +      for _, (rname, router) in enumerate(router_list.items(), 1): +         router.load_frr_config(os.path.join(CWD, "{}/frr.conf".format(rname)), [ +            (TopoRouter.RD_ZEBRA, "-s 90000000"), +            (TopoRouter.RD_MGMTD, None), +            (TopoRouter.RD_BGP, None)]  - The topology definition or build function diff --git a/tests/topotests/lib/topogen.py b/tests/topotests/lib/topogen.py index 7941e5c1d2..8b01b9b317 100644 --- a/tests/topotests/lib/topogen.py +++ b/tests/topotests/lib/topogen.py @@ -824,6 +824,8 @@ class TopoRouter(TopoGear):          Loads the unified configuration file source          Start the daemons in the list          If daemons is None, try to infer daemons from the config file +        `daemons` is a tuple (daemon, param) of daemons to start, e.g.: +        (TopoRouter.RD_ZEBRA, "-s 90000000").          """          source_path = self.load_config(self.RD_FRR, source)          if not daemons: @@ -840,8 +842,9 @@ class TopoRouter(TopoGear):                  if result:                      self.load_config(daemon, "")          else: -            for daemon in daemons: -                self.load_config(daemon, "") +            for item in daemons: +                daemon, param = item +                self.load_config(daemon, "", param)      def load_config(self, daemon, source=None, param=None):          """Loads daemon configuration from the specified source  | 
