]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
qa/tasks/qemu: add a parameter to wait for workloads detect qemu finished
authorMykola Golub <mgolub@suse.com>
Thu, 29 Mar 2018 11:06:13 +0000 (14:06 +0300)
committerMykola Golub <mgolub@suse.com>
Thu, 29 Mar 2018 14:43:31 +0000 (17:43 +0300)
In the case when a workload needs to detect qemu finished by running a
check with a periodicity of N sec it needs to set time_wait to 2 * N
in order to avoid races on finish.

Signed-off-by: Mykola Golub <mgolub@suse.com>
qa/tasks/qemu.py

index 82252e1e91c273267207b113fc4725db97b701b4..7a1abe8f5e9a8189b115332c3fcccb6d52654f77 100644 (file)
@@ -7,6 +7,7 @@ import contextlib
 import logging
 import os
 import yaml
+import time
 
 from teuthology import misc as teuthology
 from teuthology import contextutil
@@ -407,6 +408,7 @@ def run_qemu(ctx, config):
                     cachemode=cachemode,
                     ),
                 ])
+        time_wait = client_config.get('time_wait', 0)
 
         log.info('starting qemu...')
         procs.append(
@@ -424,6 +426,11 @@ def run_qemu(ctx, config):
         log.info('waiting for qemu tests to finish...')
         run.wait(procs)
 
+        if time_wait > 0:
+            log.debug('waiting {time_wait} sec for workloads detect finish...'.format(
+                time_wait=time_wait));
+            time.sleep(time_wait)
+
         log.debug('checking that qemu tests succeeded...')
         for client in config.iterkeys():
             (remote,) = ctx.cluster.only(client).remotes.keys()