]> git.proxmox.com Git - mirror_frr.git/commitdiff
change in checkRunning: Check all daemons on all nodes before aborting with an assert
authorMartin Winter <mwinter@netdef.org>
Tue, 20 Dec 2016 08:19:52 +0000 (15:19 +0700)
committerDonald Sharp <sharpd@cumulusnetworks.com>
Wed, 28 Nov 2018 01:22:11 +0000 (20:22 -0500)
tests/topotests/bgp_multiview_topo1/test_bgp_multiview_topo1.py
tests/topotests/ospf6-topo1/test_ospf6_topo1.py

index b0834336d72bd5dd02ef96a7bee40b8e47ae4287..e0ee850c3c2c790e77228e34a9af4ce03bdf754d 100755 (executable)
@@ -190,6 +190,7 @@ class QuaggaRouter(Node):
         global fatal_error
 
         daemonsRunning = self.cmd('vtysh -c "show log" | grep "Logging configuration for"')
+        failed = []
         for daemon in self.daemons:
             if (self.daemons[daemon] == 1) and not (daemon in daemonsRunning):
                 sys.stderr.write("%s: Daemon %s not running\n" % (self.name, daemon))
@@ -205,9 +206,8 @@ class QuaggaRouter(Node):
                         log_tail = subprocess.check_output(["tail -n20 /tmp/%s-%s.log 2> /dev/null"  % (self.name, daemon)], shell=True)
                         sys.stderr.write("\nFrom quagga %s %s log file:\n" % (self.name, daemon))
                         sys.stderr.write("%s\n" % log_tail)
-
-                fatal_error = "%s: Daemon %s not running" % (self.name, daemon)
-                assert False, "%s: Daemon %s not running" % (self.name, daemon)
+                failed += [daemon]
+        return failed
 
 class LegacySwitch(OVSSwitch):
     "A Legacy Switch without OpenFlow"
@@ -331,9 +331,15 @@ def test_quagga_running():
     print("******************************************\n")
     sleep(5)
 
-    # Starting Routers
-    for i in range(1, 2):
-        net['r%s' % i].checkQuaggaRunning()
+    # CLI(net)
+    failedRunning = ""
+    for i in range(1, 5):
+        failedDaemon = net['r%s' % i].checkQuaggaRunning()
+        if failedDaemon:
+            failedRunning += "   Daemons failed on r%s: %s\n" % (i, failedDaemon)
+    if failedRunning:
+        fatal_error = "Some Daemons failed to start or crashed"
+        assert False, "Daemons failed to start or crashed:\n%s" % failedRunning        
 
 def test_bgp_converge():
     "Check for BGP converged on all peers and BGP views"
index 09dc538bafc86a2d554e500cb9add081ab7678b8..2a79380130561eabe1c42cf857122fe3b988ba82 100755 (executable)
@@ -197,6 +197,7 @@ class QuaggaRouter(Node):
         global fatal_error
 
         daemonsRunning = self.cmd('vtysh -c "show log" | grep "Logging configuration for"')
+        failed = []
         for daemon in self.daemons:
             if (self.daemons[daemon] == 1) and not (daemon in daemonsRunning):
                 sys.stderr.write("%s: Daemon %s not running\n" % (self.name, daemon))
@@ -212,9 +213,8 @@ class QuaggaRouter(Node):
                         log_tail = subprocess.check_output(["tail -n20 /tmp/%s-%s.log 2> /dev/null"  % (self.name, daemon)], shell=True)
                         sys.stderr.write("\nFrom quagga %s %s log file:\n" % (self.name, daemon))
                         sys.stderr.write("%s\n" % log_tail)
-
-                fatal_error = "%s: Daemon %s not running" % (self.name, daemon)
-                assert False, "%s: Daemon %s not running" % (self.name, daemon)
+                failed += [daemon]
+        return failed
     def get_ipv6_linklocal(self):
         "Get LinkLocal Addresses from interfaces"
 
@@ -347,9 +347,15 @@ def test_quagga_running():
     print("******************************************\n")
     sleep(5)
 
-    # Starting Routers
+    # CLI(net)
+    failedRunning = ""
     for i in range(1, 5):
-        net['r%s' % i].checkQuaggaRunning()
+        failedDaemon = net['r%s' % i].checkQuaggaRunning()
+        if failedDaemon:
+            failedRunning += "   Daemons failed on r%s: %s\n" % (i, failedDaemon)
+    if failedRunning:
+        fatal_error = "Some Daemons failed to start or crashed"
+        assert False, "Daemons failed to start or crashed:\n%s" % failedRunning        
 
 
 def test_ospf6_converged():