From: Cédric Ollivier Date: Mon, 28 Jan 2019 15:56:57 +0000 (+0100) Subject: Wait for apps being active (juju_epc) X-Git-Tag: opnfv-9.0.0~86^2 X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=commitdiff_plain;h=refs%2Fchanges%2F05%2F66705%2F2;p=functest.git Wait for apps being active (juju_epc) It seems that juju-wait doesn't wait for all apps. Juju_epc passes in functest-virtual thanks to that additional tries. Change-Id: I161902c6308cfa6323c21e09140d16e036768ece Signed-off-by: Cédric Ollivier --- diff --git a/functest/opnfv_tests/vnf/epc/juju_epc.py b/functest/opnfv_tests/vnf/epc/juju_epc.py index ea09084df..3830907a6 100644 --- a/functest/opnfv_tests/vnf/epc/juju_epc.py +++ b/functest/opnfv_tests/vnf/epc/juju_epc.py @@ -264,14 +264,20 @@ class JujuEpc(singlevm.VmReady2): def check_app(self, name='abot-epc-basic', status='active'): """Check application status.""" cmd = ['juju', 'status', '--format', 'short', name] - output = subprocess.check_output(cmd, stderr=subprocess.STDOUT) - self.__logger.info("%s\n%s", " ".join(cmd), output) - ret = re.search(r'(?=workload:({})\))'.format(status), output) - if ret: - self.__logger.info("%s workload is %s", name, status) - return True - self.__logger.error("%s workload differs from %s", name, status) - return False + for i in range(10): + output = subprocess.check_output(cmd, stderr=subprocess.STDOUT) + self.__logger.info("%s\n%s", " ".join(cmd), output) + ret = re.search(r'(?=workload:({})\))'.format(status), output) + if ret: + self.__logger.info("%s workload is %s", name, status) + break + self.__logger.info( + "loop %d: %s workload differs from %s", i + 1, name, status) + time.sleep(60) + else: + self.__logger.error("%s workload differs from %s", name, status) + return False + return True def deploy_vnf(self): """Deploy ABOT-OAI-EPC."""