Accepting request 993362 from home:bnavigator:branches:Virtualization

Please forgive my impatience, but now that this is the last package failing to
build in the Staging for setuptools and python-rpm-build, I would like this to
get fixed.

- Update to 4.1.0
- Drop patches merged upstream:
- Refresh patches
- Refresh test skips

OBS-URL: https://build.opensuse.org/request/show/993362
OBS-URL: https://build.opensuse.org/package/show/Virtualization/virt-manager?expand=0&rev=575
This commit is contained in:
Charles Arnold 2022-08-05 18:49:45 +00:00 committed by Git OBS Bridge
parent f21dbeb9cf
commit 7cf2b8d29d
15 changed files with 540 additions and 625 deletions

View File

@ -1,68 +0,0 @@
Subject: cli: Add iothreadids attributes thread_pool_min and thread_pool_max
From: Lin Ma lma@suse.com Fri Jul 29 19:16:05 2022 +0800
Date: Mon Aug 1 11:32:23 2022 -0400:
Git: 0d84bcfbfa2aa08396e836cb37fd0df167a6f6a4
These two optional attributes allow setting lower and upper boundary for
number of worker threads for given IOThread. For example:
--iothreads iothreads=2,\
iothreadids.iothread0.id=1,\
iothreadids.iothread1.id=2,\
iothreadids.iothread1.thread_pool_min=8,\
iothreadids.iothread1.thread_pool_max=16
Signed-off-by: Lin Ma <lma@suse.com>
--- a/tests/data/cli/compare/virt-install-many-devices.xml
+++ b/tests/data/cli/compare/virt-install-many-devices.xml
@@ -12,7 +12,7 @@
<iothreads>5</iothreads>
<iothreadids>
<iothread id="1"/>
- <iothread id="2"/>
+ <iothread id="2" thread_pool_min="8" thread_pool_max="16"/>
</iothreadids>
<memory>65536</memory>
<currentMemory>65536</currentMemory>
--- a/tests/test_cli.py
+++ b/tests/test_cli.py
@@ -540,7 +540,7 @@ memorytune0.vcpus=0-3,memorytune0.node0.
--memorybacking size=1,unit='G',nodeset=0,1,nosharepages=yes,locked=yes,discard=yes,allocation.mode=immediate,access_mode=shared,source_type=file,hugepages.page.size=12,hugepages.page1.size=1234,hugepages.page1.unit=MB,hugepages.page1.nodeset=2
---iothreads iothreads=5,iothreadids.iothread1.id=1,iothreadids.iothread2.id=2
+--iothreads iothreads=5,iothreadids.iothread0.id=1,iothreadids.iothread1.id=2,iothreadids.iothread1.thread_pool_min=8,iothreadids.iothread1.thread_pool_max=16
--metadata title=my-title,description=my-description,uuid=00000000-1111-2222-3333-444444444444,genid=e9392370-2917-565e-692b-d057f46512d6,genid_enable=yes
--- a/virtinst/cli.py
+++ b/virtinst/cli.py
@@ -2612,7 +2612,11 @@ class ParserIOThreads(VirtCLIParser):
# Options for IOThreads config
cls.add_arg("iothreads", "iothreads")
cls.add_arg("iothreadids.iothread[0-9]*.id", "id",
- find_inst_cb=cls.iothreads_find_inst_cb)
+ find_inst_cb=cls.iothreads_find_inst_cb)
+ cls.add_arg("iothreadids.iothread[0-9]*.thread_pool_min",
+ "thread_pool_min", find_inst_cb=cls.iothreads_find_inst_cb)
+ cls.add_arg("iothreadids.iothread[0-9]*.thread_pool_max",
+ "thread_pool_max", find_inst_cb=cls.iothreads_find_inst_cb)
###################
--- a/virtinst/guest.py
+++ b/virtinst/guest.py
@@ -67,9 +67,11 @@ class _DomainDevices(XMLBuilder):
class _IOThreadID(XMLBuilder):
XML_NAME = "iothread"
- _XML_PROP_ORDER = ["id"]
+ _XML_PROP_ORDER = ["id", "thread_pool_min", "thread_pool_max"]
id = XMLProperty("./@id", is_int=True)
+ thread_pool_min = XMLProperty("./@thread_pool_min", is_int=True)
+ thread_pool_max = XMLProperty("./@thread_pool_max", is_int=True)
class Guest(XMLBuilder):

View File

@ -1,37 +0,0 @@
Subject: tests: Fix with latest argcomplete
From: Cole Robinson crobinso@redhat.com Mon Jun 13 12:55:31 2022 -0400
Date: Mon Jun 13 13:20:01 2022 -0400:
Git: 34662fecc9535c7d8d0a8e7d42fafa4b9e005c89
Signed-off-by: Cole Robinson <crobinso@redhat.com>
diff --git a/virtinst/cli.py b/virtinst/cli.py
index 52be9f29..c42fc0f0 100644
--- a/virtinst/cli.py
+++ b/virtinst/cli.py
@@ -552,7 +552,15 @@ def autocomplete(parser):
kwargs = {"validator": _completer_validator}
if xmlutil.in_testsuite():
import io
- kwargs["output_stream"] = io.BytesIO()
+ class MyStream(io.StringIO):
+ # Custom class to handle both bytes() and str() on write.
+ # With argcomplete 2.0.0 and/or python3.10 something changed
+ # here, so this should hopefully cover back compat
+ def write(self, msg, *args, **kwargs):
+ if type(msg) is bytes:
+ msg = msg.decode("utf-8") # pragma: no cover
+ return super().write(msg, *args, **kwargs)
+ kwargs["output_stream"] = MyStream()
kwargs["exit_method"] = sys.exit
# This fdopen hackery is to avoid argcomplete debug_stream behavior
@@ -568,7 +576,7 @@ def autocomplete(parser):
argcomplete.autocomplete(parser, **kwargs)
except SystemExit:
if xmlutil.in_testsuite():
- output = kwargs["output_stream"].getvalue().decode("utf-8")
+ output = kwargs["output_stream"].getvalue()
print(output)
raise

View File

@ -1,158 +0,0 @@
Subject: launch_security: Use SEV-ES policy=0x07 if host supports it
From: Charles Arnold carnold@suse.com Wed Aug 3 08:47:02 2022 -0400
Date: Wed Aug 3 08:47:35 2022 -0400:
Git: 424283ad1db9c4da519fac698486967e6b6557b0
--- /dev/null
+++ b/tests/data/cli/compare/virt-install-amd-sev.xml
@@ -0,0 +1,89 @@
+<domain type="kvm">
+ <name>linux2020</name>
+ <uuid>00000000-1111-2222-3333-444444444444</uuid>
+ <metadata>
+ <libosinfo:libosinfo xmlns:libosinfo="http://libosinfo.org/xmlns/libvirt/domain/1.0">
+ <libosinfo:os id="http://libosinfo.org/linux/2020"/>
+ </libosinfo:libosinfo>
+ </metadata>
+ <memory>65536</memory>
+ <currentMemory>65536</currentMemory>
+ <vcpu>2</vcpu>
+ <os>
+ <type arch="x86_64" machine="q35">hvm</type>
+ <loader readonly="yes" type="pflash">/usr/share/OVMF/OVMF_CODE.fd</loader>
+ <boot dev="hd"/>
+ </os>
+ <features>
+ <acpi/>
+ <apic/>
+ <vmport state="off"/>
+ </features>
+ <cpu mode="host-passthrough"/>
+ <clock offset="utc">
+ <timer name="rtc" tickpolicy="catchup"/>
+ <timer name="pit" tickpolicy="delay"/>
+ <timer name="hpet" present="no"/>
+ </clock>
+ <pm>
+ <suspend-to-mem enabled="no"/>
+ <suspend-to-disk enabled="no"/>
+ </pm>
+ <devices>
+ <emulator>/usr/bin/qemu-system-x86_64</emulator>
+ <disk type="file" device="disk">
+ <driver name="qemu" type="qcow2" discard="unmap"/>
+ <source file="/var/lib/libvirt/images/linux2020.qcow2"/>
+ <target dev="vda" bus="virtio"/>
+ </disk>
+ <controller type="usb" model="qemu-xhci" ports="15"/>
+ <controller type="pci" model="pcie-root"/>
+ <controller type="pci" model="pcie-root-port"/>
+ <controller type="pci" model="pcie-root-port"/>
+ <controller type="pci" model="pcie-root-port"/>
+ <controller type="pci" model="pcie-root-port"/>
+ <controller type="pci" model="pcie-root-port"/>
+ <controller type="pci" model="pcie-root-port"/>
+ <controller type="pci" model="pcie-root-port"/>
+ <controller type="pci" model="pcie-root-port"/>
+ <controller type="pci" model="pcie-root-port"/>
+ <controller type="pci" model="pcie-root-port"/>
+ <controller type="pci" model="pcie-root-port"/>
+ <controller type="pci" model="pcie-root-port"/>
+ <controller type="pci" model="pcie-root-port"/>
+ <controller type="pci" model="pcie-root-port"/>
+ <interface type="bridge">
+ <source bridge="testsuitebr0"/>
+ <mac address="00:11:22:33:44:55"/>
+ <model type="virtio"/>
+ </interface>
+ <console type="pty"/>
+ <channel type="unix">
+ <source mode="bind"/>
+ <target type="virtio" name="org.qemu.guest_agent.0"/>
+ </channel>
+ <channel type="spicevmc">
+ <target type="virtio" name="com.redhat.spice.0"/>
+ </channel>
+ <input type="tablet" bus="usb"/>
+ <tpm model="tpm-crb">
+ <backend type="emulator"/>
+ </tpm>
+ <graphics type="spice" port="-1" tlsPort="-1" autoport="yes">
+ <image compression="off"/>
+ </graphics>
+ <sound model="ich9"/>
+ <video>
+ <model type="virtio"/>
+ </video>
+ <redirdev bus="usb" type="spicevmc"/>
+ <redirdev bus="usb" type="spicevmc"/>
+ <memballoon model="virtio"/>
+ <rng model="virtio">
+ <backend model="random">/dev/urandom</backend>
+ </rng>
+ </devices>
+ <launchSecurity type="sev">
+ <policy>0x07</policy>
+ </launchSecurity>
+</domain>
--- a/tests/test_cli.py
+++ b/tests/test_cli.py
@@ -1098,6 +1098,7 @@ c.add_compare("--connect " + utils.URIs.
c.add_compare("--connect %(URI-KVM-X86)s --os-variant fedora26 --graphics spice --controller usb,model=none", "graphics-usb-disable")
c.add_compare("--osinfo generic --boot uefi --disk size=1", "boot-uefi")
c.add_compare("--osinfo generic --boot uefi --disk size=1 --tpm none --connect " + utils.URIs.kvm_x86_oldfirmware, "boot-uefi-oldcaps")
+c.add_compare("--osinfo linux2020 --boot uefi --launchSecurity sev --connect " + utils.URIs.kvm_amd_sev, "amd-sev")
c.add_invalid("--disk none --location nfs:example.com/fake --nonetworks", grep="NFS URL installs are no longer supported")
c.add_invalid("--disk none --boot network --machine foobar", grep="domain type None with machine 'foobar'")
--- a/virtinst/domain/launch_security.py
+++ b/virtinst/domain/launch_security.py
@@ -22,13 +22,15 @@ class DomainLaunchSecurity(XMLBuilder):
if not guest.os.is_q35() or not guest.is_uefi():
raise RuntimeError(_("SEV launch security requires a Q35 UEFI machine"))
- # 'policy' is a mandatory 4-byte argument for the SEV firmware,
- # if missing, let's use 0x03 which, according to the table at
- # https://libvirt.org/formatdomain.html#launchSecurity:
- # (bit 0) - disables the debugging mode
- # (bit 1) - disables encryption key sharing across multiple guests
+ # The 'policy' is a mandatory 4-byte argument for the SEV firmware.
+ # If missing, we use 0x03 for the original SEV implementation and
+ # 0x07 for SEV-ES.
+ # Reference: https://libvirt.org/formatdomain.html#launchSecurity
if self.policy is None:
+ domcaps = guest.lookup_domcaps()
self.policy = "0x03"
+ if domcaps.supports_sev_launch_security(check_es=True):
+ self.policy = "0x07"
def set_defaults(self, guest):
if self.type == "sev":
--- a/virtinst/domcapabilities.py
+++ b/virtinst/domcapabilities.py
@@ -93,6 +93,7 @@ def _make_capsblock(xml_root_name):
class _SEV(XMLBuilder):
XML_NAME = "sev"
supported = XMLProperty("./@supported", is_yesno=True)
+ maxESGuests = XMLProperty("./maxESGuests")
#############################
@@ -390,12 +391,15 @@ class DomainCapabilities(XMLBuilder):
# Misc support methods #
########################
- def supports_sev_launch_security(self):
+ def supports_sev_launch_security(self, check_es=False):
"""
Returns False if either libvirt doesn't advertise support for SEV at
all (< libvirt-4.5.0) or if it explicitly advertises it as unsupported
on the platform
"""
+ if check_es:
+ return bool(self.features.sev.supported and
+ self.features.sev.maxESGuests)
return bool(self.features.sev.supported)
def supports_video_bochs(self):

View File

@ -1,28 +0,0 @@
Subject: setup: add bits for setuptools-61
From: Peter Alfredsen crabbedhaloablution@icloud.com Tue Apr 5 22:04:20 2022 +0200
Date: Wed Apr 13 08:35:40 2022 -0400:
Git: 46dc0616308a73d1ce3ccc6d716cf8bbcaac6474
Quoting https://github.com/pypa/setuptools/issues/3227
"Setuptools >= 61, intentionally changes the way packages are built in the
sensec that it will try to find files and fail if something is weird.
Empty packages (like this one), are asked to explicitly add packages=[]
to their configuration.
This intentional change in behaviour is described in
https://setuptools.pypa.io/en/latest/history.html#v61-0-0."
Bug: https://bugs.gentoo.org/836645
Signed-off-by: Peter Alfredsen <crabbedhaloablution@icloud.com>
diff --git a/setup.py b/setup.py
index e95acd39..7e47e7c7 100755
--- a/setup.py
+++ b/setup.py
@@ -547,4 +547,5 @@ setuptools.setup(
},
distclass=VMMDistribution,
+ packages=[],
)

View File

@ -1,32 +0,0 @@
Subject: Fix build with setuptools 61+
From: Miro Hrončok miro@hroncok.cz Tue Aug 2 16:39:36 2022 +0200
Date: Tue Aug 2 12:05:39 2022 -0400:
Git: 90e13549b4f2dd74b3343a3a28c30f31c20032d5
+ ./setup.py configure --default-hvs qemu,xen,lxc
error: Multiple top-level packages discovered in a flat-layout: ['po', 'ui', 'man', 'data', 'virtinst', 'virtManager'].
To avoid accidental inclusion of unwanted files or directories,
setuptools will not proceed with this build.
If you are trying to create a single distribution with multiple packages
on purpose, you should not rely on automatic discovery.
Instead, consider the following options:
1. set up custom discovery (`find` directive with `include` or `exclude`)
2. use a `src-layout`
3. explicitly set `py_modules` or `packages` with a list of names
To find more information, look for "package discovery" on setuptools docs.
Downstream bug report: https://bugzilla.redhat.com/2113754
diff --git a/setup.py b/setup.py
index 6a546606..b45d315a 100755
--- a/setup.py
+++ b/setup.py
@@ -530,6 +530,9 @@ setuptools.setup(
glob.glob("virtinst/install/*.py")),
],
+ # stop setuptools 61+ thinking we want to include everything automatically
+ py_modules=[],
+
cmdclass={
'build': my_build,
'build_i18n': my_build_i18n,

View File

@ -1,33 +0,0 @@
Subject: tests: Fix another sgio=filtered case
From: Cole Robinson crobinso@redhat.com Wed Apr 13 08:16:47 2022 -0400
Date: Wed Apr 13 08:35:50 2022 -0400:
Git: 9ac94ef739687b9eeba37e8b28108269802db280
Signed-off-by: Cole Robinson <crobinso@redhat.com>
diff --git a/tests/data/cli/compare/virt-install-many-devices.xml b/tests/data/cli/compare/virt-install-many-devices.xml
index 4c002422..db61f511 100644
--- a/tests/data/cli/compare/virt-install-many-devices.xml
+++ b/tests/data/cli/compare/virt-install-many-devices.xml
@@ -249,7 +249,7 @@
<source file="/var/lib/libvirt/images/disk.qcow2"/>
<target dev="vdc" bus="virtio"/>
</disk>
- <disk type="block" device="lun" sgio="unfiltered" rawio="yes">
+ <disk type="block" device="lun" sgio="filtered" rawio="yes">
<driver name="qemu" type="raw"/>
<source dev="/pool-iscsi/diskvol1"/>
<target dev="sdab" bus="scsi"/>
diff --git a/tests/test_cli.py b/tests/test_cli.py
index 8b78a1a7..6a0df787 100644
--- a/tests/test_cli.py
+++ b/tests/test_cli.py
@@ -579,7 +579,7 @@ memorytune0.vcpus=0-3,memorytune0.node0.id=0,memorytune0.node0.bandwidth=60
--disk source.file=%(NEWIMG1)s,sparse=false,size=.001,perms=ro,error_policy=enospace,detect_zeroes=unmap,address.type=drive,address.controller=0,address.target=2,address.unit=0
--disk device=cdrom,bus=sata,read_bytes_sec=1,read_iops_sec=2,write_bytes_sec=5,write_iops_sec=6,driver.copy_on_read=on,geometry.cyls=16383,geometry.heads=16,geometry.secs=63,geometry.trans=lba,discard=ignore
--disk size=1
---disk /pool-iscsi/diskvol1,total_bytes_sec=10,total_iops_sec=20,bus=scsi,device=lun,sgio=unfiltered,rawio=yes
+--disk /pool-iscsi/diskvol1,total_bytes_sec=10,total_iops_sec=20,bus=scsi,device=lun,sgio=filtered,rawio=yes
--disk /pool-dir/iso-vol,seclabel.model=dac,seclabel1.model=selinux,seclabel1.relabel=no,seclabel0.label=foo,bar,baz,iotune.read_bytes_sec=1,iotune.read_iops_sec=2,iotune.write_bytes_sec=5,iotune.write_iops_sec=6
--disk /pool-dir/iso-vol,format=qcow2,startup_policy=optional,iotune.total_bytes_sec=10,iotune.total_iops_sec=20,
--disk source_pool=pool-rbd-ceph,source_volume=some-rbd-vol,size=.1,driver_type=raw,driver_name=qemu

View File

@ -1,23 +0,0 @@
Subject: domain: cpu: Clear 'migratable' when changing to custom cpu
From: Lin Ma lma@suse.com Wed Jul 20 14:53:32 2022 +0800
Date: Mon Aug 1 10:11:43 2022 -0400:
Git: b8a77805b0606191c368f8aaf8254f2569b7278a
Otherwise going host-passthrough -> custom can cause libvirt validation
error due to libvirt fills the default value(migratable='on') for the
host-passthrough in domain XML.
Signed-off-by: Lin Ma <lma@suse.com>
diff --git a/virtinst/domain/cpu.py b/virtinst/domain/cpu.py
index e40c5307..5de42b4e 100644
--- a/virtinst/domain/cpu.py
+++ b/virtinst/domain/cpu.py
@@ -358,6 +358,7 @@ class DomainCpu(XMLBuilder):
def set_model(self, guest, val):
log.debug("setting cpu model %s", val)
+ self.migratable = None
if val:
self.mode = "custom"
if not self.match:

View File

@ -1,50 +0,0 @@
Subject: tests: Drop usage of sgio=unfiltered
From: Cole Robinson crobinso@redhat.com Wed Apr 13 07:00:37 2022 -0400
Date: Wed Apr 13 07:00:37 2022 -0400:
Git: c61074191d0d25ab7cd7830ef90a49a3caefcd09
libvirt 8.1.0+ rejects it, so it breaks the testsuite
Fixes: #382
Signed-off-by: Cole Robinson <crobinso@redhat.com>
diff --git a/tests/data/testdriver/testdriver.xml b/tests/data/testdriver/testdriver.xml
index 082ac095..b213863d 100644
--- a/tests/data/testdriver/testdriver.xml
+++ b/tests/data/testdriver/testdriver.xml
@@ -245,7 +245,7 @@ Foo bar baz &amp; yeah boii &lt; &gt; yeahfoo
<shareable/>
</disk>
- <disk type='block' device='lun' rawio='no' sgio='unfiltered'>
+ <disk type='block' device='lun' rawio='no'>
<driver name='qemu' type='raw'/>
<source dev='/dev/szz'>
<reservations managed="yes"/>
diff --git a/tests/data/xmlparse/change-disk-out.xml b/tests/data/xmlparse/change-disk-out.xml
index 66a70395..003750fb 100644
--- a/tests/data/xmlparse/change-disk-out.xml
+++ b/tests/data/xmlparse/change-disk-out.xml
@@ -37,7 +37,7 @@
<disk type="file" device="floppy">
<target dev="fde" bus="fdc"/>
</disk>
- <disk type="block" device="lun" sgio="unfiltered" rawio="yes">
+ <disk type="block" device="lun">
<driver name="qemu" type="raw"/>
<source dev="/dev/sda"/>
<target dev="hdd" bus="scsi"/>
diff --git a/tests/test_xmlparse.py b/tests/test_xmlparse.py
index 15ca8f75..1bf0ebe5 100644
--- a/tests/test_xmlparse.py
+++ b/tests/test_xmlparse.py
@@ -314,8 +314,6 @@ def testAlterDisk():
check = _make_checker(disk)
check("type", "block")
check("device", "lun")
- check("sgio", None, "unfiltered")
- check("rawio", None, "yes")
disk = _get_disk("sda")
check = _make_checker(disk)

View File

@ -1,154 +0,0 @@
Subject: Fix UI rename with firmware='efi'
From: Cole Robinson crobinso@redhat.com Sat Jun 18 16:16:38 2022 -0400
Date: Mon Jun 20 09:37:26 2022 -0400:
Git: d51541e155bd29389f804425356690ea55465551
Our code to duplicate nvram wasn't expecting the XML to be devoid
of an nvram path.
Resolves: https://github.com/virt-manager/virt-manager/issues/372
Signed-off-by: Cole Robinson <crobinso@redhat.com>
diff --git a/tests/uitests/data/live/uitests-firmware-efi.xml b/tests/uitests/data/live/uitests-firmware-efi.xml
new file mode 100644
index 00000000..b7463818
--- /dev/null
+++ b/tests/uitests/data/live/uitests-firmware-efi.xml
@@ -0,0 +1,14 @@
+<domain type="kvm">
+ <name>uitests-firmware-efi</name>
+ <memory>65536</memory>
+ <currentMemory>65536</currentMemory>
+ <vcpu>1</vcpu>
+ <os firmware='efi'>
+ <type arch="x86_64">hvm</type>
+ <boot dev="hd"/>
+ </os>
+ <features>
+ <acpi/>
+ </features>
+</domain>
+
diff --git a/tests/uitests/test_livetests.py b/tests/uitests/test_livetests.py
index 28884298..7ac2ee48 100644
--- a/tests/uitests/test_livetests.py
+++ b/tests/uitests/test_livetests.py
@@ -38,7 +38,7 @@ def _vm_wrapper(vmname, uri="qemu:///system", opts=None):
except Exception:
pass
try:
- dom.undefine()
+ dom.undefineFlags(libvirt.VIR_DOMAIN_UNDEFINE_NVRAM)
dom.destroy()
except Exception:
pass
@@ -499,3 +499,45 @@ def testLiveHotplug(app, dom):
pool.undefine()
except Exception:
log.debug("Error cleaning up pool", exc_info=True)
+
+
+@_vm_wrapper("uitests-firmware-efi")
+def testFirmwareRename(app, dom):
+ from virtinst import cli, DeviceDisk
+ win = app.topwin
+ dom.destroy()
+
+ # First we refresh the 'nvram' pool, so we can reliably
+ # check if nvram files are created/deleted as expected
+ conn = cli.getConnection(app.conn.getURI())
+ origname = dom.name()
+ nvramdir = conn.get_libvirt_data_root_dir() + "/qemu/nvram"
+
+ fakedisk = DeviceDisk(conn)
+ fakedisk.set_source_path(nvramdir + "/FAKE-UITEST-FILE")
+ nvram_pool = fakedisk.get_parent_pool()
+ nvram_pool.refresh()
+
+ origpath = "%s/%s_VARS.fd" % (nvramdir, origname)
+ newname = "uitests-firmware-efi-renamed"
+ newpath = "%s/%s_VARS.fd" % (nvramdir, newname)
+ assert DeviceDisk.path_definitely_exists(app.conn, origpath)
+ assert not DeviceDisk.path_definitely_exists(app.conn, newpath)
+
+ # Now do the actual UI clickage
+ win.find("Details", "radio button").click()
+ win.find("Hypervisor Details", "label")
+ win.find("Overview", "table cell").click()
+
+ newname = "uitests-firmware-efi-renamed"
+ win.find("Name:", "text").set_text(newname)
+ appl = win.find("config-apply")
+ appl.click()
+ lib.utils.check(lambda: not appl.sensitive)
+
+ # Confirm window was updated
+ app.find_window("%s on" % newname)
+
+ # Confirm nvram paths were altered as expected
+ assert not DeviceDisk.path_definitely_exists(app.conn, origpath)
+ assert DeviceDisk.path_definitely_exists(app.conn, newpath)
diff --git a/virtManager/object/domain.py b/virtManager/object/domain.py
index 70e4e49f..2d6f5bca 100644
--- a/virtManager/object/domain.py
+++ b/virtManager/object/domain.py
@@ -433,10 +433,8 @@ class vmmDomain(vmmLibvirtObject):
return False
def has_nvram(self):
- return bool(self.get_xmlobj().os.firmware == 'efi' or
- (self.get_xmlobj().os.loader_ro is True and
- self.get_xmlobj().os.loader_type == "pflash" and
- self.get_xmlobj().os.nvram))
+ return bool(self.get_xmlobj().is_uefi() or
+ self.get_xmlobj().os.nvram)
def is_persistent(self):
return bool(self._backend.isPersistent())
@@ -540,9 +538,32 @@ class vmmDomain(vmmLibvirtObject):
We need to do this copy magic because there is no Libvirt storage API
to rename storage volume.
"""
+ if not self.has_nvram():
+ return None, None
+
+ old_nvram_path = self.get_xmlobj().os.nvram
+ if not old_nvram_path:
+ # Probably using firmware=efi which doesn't put nvram
+ # path in the XML. Build the implied path
+ old_nvram_path = os.path.join(
+ self.conn.get_backend().get_libvirt_data_root_dir(),
+ self.conn.get_backend().get_uri_driver(),
+ "nvram", "%s_VARS.fd" % self.get_name())
+ log.debug("Guest is expected to use <nvram> but we didn't "
+ "find one in the XML. Generated implied path=%s",
+ old_nvram_path)
+
+ if not DeviceDisk.path_definitely_exists(
+ self.conn.get_backend(),
+ old_nvram_path): # pragma: no cover
+ log.debug("old_nvram_path=%s but it doesn't appear to exist. "
+ "skipping rename nvram duplication", old_nvram_path)
+ return None, None
+
+
from virtinst import Cloner
old_nvram = DeviceDisk(self.conn.get_backend())
- old_nvram.set_source_path(self.get_xmlobj().os.nvram)
+ old_nvram.set_source_path(old_nvram_path)
nvram_dir = os.path.dirname(old_nvram.get_source_path())
new_nvram_path = os.path.join(nvram_dir,
@@ -564,10 +585,7 @@ class vmmDomain(vmmLibvirtObject):
return
Guest.validate_name(self.conn.get_backend(), str(new_name))
- new_nvram = None
- old_nvram = None
- if self.has_nvram():
- new_nvram, old_nvram = self._copy_nvram_file(new_name)
+ new_nvram, old_nvram = self._copy_nvram_file(new_name)
try:
self.define_name(new_name)

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:515aaa2021a4bf352b0573098fe6958319b1ba8ec508ea37e064803f97f17086
size 3096236

BIN
virt-manager-4.1.0.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -1,3 +1,30 @@
-------------------------------------------------------------------
Fri Aug 5 16:25:59 UTC 2022 - Ben Greiner <code@bnavigator.de>
- Update to 4.1.0
* Fix build with setuptools-61 (Peter Alfredsen, Miro Hrončok)
* add UI and cli support for qemu-vdagent channel (Jonathon Jongsma)
* cli: More --iothreads suboptions (Lin Ma)
* launch_security: Use SEV-ES policy=0x07 if host supports it (Charles
* Arnold)
* cli: Add support for URL query with disks (Martin Kletzander)
- Drop patches merged upstream:
* c6107419-tests-Drop-usage-of-sgio-unfiltered.patch
* 90e13549-Fix-build-with-setuptools-61+.patch
* 46dc0616-setup-add-bits-for-setuptools-61.patch
* 9ac94ef7-tests-Fix-another-sgio-filtered-case.patch
* 34662fec-tests-Fix-with-latest-argcomplete.patch
* d51541e1-Fix-UI-rename-with-firmware-efi.patch
* b8a77805-domain-cpu-Clear-migratable-when-changing-to-custom-cpu.patch
* 0d84bcfb-cli-Add-iothreadids-attributes-thread_pool_min-and-thread_pool_max.patch
* 424283ad-launch_security-Use-SEV-ES-policy-0x07-if-host-supports-it.patch
- Refresh patches
* virtman-add-tooltip-to-firmware.patch
-- changed surrounding imports
* virtinst-set-cache-mode-unsafe-for-install.patch
-- the patch changes the expected output in tests
- Refresh test skips
-------------------------------------------------------------------
Wed Aug 3 14:51:34 MDT 2022 - carnold@suse.com

View File

@ -30,7 +30,7 @@
%endif
Name: virt-manager%{psuffix}
Version: 4.0.0
Version: 4.1.0
Release: 0
Summary: Virtual Machine Manager
License: GPL-2.0-or-later
@ -42,15 +42,6 @@ Source2: virt-install.desktop
Source3: virt-manager-supportconfig
# Upstream Patches
Patch1: revert-363fca41-virt-install-Require-osinfo-for-non-x86-HVM-case-too.patch
Patch2: c6107419-tests-Drop-usage-of-sgio-unfiltered.patch
Patch3: 46dc0616-setup-add-bits-for-setuptools-61.patch
Patch4: 9ac94ef7-tests-Fix-another-sgio-filtered-case.patch
Patch5: 34662fec-tests-Fix-with-latest-argcomplete.patch
Patch6: d51541e1-Fix-UI-rename-with-firmware-efi.patch
Patch7: b8a77805-domain-cpu-Clear-migratable-when-changing-to-custom-cpu.patch
Patch8: 0d84bcfb-cli-Add-iothreadids-attributes-thread_pool_min-and-thread_pool_max.patch
Patch9: 90e13549-Fix-build-with-setuptools-61+.patch
Patch10: 424283ad-launch_security-Use-SEV-ES-policy-0x07-if-host-supports-it.patch
# SUSE Only
Patch70: virtman-desktop.patch
Patch71: virtman-kvm.patch
@ -213,25 +204,35 @@ chmod -x %{buildroot}%{_datadir}/virt-manager/virtManager/virtmanager.py
%if %{with test}
%check
# wrong hard disk device name
# TODO: check if these are genuine failures or due to the non-upstream patches
# different device names
donttest="test_disk_numtotarget"
# RuntimeError: unsupported configuration: unfiltered sgio is no longer supported
donttest="$donttest or test_misc_nonpredicatble_generate or testAlterDisk"
# additional <driver cache="unsafe" />
donttest="$donttest or testCLI0052virt_install_cdrom_url"
donttest="$donttest or testCLI0079virt_install_w2k3_cdrom"
donttest="$donttest or testCLI0094virt_install_osvariant_defaults_pxe"
donttest="$donttest or testCLI0095virt_install_cloud_init_default"
donttest="$donttest or testCLI0096virt_install_cloud_init_options1"
donttest="$donttest or testCLI0097virt_install_cloud_init_options2"
donttest="$donttest or testCLI0098virt_install_cloud_init_options3"
donttest="$donttest or testCLI0099virt_install_cloud_init_options4"
donttest="$donttest or testCLI0100virt_install_cloud_init_options5"
donttest="$donttest or testCLI0107virt_install_cdrom_double"
# wrong device name and driver cache entry
donttest="$donttest or testCLI0111virt_install_reinstall_cdrom"
# wrong device name
donttest="$donttest or testCLI0369virt_xml_add_disk_create_storage_start"
donttest="$donttest or testCLI0001virt_install_many_devices"
donttest="$donttest or testCLI0110virt_install_reinstall_cdrom"
donttest="$donttest or testCLI0284virt_xml_build_pool_logical_disk"
donttest="$donttest or testCLI0276virt_xml_build_disk_domain"
donttest="$donttest or testCLI0371virt_xml_add_disk_create_storage_start"
# depends on osc/obs host cpu?
donttest="$donttest or testCLI0003virt_install_singleton_config_2"
donttest="$donttest or testCLI0283virt_xml_edit_cpu_host_copy"
# RuntimeError: SEV launch security requires a Q35 machine -- due to patch for bsc#1196806, jsc#SLE-18834 ?
donttest="$donttest or testCLI0162virt_install"
# Expectsion <video> element
donttest="$donttest or testCLI0168virt_install_s390x_cdrom"
# missing <boot> element, extra <kernel> element
donttest="$donttest or testCLI0189virt_install_xen_default"
donttest="$donttest or testCLI0190virt_install_xen_pv"
# different <emulator> additional <model> in <interface>
donttest="$donttest or testCLI0191virt_install_xen_hvm"
donttest="$donttest or testCLI0192virt_install_xen_hvm"
# different source image format
donttest="$donttest or testCLI0199virt_install_bhyve_default_f27"
# Due to the above skips:
# "there are XML properties that are untested in the test suite"
donttest="$donttest or testCheckXMLBuilderProps"
# "These command line arguments or aliases are not checked in the test suite"
donttest="$donttest or testCheckCLISuboptions"
#
pytest -v -rfEs -k "not ($donttest)"
%endif

View File

@ -1,9 +1,9 @@
Set cache mode for target installation disk to unsafe for better
performance.
Index: virt-manager-3.3.0/virtinst/install/installer.py
Index: virt-manager-4.1.0/virtinst/install/installer.py
===================================================================
--- virt-manager-3.3.0.orig/virtinst/install/installer.py
+++ virt-manager-3.3.0/virtinst/install/installer.py
--- virt-manager-4.1.0.orig/virtinst/install/installer.py
+++ virt-manager-4.1.0/virtinst/install/installer.py
@@ -567,16 +567,29 @@ class Installer(object):
def _build_postboot_xml(self, final_xml, meter):
@ -35,3 +35,472 @@ Index: virt-manager-3.3.0/virtinst/install/installer.py
def _build_xml(self, guest, meter):
initial_xml = None
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-cdrom-url.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-cdrom-url.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-cdrom-url.xml
@@ -24,6 +24,7 @@
</source>
<target dev="hda" bus="ide"/>
<readonly/>
+ <driver cache="unsafe"/>
</disk>
<controller type="usb" model="ich9-ehci1"/>
<controller type="usb" model="ich9-uhci1">
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-memory-hotplug.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-memory-hotplug.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-memory-hotplug.xml
@@ -35,7 +35,7 @@
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
<disk type="file" device="disk">
- <driver name="qemu" type="qcow2" discard="unmap"/>
+ <driver name="qemu" type="qcow2" discard="unmap" cache="unsafe"/>
<source file="/var/lib/libvirt/images/fedora.qcow2"/>
<target dev="vda" bus="virtio"/>
</disk>
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-cdrom-double.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-cdrom-double.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-cdrom-double.xml
@@ -22,6 +22,7 @@
<disk type="file" device="disk">
<source file="/var/lib/libvirt/images/vm1.qcow2"/>
<target dev="hda" bus="ide"/>
+ <driver cache="unsafe"/>
</disk>
<disk type="file" device="cdrom">
<source file="/pool-dir/testvol1.img"/>
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-cloud-init-default.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-cloud-init-default.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-cloud-init-default.xml
@@ -26,6 +26,7 @@
<disk type="file" device="disk">
<source file="/pool-dir/testvol1.img"/>
<target dev="hda" bus="ide"/>
+ <driver cache="unsafe"/>
</disk>
<controller type="usb" model="ich9-ehci1"/>
<controller type="usb" model="ich9-uhci1">
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-cloud-init-options1.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-cloud-init-options1.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-cloud-init-options1.xml
@@ -37,6 +37,7 @@ chpasswd:
<disk type="file" device="disk">
<source file="/pool-dir/testvol1.img"/>
<target dev="hda" bus="ide"/>
+ <driver cache="unsafe"/>
</disk>
<controller type="usb" model="ich9-ehci1"/>
<controller type="usb" model="ich9-uhci1">
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-cloud-init-options2.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-cloud-init-options2.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-cloud-init-options2.xml
@@ -37,6 +37,7 @@ users:
<disk type="file" device="disk">
<source file="/pool-dir/testvol1.img"/>
<target dev="hda" bus="ide"/>
+ <driver cache="unsafe"/>
</disk>
<controller type="usb" model="ich9-ehci1"/>
<controller type="usb" model="ich9-uhci1">
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-cloud-init-options3.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-cloud-init-options3.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-cloud-init-options3.xml
@@ -32,6 +32,7 @@ users:
<disk type="file" device="disk">
<source file="/pool-dir/testvol1.img"/>
<target dev="hda" bus="ide"/>
+ <driver cache="unsafe"/>
</disk>
<controller type="usb" model="ich9-ehci1"/>
<controller type="usb" model="ich9-uhci1">
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-cloud-init-options4.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-cloud-init-options4.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-cloud-init-options4.xml
@@ -26,6 +26,7 @@
<disk type="file" device="disk">
<source file="/pool-dir/testvol1.img"/>
<target dev="hda" bus="ide"/>
+ <driver cache="unsafe"/>
</disk>
<controller type="usb" model="ich9-ehci1"/>
<controller type="usb" model="ich9-uhci1">
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-cloud-init-options5.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-cloud-init-options5.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-cloud-init-options5.xml
@@ -26,6 +26,7 @@
<disk type="file" device="disk">
<source file="/pool-dir/testvol1.img"/>
<target dev="hda" bus="ide"/>
+ <driver cache="unsafe"/>
</disk>
<controller type="usb" model="ich9-ehci1"/>
<controller type="usb" model="ich9-uhci1">
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-osinfo-multiple-short-id.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-osinfo-multiple-short-id.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-osinfo-multiple-short-id.xml
@@ -31,7 +31,7 @@
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
<disk type="file" device="disk">
- <driver name="qemu" type="qcow2"/>
+ <driver name="qemu" type="qcow2" cache="unsafe"/>
<source file="/pool-dir/testvol1.img"/>
<target dev="vda" bus="virtio"/>
</disk>
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-osinfo-url-with-disk.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-osinfo-url-with-disk.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-osinfo-url-with-disk.xml
@@ -32,7 +32,7 @@
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
<disk type="file" device="disk">
- <driver name="qemu" type="qcow2"/>
+ <driver name="qemu" type="qcow2" cache="unsafe"/>
<source file="/pool-dir/testvol1.img"/>
<target dev="vda" bus="virtio"/>
</disk>
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-osinfo-win7-unattended.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-osinfo-win7-unattended.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-osinfo-win7-unattended.xml
@@ -36,7 +36,7 @@
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
<disk type="file" device="cdrom">
- <driver name="qemu"/>
+ <driver name="qemu" cache="unsafe"/>
<source file="TESTSUITE_SCRUBBED/tests/data/fakemedia/fake-win7.iso"/>
<target dev="sda" bus="sata"/>
<readonly/>
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-osvariant-defaults-pxe.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-osvariant-defaults-pxe.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-osvariant-defaults-pxe.xml
@@ -28,6 +28,7 @@
<disk type="file" device="disk">
<source file="/var/lib/libvirt/images/fedora26.qcow2"/>
<target dev="hda" bus="ide"/>
+ <driver cache="unsafe"/>
</disk>
<controller type="usb" model="ich9-ehci1"/>
<controller type="usb" model="ich9-uhci1">
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-reinstall-location.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-reinstall-location.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-reinstall-location.xml
@@ -22,7 +22,7 @@
<devices>
<emulator>/usr/lib/xen/bin/qemu-dm</emulator>
<disk type="file" device="disk">
- <driver type="qcow2"/>
+ <driver type="qcow2" cache="unsafe"/>
<source file="/pool-dir/test-clone-simple.img"/>
<target dev="hda" bus="ide"/>
<address type="drive" controller="0" bus="0" target="0" unit="0"/>
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-reinstall-pxe.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-reinstall-pxe.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-reinstall-pxe.xml
@@ -21,7 +21,7 @@
<devices>
<emulator>/usr/lib/xen/bin/qemu-dm</emulator>
<disk type="file" device="disk">
- <driver type="qcow2"/>
+ <driver type="qcow2" cache="unsafe"/>
<source file="/pool-dir/test-clone-simple.img"/>
<target dev="hda" bus="ide"/>
<address type="drive" controller="0" bus="0" target="0" unit="0"/>
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-w2k3-cdrom.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-w2k3-cdrom.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-w2k3-cdrom.xml
@@ -35,6 +35,7 @@
<disk type="file" device="disk">
<source file="/pool-dir/testvol1.img"/>
<target dev="hda" bus="ide"/>
+ <driver cache="unsafe"/>
</disk>
<disk type="file" device="cdrom">
<source file="/pool-dir/testvol2.img"/>
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-aarch64-cdrom.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-aarch64-cdrom.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-aarch64-cdrom.xml
@@ -26,7 +26,7 @@
<devices>
<emulator>/usr/bin/qemu-system-aarch64</emulator>
<disk type="file" device="disk">
- <driver name="qemu" type="qcow2"/>
+ <driver name="qemu" type="qcow2" cache="unsafe"/>
<source file="/pool-dir/testvol1.img"/>
<target dev="vda" bus="virtio"/>
</disk>
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-cdrom-centos-label.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-cdrom-centos-label.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-cdrom-centos-label.xml
@@ -32,7 +32,7 @@
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
<disk type="file" device="disk">
- <driver name="qemu" type="qcow2"/>
+ <driver name="qemu" type="qcow2" cache="unsafe"/>
<source file="/pool-dir/testvol1.img"/>
<target dev="vda" bus="virtio"/>
</disk>
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-kvm-centos7.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-kvm-centos7.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-kvm-centos7.xml
@@ -32,7 +32,7 @@
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
<disk type="file" device="disk">
- <driver name="qemu" type="qcow2"/>
+ <driver name="qemu" type="qcow2" cache="unsafe"/>
<source file="/pool-dir/testvol1.img"/>
<target dev="vda" bus="virtio"/>
</disk>
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-kvm-cpu-default-fallback.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-kvm-cpu-default-fallback.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-kvm-cpu-default-fallback.xml
@@ -34,7 +34,7 @@
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
<disk type="file" device="disk">
- <driver name="qemu" type="qcow2"/>
+ <driver name="qemu" type="qcow2" cache="unsafe"/>
<source file="/pool-dir/testvol1.img"/>
<target dev="vda" bus="virtio"/>
</disk>
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-kvm-cpu-hostmodel-fallback.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-kvm-cpu-hostmodel-fallback.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-kvm-cpu-hostmodel-fallback.xml
@@ -32,7 +32,7 @@
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
<disk type="file" device="disk">
- <driver name="qemu" type="qcow2"/>
+ <driver name="qemu" type="qcow2" cache="unsafe"/>
<source file="/pool-dir/testvol1.img"/>
<target dev="vda" bus="virtio"/>
</disk>
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-kvm-fedoralatest-url.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-kvm-fedoralatest-url.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-kvm-fedoralatest-url.xml
@@ -33,7 +33,7 @@
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
<disk type="file" device="disk">
- <driver name="qemu" type="qcow2"/>
+ <driver name="qemu" type="qcow2" cache="unsafe"/>
<source file="/pool-dir/testvol1.img"/>
<target dev="vda" bus="virtio"/>
</disk>
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-kvm-rhel5.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-kvm-rhel5.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-kvm-rhel5.xml
@@ -32,7 +32,7 @@
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
<disk type="file" device="disk">
- <driver name="qemu" type="qcow2"/>
+ <driver name="qemu" type="qcow2" cache="unsafe"/>
<source file="/pool-dir/testvol1.img"/>
<target dev="hda" bus="ide"/>
</disk>
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-kvm-rhel6.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-kvm-rhel6.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-kvm-rhel6.xml
@@ -33,7 +33,7 @@
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
<disk type="file" device="disk">
- <driver name="qemu" type="qcow2"/>
+ <driver name="qemu" type="qcow2" cache="unsafe"/>
<source file="/pool-dir/testvol1.img"/>
<target dev="vda" bus="virtio"/>
</disk>
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-kvm-rhel7.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-kvm-rhel7.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-kvm-rhel7.xml
@@ -33,7 +33,7 @@
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
<disk type="file" device="disk">
- <driver name="qemu" type="qcow2"/>
+ <driver name="qemu" type="qcow2" cache="unsafe"/>
<source file="/pool-dir/testvol1.img"/>
<target dev="vda" bus="virtio"/>
</disk>
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-kvm-session-defaults.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-kvm-session-defaults.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-kvm-session-defaults.xml
@@ -32,7 +32,7 @@
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
<disk type="file" device="disk">
- <driver name="qemu" type="qcow2" discard="unmap"/>
+ <driver name="qemu" type="qcow2" discard="unmap" cache="unsafe"/>
<source file="/tmp/.local/share/libvirt/images/fedora21.qcow2"/>
<target dev="vda" bus="virtio"/>
</disk>
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-kvm-win10.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-kvm-win10.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-kvm-win10.xml
@@ -38,7 +38,7 @@
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
<disk type="file" device="disk">
- <driver name="qemu" type="qcow2"/>
+ <driver name="qemu" type="qcow2" cache="unsafe"/>
<source file="/pool-dir/testvol1.img"/>
<target dev="sda" bus="sata"/>
</disk>
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-kvm-win2k3-cdrom.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-kvm-win2k3-cdrom.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-kvm-win2k3-cdrom.xml
@@ -38,7 +38,7 @@
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
<disk type="file" device="disk">
- <driver name="qemu" type="qcow2"/>
+ <driver name="qemu" type="qcow2" cache="unsafe"/>
<source file="/pool-dir/testvol1.img"/>
<target dev="hda" bus="ide"/>
</disk>
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-linux2020.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-linux2020.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-linux2020.xml
@@ -32,7 +32,7 @@
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
<disk type="file" device="disk">
- <driver name="qemu" type="qcow2" discard="unmap"/>
+ <driver name="qemu" type="qcow2" discard="unmap" cache="unsafe"/>
<source file="/var/lib/libvirt/images/linux2020.qcow2"/>
<target dev="vda" bus="virtio"/>
</disk>
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-location-iso.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-location-iso.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-location-iso.xml
@@ -32,7 +32,7 @@
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
<disk type="file" device="disk">
- <driver name="qemu" type="qcow2"/>
+ <driver name="qemu" type="qcow2" cache="unsafe"/>
<source file="/pool-dir/testvol1.img"/>
<target dev="vda" bus="virtio"/>
</disk>
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-location-manual-kernel.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-location-manual-kernel.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-location-manual-kernel.xml
@@ -27,7 +27,7 @@
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
<disk type="file" device="cdrom">
- <driver name="qemu"/>
+ <driver name="qemu" cache="unsafe"/>
<source file="TESTSUITE_SCRUBBED/tests/data/fakemedia/fake-no-osinfo.iso"/>
<target dev="hda" bus="ide"/>
<readonly/>
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-osinfo-netinst-unattended.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-osinfo-netinst-unattended.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-osinfo-netinst-unattended.xml
@@ -32,7 +32,7 @@
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
<disk type="file" device="cdrom">
- <driver name="qemu"/>
+ <driver name="qemu" cache="unsafe"/>
<source file="TESTSUITE_SCRUBBED/tests/data/fakemedia/fake-f26-netinst.iso"/>
<target dev="sda" bus="sata"/>
<readonly/>
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-q35-defaults.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-q35-defaults.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-q35-defaults.xml
@@ -27,7 +27,7 @@
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
<disk type="file" device="disk">
- <driver name="qemu" type="qcow2"/>
+ <driver name="qemu" type="qcow2" cache="unsafe"/>
<source file="/pool-dir/testvol1.img"/>
<target dev="sda" bus="sata"/>
</disk>
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-remote-storage.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-remote-storage.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-remote-storage.xml
@@ -22,6 +22,7 @@
<disk type="file" device="disk">
<source file="/foo/bar/baz"/>
<target dev="hda" bus="ide"/>
+ <driver cache="unsafe"/>
</disk>
<disk type="block" device="disk">
<source dev="/dev/zde"/>
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-unattended-remote-cdrom.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-unattended-remote-cdrom.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-unattended-remote-cdrom.xml
@@ -32,6 +32,7 @@
<source file="/pool-dir/testvol1.img"/>
<target dev="hda" bus="ide"/>
<readonly/>
+ <driver cache="unsafe"/>
</disk>
<controller type="usb" model="ich9-ehci1"/>
<controller type="usb" model="ich9-uhci1">
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-win7-uefi.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-win7-uefi.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-win7-uefi.xml
@@ -40,7 +40,7 @@
<devices>
<emulator>/usr/bin/qemu-system-x86_64</emulator>
<disk type="file" device="disk">
- <driver name="qemu" type="qcow2"/>
+ <driver name="qemu" type="qcow2" cache="unsafe"/>
<source file="/pool-dir/testvol1.img"/>
<target dev="sda" bus="sata"/>
</disk>
Index: virt-manager-4.1.0/tests/data/cli/compare/virt-install-xen-pv.xml
===================================================================
--- virt-manager-4.1.0.orig/tests/data/cli/compare/virt-install-xen-pv.xml
+++ virt-manager-4.1.0/tests/data/cli/compare/virt-install-xen-pv.xml
@@ -16,7 +16,7 @@
</os>
<devices>
<disk type="file" device="disk">
- <driver name="qemu" type="qcow2"/>
+ <driver name="qemu" type="qcow2" cache="unsafe"/>
<source file="/pool-dir/testvol1.img"/>
<target dev="xvda" bus="xen"/>
</disk>

View File

@ -2,21 +2,22 @@ References:
When a particular firmware is selected, read the json file for a description.
Add a tooltip of the json description when the mouse move overs the selected firmware.
Index: virt-manager-4.0.0/virtManager/details/details.py
Index: virt-manager-4.1.0/virtManager/details/details.py
===================================================================
--- virt-manager-4.0.0.orig/virtManager/details/details.py
+++ virt-manager-4.0.0/virtManager/details/details.py
@@ -5,6 +5,9 @@
--- virt-manager-4.1.0.orig/virtManager/details/details.py
+++ virt-manager-4.1.0/virtManager/details/details.py
@@ -4,6 +4,10 @@
# This work is licensed under the GNU GPLv2 or later.
# See the COPYING file in the top-level directory.
import re
+import os
+import json
+import textwrap
+
from gi.repository import Gtk
@@ -421,7 +424,7 @@ class vmmDetails(vmmGObjectUI):
import libvirt
@@ -402,7 +406,7 @@ class vmmDetails(vmmGObjectUI):
"on_overview_name_changed": _e(EDIT_NAME),
"on_overview_title_changed": _e(EDIT_TITLE),
"on_machine_type_changed": _e(EDIT_MACHTYPE),
@ -25,7 +26,7 @@ Index: virt-manager-4.0.0/virtManager/details/details.py
"on_overview_chipset_changed": _e(EDIT_MACHTYPE),
"on_details_inspection_refresh_clicked": self._inspection_refresh_clicked_cb,
@@ -1117,6 +1120,52 @@ class vmmDetails(vmmGObjectUI):
@@ -1098,6 +1102,52 @@ class vmmDetails(vmmGObjectUI):
self.storage_browser.set_browse_reason(reason)
self.storage_browser.show(self.topwin)