mirror of
https://gitlab.com/qemu-project/qemu
synced 2024-09-06 18:05:37 +00:00
avocado_qemu/__init__.py: factor out the qemu-img finding
Factor out the code that finds the qemu-img binary in the QemuSystemTest class and create a new get_qemu_img() function with it. This function will get called also from the new code in tuxrun_baselines.py avocado test-case. Signed-off-by: Kautuk Consul <kconsul@linux.vnet.ibm.com> Reviewed-by: Harsh Prateek Bora <harshpb@linux.ibm.com> Suggested-by: Thomas Huth <thuth@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Message-Id: <20230421042322.684093-2-kconsul@linux.vnet.ibm.com> Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Message-Id: <20230424092249.58552-12-alex.bennee@linaro.org>
This commit is contained in:
parent
e354d99afc
commit
ab8eff7c1c
|
@ -330,6 +330,19 @@ def _new_vm(self, name, *args):
|
||||||
vm.add_args(*args)
|
vm.add_args(*args)
|
||||||
return vm
|
return vm
|
||||||
|
|
||||||
|
def get_qemu_img(self):
|
||||||
|
self.log.debug('Looking for and selecting a qemu-img binary')
|
||||||
|
|
||||||
|
# If qemu-img has been built, use it, otherwise the system wide one
|
||||||
|
# will be used.
|
||||||
|
qemu_img = os.path.join(BUILD_DIR, 'qemu-img')
|
||||||
|
if not os.path.exists(qemu_img):
|
||||||
|
qemu_img = find_command('qemu-img', False)
|
||||||
|
if qemu_img is False:
|
||||||
|
self.cancel('Could not find "qemu-img"')
|
||||||
|
|
||||||
|
return qemu_img
|
||||||
|
|
||||||
@property
|
@property
|
||||||
def vm(self):
|
def vm(self):
|
||||||
return self.get_vm(name='default')
|
return self.get_vm(name='default')
|
||||||
|
@ -602,17 +615,9 @@ def set_up_existing_ssh_keys(self):
|
||||||
return (ssh_public_key, ssh_private_key)
|
return (ssh_public_key, ssh_private_key)
|
||||||
|
|
||||||
def download_boot(self):
|
def download_boot(self):
|
||||||
self.log.debug('Looking for and selecting a qemu-img binary to be '
|
# Set the qemu-img binary.
|
||||||
'used to create the bootable snapshot image')
|
# If none is available, the test will cancel.
|
||||||
# If qemu-img has been built, use it, otherwise the system wide one
|
vmimage.QEMU_IMG = super().get_qemu_img()
|
||||||
# will be used. If none is available, the test will cancel.
|
|
||||||
qemu_img = os.path.join(BUILD_DIR, 'qemu-img')
|
|
||||||
if not os.path.exists(qemu_img):
|
|
||||||
qemu_img = find_command('qemu-img', False)
|
|
||||||
if qemu_img is False:
|
|
||||||
self.cancel('Could not find "qemu-img", which is required to '
|
|
||||||
'create the bootable image')
|
|
||||||
vmimage.QEMU_IMG = qemu_img
|
|
||||||
|
|
||||||
self.log.info('Downloading/preparing boot image')
|
self.log.info('Downloading/preparing boot image')
|
||||||
# Fedora 31 only provides ppc64le images
|
# Fedora 31 only provides ppc64le images
|
||||||
|
|
Loading…
Reference in a new issue