[PATCH 2/2] virtinst: Support transient.shareBacking option
Han Han
hhan at redhat.com
Wed May 26 01:22:11 UTC 2021
Implement "<transient shareBacking=yes/>" to virtinst to allow a transient disk
to be shared across VMs. It is introduced to libvirt since:
75871da0ec qemu: Allow <transient> disks with images shared accross
VMs
Signed-off-by: Han Han <hhan at redhat.com>
---
tests/data/cli/compare/virt-install-many-devices.xml | 1 +
tests/test_cli.py | 2 +-
virtinst/cli.py | 1 +
virtinst/devices/disk.py | 1 +
4 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/tests/data/cli/compare/virt-install-many-devices.xml b/tests/data/cli/compare/virt-install-many-devices.xml
index 7c4b0d54..1c22083f 100644
--- a/tests/data/cli/compare/virt-install-many-devices.xml
+++ b/tests/data/cli/compare/virt-install-many-devices.xml
@@ -216,6 +216,7 @@
<driver name="qemu" type="raw"/>
<source file="/var/lib/libvirt/images/disk.img"/>
<target dev="vdp" bus="virtio"/>
+ <transient shareBacking="yes"/>
</disk>
<disk type="block" device="disk">
<driver name="qemu" type="raw" cache="none" io="native"/>
diff --git a/tests/test_cli.py b/tests/test_cli.py
index 0ab64182..2c3b6e5a 100644
--- a/tests/test_cli.py
+++ b/tests/test_cli.py
@@ -608,7 +608,7 @@ vcpus.vcpu1.id=2,vcpus.vcpu1.enabled=yes
--disk path=/dev/disk-pool/diskvol7,device=lun,bus=scsi,reservations.managed=no,reservations.source.type=unix,reservations.source.path=/var/run/test/pr-helper0.sock,reservations.source.mode=client,\
source.reservations.managed=no,source.reservations.source.type=unix,source.reservations.source.path=/var/run/test/pr-helper0.sock,source.reservations.source.mode=client,target.rotation_rate=6000
--disk vol=iscsi-direct/unit:0:0:1
---disk size=.0001,format=raw
+--disk size=.0001,format=raw,transient=on,transient.shareBacking=yes
--disk size=.0001,pool=disk-pool
--disk path=%(EXISTIMG1)s,type=dir
--disk path=/fooroot.img,size=.0001,transient=on
diff --git a/virtinst/cli.py b/virtinst/cli.py
index fe08c433..e2ea9278 100644
--- a/virtinst/cli.py
+++ b/virtinst/cli.py
@@ -3441,6 +3441,7 @@ class ParserDisk(VirtCLIParser):
cls.add_arg("readonly", "read_only", is_onoff=True)
cls.add_arg("shareable", "shareable", is_onoff=True)
cls.add_arg("transient", "transient", is_onoff=True)
+ cls.add_arg("transient.shareBacking", "transient_shareBacking", is_onoff=True)
cls.add_arg("target.bus", "bus")
cls.add_arg("target.removable", "removable", is_onoff=True)
diff --git a/virtinst/devices/disk.py b/virtinst/devices/disk.py
index 0a0bb564..cd6dd4a4 100644
--- a/virtinst/devices/disk.py
+++ b/virtinst/devices/disk.py
@@ -476,6 +476,7 @@ class DeviceDisk(Device):
read_only = XMLProperty("./readonly", is_bool=True)
shareable = XMLProperty("./shareable", is_bool=True)
transient = XMLProperty("./transient", is_bool=True)
+ transient_shareBacking = XMLProperty("./transient/@shareBacking", is_yesno=True)
driver_cache = XMLProperty("./driver/@cache")
driver_discard = XMLProperty("./driver/@discard")
driver_detect_zeroes = XMLProperty("./driver/@detect_zeroes")
--
2.31.1
More information about the virt-tools-list
mailing list