Due to a conflict with the IDs of the OVF standard, and the existing
implementation in ovirt-engine, the ID of QXL devices changed to a
different value.
As a consequence, change the ResourceType of QXL devices, but only in
OVirt flavour to avoid breaking vdsm mode.
See:
https://bugzilla.redhat.com/show_bug.cgi?id=1598715#c5
---
v2v/create_ovf.ml | 6 +++++-
v2v/test-v2v-o-vdsm-options.ovf.expected | 2 +-
2 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/v2v/create_ovf.ml b/v2v/create_ovf.ml
index 901d47528..2cf610333 100644
--- a/v2v/create_ovf.ml
+++ b/v2v/create_ovf.ml
@@ -643,10 +643,14 @@ let rec create_ovf source targets guestcaps inspect
* See RHBZ#1213701 and RHBZ#1211231 for the reasoning
* behind that.
*)
+ let qxl_resourcetype =
+ match ovf_flavour with
+ | OVirt -> 32768 (* RHBZ#1598715 *)
+ | RHVExportStorageDomain -> 20 in
e "Item" [] [
e "rasd:Caption" [] [PCData "Graphical Controller"];
e "rasd:InstanceId" [] [PCData (uuidgen ())];
- e "rasd:ResourceType" [] [PCData "20"];
+ e "rasd:ResourceType" [] [PCData (string_of_int qxl_resourcetype)];
e "Type" [] [PCData "video"];
e "rasd:VirtualQuantity" [] [PCData "1"];
e "rasd:Device" [] [PCData "qxl"];
diff --git a/v2v/test-v2v-o-vdsm-options.ovf.expected
b/v2v/test-v2v-o-vdsm-options.ovf.expected
index c1282c19b..abaf37e54 100644
--- a/v2v/test-v2v-o-vdsm-options.ovf.expected
+++ b/v2v/test-v2v-o-vdsm-options.ovf.expected
@@ -56,7 +56,7 @@
<Item>
<rasd:Caption>Graphical Controller</rasd:Caption>
<rasd:InstanceId>#UUID#</rasd:InstanceId>
- <rasd:ResourceType>20</rasd:ResourceType>
+ <rasd:ResourceType>32768</rasd:ResourceType>
<Type>video</Type>
<rasd:VirtualQuantity>1</rasd:VirtualQuantity>
<rasd:Device>qxl</rasd:Device>
--
2.17.1