Allow listing hypervisors in VMTP 66/70366/1
authorCédric Ollivier <cedric.ollivier@orange.com>
Thu, 18 Jun 2020 14:46:29 +0000 (16:46 +0200)
committerCédric Ollivier <cedric.ollivier@orange.com>
Fri, 19 Jun 2020 09:34:12 +0000 (11:34 +0200)
It allows listing the compute under tests via VMTP_HYPERVISORS.
They are no additional log in Functest and the note in VMTP is still
valid [1].

[1] https://opendev.org/x/vmtp/src/branch/master/vmtp/vmtp.py#L833

Change-Id: Ic9fbda3901d796c0ed94e42e2a14c468598f4311
Signed-off-by: Cédric Ollivier <cedric.ollivier@orange.com>
(cherry picked from commit 3668a839dd9b869a3162c8aa2d98a152d22b7244)

functest/opnfv_tests/openstack/vmtp/vmtp.py
functest/utils/env.py

index 822c1b6..edff99c 100644 (file)
@@ -33,6 +33,7 @@ from xtesting.core import testcase
 
 from functest.core import singlevm
 from functest.utils import env
+from functest.utils import functest_utils
 
 
 class Vmtp(singlevm.VmReady2):
@@ -148,8 +149,15 @@ class Vmtp(singlevm.VmReady2):
             del new_env['OS_TENANT_ID']
         except Exception:  # pylint: disable=broad-except
             pass
+        extra_args = ""
+        if env.get("VMTP_HYPERVISORS"):
+            hypervisors = functest_utils.convert_ini_to_list(
+                env.get("VMTP_HYPERVISORS"))
+            for hypervisor in hypervisors:
+                extra_args = "{} --hypervisor {} ".format(
+                    extra_args, hypervisor)
         cmd = ['vmtp', '-d', '--json', '{}/vmtp.json'.format(self.res_dir),
-               '-c', self.config]
+               '-c', self.config, extra_args]
         output = subprocess.check_output(
             cmd, stderr=subprocess.STDOUT, env=new_env).decode("utf-8")
         self.__logger.info("%s\n%s", " ".join(cmd), output)
index 652613c..672aee1 100644 (file)
@@ -39,7 +39,8 @@ INPUTS = {
     'CLEAN_ORPHAN_SECURITY_GROUPS': 'True',
     'SKIP_DOWN_HYPERVISORS': 'False',
     'PUBLIC_ENDPOINT_ONLY': 'False',
-    'DASHBOARD_URL': ''
+    'DASHBOARD_URL': '',
+    'VMTP_HYPERVISORS': ''
 }