8784: Fix service discovery race in tests (send SIGHUP to keep-web).
authorTom Clegg <tom@curoverse.com>
Wed, 21 Jun 2017 15:25:39 +0000 (11:25 -0400)
committerTom Clegg <tom@curoverse.com>
Wed, 21 Jun 2017 15:34:50 +0000 (11:34 -0400)
Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tom@curoverse.com>

sdk/python/tests/run_test_server.py

index cca51b8a437e8d8d76c9101e0d2478fb7adc2840..8a8f7ad57717ba3d9ddbb81097b430349b25dd47 100644 (file)
@@ -493,14 +493,15 @@ def run_keep(blob_signing_key=None, enforce_permissions=False, num_servers=2):
             'keep_disk': {'keep_service_uuid': svc['uuid'] }
         }).execute()
 
-    # If keepproxy is running, send SIGHUP to make it discover the new
-    # keepstore services.
-    proxypidfile = _pidfile('keepproxy')
-    if os.path.exists(proxypidfile):
-        try:
-            os.kill(int(open(proxypidfile).read()), signal.SIGHUP)
-        except OSError:
-            os.remove(proxypidfile)
+    # If keepproxy and/or keep-web is running, send SIGHUP to make
+    # them discover the new keepstore services.
+    for svc in ('keepproxy', 'keep-web'):
+        pidfile = _pidfile('keepproxy')
+        if os.path.exists(pidfile):
+            try:
+                os.kill(int(open(pidfile).read()), signal.SIGHUP)
+            except OSError:
+                os.remove(pidfile)
 
 def _stop_keep(n):
     kill_server_pid(_pidfile('keep{}'.format(n)))