[dts] [PATCH] framework: add virt_type option for virt type(kvm/libvirt) selection

Herbert Guan herbert.guan at arm.com
Tue Jan 9 07:00:55 CET 2018


Allow users to use test config file to specify virt type(kvm, libvirt, etc) by
'virt_type' option.  If not specified in config file, the default virt_type
is kvm (qemu_kvm).


Signed-off-by: Herbert Guan <herbert.guan at arm.com>
---
 framework/virt_base.py | 16 ++++++++++++++--
 1 file changed, 14 insertions(+), 2 deletions(-)

diff --git a/framework/virt_base.py b/framework/virt_base.py
index 1838ca1..cd6dc0c 100644
--- a/framework/virt_base.py
+++ b/framework/virt_base.py
@@ -98,13 +98,22 @@ class VirtBase(object):
         """
         Get the virtual type, such as KVM, XEN or LIBVIRT.
         """
-        NotImplemented
+        conf = VirtConf(CONFIG_ROOT_PATH + os.sep + self.suite + '.cfg')
+        conf.load_virt_config(self.vm_name)
+        local_conf = conf.get_virt_config()
+        for param in local_conf:
+            if 'virt_type' in param.keys():
+                return param['virt_type'][0]['virt_type']
+        # if virt_type is not existing in config file, return 'KVM' by default
+        return 'KVM'
+
 
     def has_virtual_ability(self):
         """
         Check if the host have the ability of virtualization.
         """
-        NotImplemented
+        # Return True for non-derived virt_base object.
+        return True
 
     def enable_virtual_ability(self):
         """
@@ -140,6 +149,9 @@ class VirtBase(object):
             if 'cpu' in param.keys():
                 self.__save_local_config('cpu', param['cpu'])
                 continue
+            if 'virt_type' in param.keys():
+                # param 'virt_type' is for virt_base only
+                continue
             # save local configurations
             for key in param.keys():
                 self.__save_local_config(key, param[key])
-- 
1.8.3.1



More information about the dts mailing list