diff --git a/0002-tests-test-v2v-o-kubevirt-windows.sh-Set-fake-virtio.patch b/0002-tests-test-v2v-o-kubevirt-windows.sh-Set-fake-virtio.patch new file mode 100644 index 0000000..5ec994e --- /dev/null +++ b/0002-tests-test-v2v-o-kubevirt-windows.sh-Set-fake-virtio.patch @@ -0,0 +1,70 @@ +From a659b334f5b72b8a9843b1813a97114adc62a543 Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Fri, 15 Mar 2024 11:34:26 +0000 +Subject: [PATCH] tests/test-v2v-o-kubevirt-windows.sh: Set fake virtio-win + +When converting this phony Windows guest we didn't set the VIRTIO_WIN +environment variable. As a result the test output could change (and +break) depending on if the virtio-win package was installed or not. + +Point VIRTIO_WIN to the fake virtio-win directory (as we do with other +Windows tests). We also need to modify the test output since the fake +virtio-win does contain enough for virt-v2v to think that virtio +driver installation was successful. + +Fixes: commit af1f7b571fb21fdbfa2974ee54a22b4fdcbc886a +--- + tests/test-v2v-o-kubevirt-windows.sh | 6 +++++- + tests/test-v2v-o-kubevirt-windows.yaml.expected | 10 ++++++++++ + 2 files changed, 15 insertions(+), 1 deletion(-) + +diff --git a/tests/test-v2v-o-kubevirt-windows.sh b/tests/test-v2v-o-kubevirt-windows.sh +index 93e4d5e9..d672b9ab 100755 +--- a/tests/test-v2v-o-kubevirt-windows.sh ++++ b/tests/test-v2v-o-kubevirt-windows.sh +@@ -32,6 +32,7 @@ libvirt_uri="test://$abs_top_builddir/test-data/phony-guests/guests.xml" + windows=../test-data/phony-guests/windows.img + + export VIRT_TOOLS_DATA_DIR="$srcdir/../test-data/fake-virt-tools" ++export VIRTIO_WIN="$srcdir/../test-data/fake-virtio-win" + + d=test-v2v-o-kubevirt-windows.d + rm -rf $d +@@ -49,7 +50,10 @@ cat $d/test.yaml + test -f $d/test-sda + + # Remove some parts of the yaml which change between runs. +-sed -i -e 's/^\(# generated by virt-v2v\).*/\1/' $d/test.yaml ++sed -i \ ++ -e 's/^\(# generated by virt-v2v\).*/\1/' \ ++ -e 's,\(path: \).*/\(test-sda\),\1\2,' \ ++ $d/test.yaml + + # Compare yaml to the expected output. + diff -u test-v2v-o-kubevirt-windows.yaml.expected $d/test.yaml +diff --git a/tests/test-v2v-o-kubevirt-windows.yaml.expected b/tests/test-v2v-o-kubevirt-windows.yaml.expected +index 88f25cf1..0b12eaa9 100644 +--- a/tests/test-v2v-o-kubevirt-windows.yaml.expected ++++ b/tests/test-v2v-o-kubevirt-windows.yaml.expected +@@ -25,11 +25,21 @@ spec: + cpu: + cores: 1 + devices: ++ rng: {} ++ disks: ++ - disk: ++ bus: virtio ++ name: disk-0 + interfaces: + - name: net_default + masquerade: {} + macAddress: 00:11:22:33:44:55 + model: virtio ++ volumes: ++ - hostDisk: ++ path: test-sda ++ type: Disk ++ name: disk-0 + networks: + - networkName: default + name: net_default diff --git a/0003-o-rhv-upload-Add-context-if-parsing-params-fails-47.patch b/0003-o-rhv-upload-Add-context-if-parsing-params-fails-47.patch new file mode 100644 index 0000000..291d448 --- /dev/null +++ b/0003-o-rhv-upload-Add-context-if-parsing-params-fails-47.patch @@ -0,0 +1,62 @@ +From cfeebf0f121e21b8a96092330e02cc9875ee2af4 Mon Sep 17 00:00:00 2001 +From: Nir Soffer +Date: Fri, 5 Apr 2024 22:56:40 +0300 +Subject: [PATCH] -o rhv-upload: Add context if parsing params fails (#47) + +If parsing params fail we get unhelpful error: + + virt-v2v: error: internal error: invalid argument: + /tmp/v2v.CtVpBL/v2vtransfer.json: JSON parse error: end of file expected + near 'e' + +Change the parsing code to read the entire json text and include it in +the error message. This will make it clear why the json could not be +parsed, and help to find the root cause for having invalid json. + +Example error: + + $ cat out.params0.json + This is not a json document + + $ python output/rhv-upload-transfer.py out.params0.json + Traceback (most recent call last): + File "/home/nsoffer/src/virt-v2v/output/rhv-upload-transfer.py", line 261, in + raise RuntimeError(f"Cannot parse params {data!r}: {e}").with_traceback( + File "/home/nsoffer/src/virt-v2v/output/rhv-upload-transfer.py", line 259, in + params = json.loads(data) + ^^^^^^^^^^^^^^^^ + File "/usr/lib64/python3.12/json/__init__.py", line 346, in loads + return _default_decoder.decode(s) + ^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/usr/lib64/python3.12/json/decoder.py", line 337, in decode + obj, end = self.raw_decode(s, idx=_w(s, 0).end()) + ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + File "/usr/lib64/python3.12/json/decoder.py", line 355, in raw_decode + raise JSONDecodeError("Expecting value", s, err.value) from None + RuntimeError: Cannot parse params 'This is not a json document\n': Expecting value: line 1 column 1 (char 0) + +Related to #46 +--- + output/rhv-upload-transfer.py | 9 ++++++++- + 1 file changed, 8 insertions(+), 1 deletion(-) + +diff --git a/output/rhv-upload-transfer.py b/output/rhv-upload-transfer.py +index 626eff77..1504b076 100644 +--- a/output/rhv-upload-transfer.py ++++ b/output/rhv-upload-transfer.py +@@ -249,7 +249,14 @@ if len(sys.argv) != 2: + + # Parameters are passed in via a JSON document. + with open(sys.argv[1], 'r') as fp: +- params = json.load(fp) ++ data = fp.read() ++ ++try: ++ params = json.loads(data) ++except ValueError as e: ++ raise RuntimeError(f"Cannot parse params {data!r}: {e}").with_traceback( ++ e.__traceback__ ++ ) from None + + # What is passed in is a password file, read the actual password. + with open(params['output_password'], 'r') as fp: diff --git a/0004-o-rhv-upload-clarify-debug-message.patch b/0004-o-rhv-upload-clarify-debug-message.patch new file mode 100644 index 0000000..fe680ed --- /dev/null +++ b/0004-o-rhv-upload-clarify-debug-message.patch @@ -0,0 +1,24 @@ +From d8f09872a694836edce4685c605c09ba5ece9c31 Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Fri, 5 Apr 2024 21:52:48 +0100 +Subject: [PATCH] -o rhv-upload: clarify debug message + +Thanks: Nir Soffer +Related: https://github.com/libguestfs/virt-v2v/issues/46 +--- + output/rhv-upload-transfer.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/output/rhv-upload-transfer.py b/output/rhv-upload-transfer.py +index 1504b076..7530f73e 100644 +--- a/output/rhv-upload-transfer.py ++++ b/output/rhv-upload-transfer.py +@@ -45,7 +45,7 @@ def find_host(connection): + vdsm_id = f.readline().strip() + except Exception as e: + # This is most likely not an oVirt host. +- debug("cannot read /etc/vdsm/vdsm.id, using any host: %s" % e) ++ debug("cannot read /etc/vdsm/vdsm.id, not running on an ovirt host [this is not an error]: original exception: %s" % e) + return None + + debug("hw_id = %r" % vdsm_id) diff --git a/0005-o-rhv-upload-Dump-the-JSON-before-parsing.patch b/0005-o-rhv-upload-Dump-the-JSON-before-parsing.patch new file mode 100644 index 0000000..2b688b7 --- /dev/null +++ b/0005-o-rhv-upload-Dump-the-JSON-before-parsing.patch @@ -0,0 +1,34 @@ +From 19ac262ceb03db2bf53a63302673d328737523de Mon Sep 17 00:00:00 2001 +From: "Richard W.M. Jones" +Date: Fri, 5 Apr 2024 22:13:40 +0100 +Subject: [PATCH] -o rhv-upload: Dump the JSON before parsing + +Related: https://github.com/libguestfs/virt-v2v/issues/46 +--- + output/output_rhv_upload.ml | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/output/output_rhv_upload.ml b/output/output_rhv_upload.ml +index 3926cfee..7a148b1e 100644 +--- a/output/output_rhv_upload.ml ++++ b/output/output_rhv_upload.ml +@@ -273,6 +273,9 @@ See also the virt-v2v-output-rhv(1) manual."); + if Python_script.run_command ~stdout_fd:fd + precheck_script json_params [] <> 0 then + error (f_"failed server prechecks, see earlier errors"); ++ if verbose () then ++ debug "precheck output before parsing: %s" ++ (read_whole_file precheck_json); + let json = JSON_parser.json_parser_tree_parse_file precheck_json in + debug "precheck output parsed as: %s" + (JSON.string_of_doc ~fmt:JSON.Indented ["", json]); +@@ -396,6 +399,9 @@ See also the virt-v2v-output-rhv(1) manual."); + if Python_script.run_command ~stdout_fd:fd + transfer_script json_params [] <> 0 then + error (f_"failed to start transfer, see earlier errors"); ++ if verbose () then ++ debug "transfer output before parsing: %s" ++ (read_whole_file transfer_json); + let json = JSON_parser.json_parser_tree_parse_file transfer_json in + debug "transfer output parsed as: %s" + (JSON.string_of_doc ~fmt:JSON.Indented ["", json]); diff --git a/0006-o-rhv-upload-Output-outside-of-the-with-block.patch b/0006-o-rhv-upload-Output-outside-of-the-with-block.patch new file mode 100644 index 0000000..e2b40e7 --- /dev/null +++ b/0006-o-rhv-upload-Output-outside-of-the-with-block.patch @@ -0,0 +1,43 @@ +From 0ea92cc02949f3e829744e6e62d861dfd8ff5607 Mon Sep 17 00:00:00 2001 +From: Nir Soffer +Date: Fri, 5 Apr 2024 23:50:27 +0300 +Subject: [PATCH] -o rhv-upload: Output outside of the with block + +We write the json inside a with block, so what actually happen is: + +1. Computing the values +2. Dumping the json to stdout +3. Closing the connection + +If some code in sdk.Connection.close() write something to stdout, it +will corrupt our json output. Avoid this by moving the output out of the +with block. + +This will not prevent bad code to write something before the json. We +need to log bad json in the Ocaml code to reveal such issue. +--- + output/rhv-upload-transfer.py | 14 +++++++------- + 1 file changed, 7 insertions(+), 7 deletions(-) + +diff --git a/output/rhv-upload-transfer.py b/output/rhv-upload-transfer.py +index 7530f73e..349e0f59 100644 +--- a/output/rhv-upload-transfer.py ++++ b/output/rhv-upload-transfer.py +@@ -285,10 +285,10 @@ with closing(connection): + transfer = create_transfer(connection, disk, host) + destination_url = get_transfer_url(transfer) + +- # Send the destination URL, transfer ID, and host flag back to OCaml code. +- results = { +- "transfer_id": transfer.id, +- "destination_url": destination_url, +- "is_ovirt_host": host is not None, +- } +- json.dump(results, sys.stdout) ++# Send the destination URL, transfer ID, and host flag back to OCaml code. ++results = { ++ "transfer_id": transfer.id, ++ "destination_url": destination_url, ++ "is_ovirt_host": host is not None, ++} ++json.dump(results, sys.stdout) diff --git a/0007-o-rhv-upload-Improve-host-id-logging.patch b/0007-o-rhv-upload-Improve-host-id-logging.patch new file mode 100644 index 0000000..92c6a14 --- /dev/null +++ b/0007-o-rhv-upload-Improve-host-id-logging.patch @@ -0,0 +1,47 @@ +From ff341481eb397d700c346d27c8a23f9732028e03 Mon Sep 17 00:00:00 2001 +From: Nir Soffer +Date: Sat, 6 Apr 2024 00:21:19 +0300 +Subject: [PATCH] -o rhv-upload: Improve host id logging + +This log[1] is proved confusing for developers: + + cannot read /etc/vdsm/vdsm.id, using any host: [Errno 2] No such file or directory: '/etc/vdsm/vdsm.id' + +This is actually a debug message, that can help RHV developers to +understand where virt-v2v was running. To make this more clear, in the +expected case when running on non-oVirt host, we log now: + + not an oVirt host, using non-oVirt host + +For any other error, we can degrade to remote transfer, but we want to +warn the user about this, so we log: + + warning: cannot read host id, using non-oVirt host: [Errno 2] No such file or directory: '/etc/vdsm/vdsm.id' + +[1] https://github.com/libguestfs/virt-v2v/issues/46#issuecomment-2039604719 + +RWMJ: Changed "any host" to "non-oVirt host" to make it clearer. +--- + output/rhv-upload-transfer.py | 8 ++++++-- + 1 file changed, 6 insertions(+), 2 deletions(-) + +diff --git a/output/rhv-upload-transfer.py b/output/rhv-upload-transfer.py +index 349e0f59..ed96153b 100644 +--- a/output/rhv-upload-transfer.py ++++ b/output/rhv-upload-transfer.py +@@ -43,9 +43,13 @@ def find_host(connection): + try: + with open("/etc/vdsm/vdsm.id") as f: + vdsm_id = f.readline().strip() ++ except FileNotFoundError: ++ # Expected condition when running on non-oVirt host. ++ debug("not an oVirt host, using non-oVirt host") ++ return None + except Exception as e: +- # This is most likely not an oVirt host. +- debug("cannot read /etc/vdsm/vdsm.id, not running on an ovirt host [this is not an error]: original exception: %s" % e) ++ # Unexpected but we can degrade to remote transfer. ++ debug(f"warning: cannot read host id, using non-oVirt host: {e}") + return None + + debug("hw_id = %r" % vdsm_id) diff --git a/0008-o-rhv-upload-Don-t-share-transfer.json-49.patch b/0008-o-rhv-upload-Don-t-share-transfer.json-49.patch new file mode 100644 index 0000000..d9d59e4 --- /dev/null +++ b/0008-o-rhv-upload-Don-t-share-transfer.json-49.patch @@ -0,0 +1,27 @@ +From 5672d89531ebe560aa4437a82009bdf6532983d1 Mon Sep 17 00:00:00 2001 +From: Nir Soffer +Date: Sat, 6 Apr 2024 17:15:45 +0300 +Subject: [PATCH] -o rhv-upload: Don't share transfer.json (#49) + +Use unique v2vtransferN.json for every transfer, like like +out.paramsN.json. If we keep the temporary files after the import, the +content of the file can help debugging. + +Related to #46 +--- + output/output_rhv_upload.ml | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/output/output_rhv_upload.ml b/output/output_rhv_upload.ml +index 7a148b1e..f8bff24f 100644 +--- a/output/output_rhv_upload.ml ++++ b/output/output_rhv_upload.ml +@@ -394,7 +394,7 @@ See also the virt-v2v-output-rhv(1) manual."); + (fun chan -> output_string chan (JSON.string_of_doc json_params)); + + (* Start the transfer. *) +- let transfer_json = dir // "v2vtransfer.json" in ++ let transfer_json = dir // sprintf "v2vtransfer%d.json" i in + let fd = Unix.openfile transfer_json [O_WRONLY; O_CREAT] 0o600 in + if Python_script.run_command ~stdout_fd:fd + transfer_script json_params [] <> 0 then diff --git a/0009-o-rhv-upload-Add-O_TRUNC-to-truncate-JSON-file-if-it.patch b/0009-o-rhv-upload-Add-O_TRUNC-to-truncate-JSON-file-if-it.patch new file mode 100644 index 0000000..5062428 --- /dev/null +++ b/0009-o-rhv-upload-Add-O_TRUNC-to-truncate-JSON-file-if-it.patch @@ -0,0 +1,34 @@ +From 089d9a235e0e8a959c6d85004e24f2cdb37681b4 Mon Sep 17 00:00:00 2001 +From: Thorsten Bolten +Date: Sat, 6 Apr 2024 10:41:20 -0400 +Subject: [PATCH] -o rhv-upload: Add O_TRUNC to truncate JSON file if it exists + +Fixes: https://github.com/libguestfs/virt-v2v/issues/46 +Thanks: Nir Soffer +--- + output/output_rhv_upload.ml | 5 +++-- + 1 file changed, 3 insertions(+), 2 deletions(-) + +diff --git a/output/output_rhv_upload.ml b/output/output_rhv_upload.ml +index f8bff24f..d6fde169 100644 +--- a/output/output_rhv_upload.ml ++++ b/output/output_rhv_upload.ml +@@ -269,7 +269,7 @@ See also the virt-v2v-output-rhv(1) manual."); + ("rhv_disk_uuids", JSON.List ids) :: json_params + in + let precheck_json = dir // "v2vprecheck.json" in +- let fd = Unix.openfile precheck_json [O_WRONLY; O_CREAT] 0o600 in ++ let fd = Unix.openfile precheck_json [O_WRONLY; O_CREAT; O_TRUNC] 0o600 in + if Python_script.run_command ~stdout_fd:fd + precheck_script json_params [] <> 0 then + error (f_"failed server prechecks, see earlier errors"); +@@ -395,7 +395,8 @@ See also the virt-v2v-output-rhv(1) manual."); + + (* Start the transfer. *) + let transfer_json = dir // sprintf "v2vtransfer%d.json" i in +- let fd = Unix.openfile transfer_json [O_WRONLY; O_CREAT] 0o600 in ++ let fd = ++ Unix.openfile transfer_json [O_WRONLY; O_CREAT; O_TRUNC] 0o600 in + if Python_script.run_command ~stdout_fd:fd + transfer_script json_params [] <> 0 then + error (f_"failed to start transfer, see earlier errors"); diff --git a/0002-RHEL-v2v-Select-correct-qemu-binary-for-o-qemu-mode-.patch b/0010-RHEL-v2v-Select-correct-qemu-binary-for-o-qemu-mode-.patch similarity index 94% rename from 0002-RHEL-v2v-Select-correct-qemu-binary-for-o-qemu-mode-.patch rename to 0010-RHEL-v2v-Select-correct-qemu-binary-for-o-qemu-mode-.patch index db1da5d..43e363d 100644 --- a/0002-RHEL-v2v-Select-correct-qemu-binary-for-o-qemu-mode-.patch +++ b/0010-RHEL-v2v-Select-correct-qemu-binary-for-o-qemu-mode-.patch @@ -1,4 +1,4 @@ -From 7b057cee3af616ef9ef5b8bab97d54d39065c77e Mon Sep 17 00:00:00 2001 +From f61e293ba2051af2b9608a474e840594d6c26743 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sun, 28 Sep 2014 19:14:43 +0100 Subject: [PATCH] RHEL: v2v: Select correct qemu binary for -o qemu mode diff --git a/0003-RHEL-v2v-Disable-the-qemu-boot-oo-qemu-boot-option-R.patch b/0011-RHEL-v2v-Disable-the-qemu-boot-oo-qemu-boot-option-R.patch similarity index 98% rename from 0003-RHEL-v2v-Disable-the-qemu-boot-oo-qemu-boot-option-R.patch rename to 0011-RHEL-v2v-Disable-the-qemu-boot-oo-qemu-boot-option-R.patch index c5383f6..586c7d2 100644 --- a/0003-RHEL-v2v-Disable-the-qemu-boot-oo-qemu-boot-option-R.patch +++ b/0011-RHEL-v2v-Disable-the-qemu-boot-oo-qemu-boot-option-R.patch @@ -1,4 +1,4 @@ -From d47834e168937dd038b8af396fa8a36529161e6b Mon Sep 17 00:00:00 2001 +From 9a84eec09ed1ea7c6cc64475e6342cd0ba265d1a Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 30 Sep 2014 10:50:27 +0100 Subject: [PATCH] RHEL: v2v: Disable the --qemu-boot / -oo qemu-boot option diff --git a/0004-RHEL-Fix-list-of-supported-sound-cards-to-match-RHEL.patch b/0012-RHEL-Fix-list-of-supported-sound-cards-to-match-RHEL.patch similarity index 92% rename from 0004-RHEL-Fix-list-of-supported-sound-cards-to-match-RHEL.patch rename to 0012-RHEL-Fix-list-of-supported-sound-cards-to-match-RHEL.patch index 1b6a46a..76b2eb8 100644 --- a/0004-RHEL-Fix-list-of-supported-sound-cards-to-match-RHEL.patch +++ b/0012-RHEL-Fix-list-of-supported-sound-cards-to-match-RHEL.patch @@ -1,4 +1,4 @@ -From 737e3eef8091f516b03337cfb4e5744a02c1de94 Mon Sep 17 00:00:00 2001 +From 1d939e6f8a3401bc2c15afd7157d9f4a6f0763b2 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 24 Apr 2015 09:45:41 -0400 Subject: [PATCH] RHEL: Fix list of supported sound cards to match RHEL qemu diff --git a/0005-RHEL-Fixes-for-libguestfs-winsupport.patch b/0013-RHEL-Fixes-for-libguestfs-winsupport.patch similarity index 80% rename from 0005-RHEL-Fixes-for-libguestfs-winsupport.patch rename to 0013-RHEL-Fixes-for-libguestfs-winsupport.patch index 9e0db5a..c3fc1f4 100644 --- a/0005-RHEL-Fixes-for-libguestfs-winsupport.patch +++ b/0013-RHEL-Fixes-for-libguestfs-winsupport.patch @@ -1,4 +1,4 @@ -From cfadd50bbf1ae0aa27bd90bbd2fd49dd2d3b67f9 Mon Sep 17 00:00:00 2001 +From 8c5b0a1fd9c95f3834499089aaefff2883de551e Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Sun, 30 Aug 2015 03:21:57 -0400 Subject: [PATCH] RHEL: Fixes for libguestfs-winsupport. @@ -12,9 +12,10 @@ https://bugzilla.redhat.com/show_bug.cgi?id=2187961#c1 convert/convert.ml | 1 + test-data/phony-guests/make-windows-img.sh | 1 + tests/test-v2v-block-driver.sh | 6 +++++- + tests/test-v2v-in-place.sh | 8 +++++++- tests/test-v2v-virtio-win-iso.sh | 8 +++++++- tests/test-v2v-windows-conversion.sh | 8 +++++++- - 5 files changed, 21 insertions(+), 3 deletions(-) + 6 files changed, 28 insertions(+), 4 deletions(-) diff --git a/convert/convert.ml b/convert/convert.ml index d1dfcae8..e424930c 100644 @@ -57,6 +58,32 @@ index db59a2cf..a0e56bed 100755 is-dir $virtio_dir is-file $virtio_dir/$drv.cat is-file $virtio_dir/$drv.inf +diff --git a/tests/test-v2v-in-place.sh b/tests/test-v2v-in-place.sh +index 4373f140..2b31b0bb 100755 +--- a/tests/test-v2v-in-place.sh ++++ b/tests/test-v2v-in-place.sh +@@ -89,6 +89,12 @@ mktest () + :> "$script" + :> "$expected" + ++cat >> "$script" < "$response" ++guestfish --ro -a "$img" < "$script" > "$response" + diff -u "$expected" "$response" + + # Test the base image remained untouched diff --git a/tests/test-v2v-virtio-win-iso.sh b/tests/test-v2v-virtio-win-iso.sh index 69f6f414..b9b806fb 100755 --- a/tests/test-v2v-virtio-win-iso.sh diff --git a/0006-RHEL-v2v-i-disk-force-VNC-as-display-RHBZ-1372671.patch b/0014-RHEL-v2v-i-disk-force-VNC-as-display-RHBZ-1372671.patch similarity index 93% rename from 0006-RHEL-v2v-i-disk-force-VNC-as-display-RHBZ-1372671.patch rename to 0014-RHEL-v2v-i-disk-force-VNC-as-display-RHBZ-1372671.patch index 855d093..9977759 100644 --- a/0006-RHEL-v2v-i-disk-force-VNC-as-display-RHBZ-1372671.patch +++ b/0014-RHEL-v2v-i-disk-force-VNC-as-display-RHBZ-1372671.patch @@ -1,4 +1,4 @@ -From 50869ce4d489a53dc31e3d1b7ee89e880d36504f Mon Sep 17 00:00:00 2001 +From 9822a20cc378dcdf201ad682cb81eeb4e3336297 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 2 Mar 2017 14:21:37 +0100 Subject: [PATCH] RHEL: v2v: -i disk: force VNC as display (RHBZ#1372671) diff --git a/0007-RHEL-v2v-do-not-mention-SUSE-Xen-hosts-RHBZ-1430203.patch b/0015-RHEL-v2v-do-not-mention-SUSE-Xen-hosts-RHBZ-1430203.patch similarity index 91% rename from 0007-RHEL-v2v-do-not-mention-SUSE-Xen-hosts-RHBZ-1430203.patch rename to 0015-RHEL-v2v-do-not-mention-SUSE-Xen-hosts-RHBZ-1430203.patch index 38dbaa5..24f49ca 100644 --- a/0007-RHEL-v2v-do-not-mention-SUSE-Xen-hosts-RHBZ-1430203.patch +++ b/0015-RHEL-v2v-do-not-mention-SUSE-Xen-hosts-RHBZ-1430203.patch @@ -1,4 +1,4 @@ -From 2a325cff391e69b8806f3bc60d7f36037bd61ac4 Mon Sep 17 00:00:00 2001 +From 130ffc9b7ae3e8e11c342e7c90b6286ab21b881c Mon Sep 17 00:00:00 2001 From: Pino Toscano Date: Wed, 8 Mar 2017 11:03:40 +0100 Subject: [PATCH] RHEL: v2v: do not mention SUSE Xen hosts (RHBZ#1430203) diff --git a/0008-RHEL-point-to-KB-for-supported-v2v-hypervisors-guest.patch b/0016-RHEL-point-to-KB-for-supported-v2v-hypervisors-guest.patch similarity index 97% rename from 0008-RHEL-point-to-KB-for-supported-v2v-hypervisors-guest.patch rename to 0016-RHEL-point-to-KB-for-supported-v2v-hypervisors-guest.patch index f5b6e35..b58135b 100644 --- a/0008-RHEL-point-to-KB-for-supported-v2v-hypervisors-guest.patch +++ b/0016-RHEL-point-to-KB-for-supported-v2v-hypervisors-guest.patch @@ -1,4 +1,4 @@ -From 9ca8c71e874eccb45e5a41ba993735837a3887dc Mon Sep 17 00:00:00 2001 +From 1e0398f1f2bac2da9700a38a1ba7cb6f172d7c03 Mon Sep 17 00:00:00 2001 From: Pino Toscano Date: Tue, 26 Mar 2019 09:42:25 +0100 Subject: [PATCH] RHEL: point to KB for supported v2v hypervisors/guests diff --git a/0009-RHEL-Disable-o-glance.patch b/0017-RHEL-Disable-o-glance.patch similarity index 99% rename from 0009-RHEL-Disable-o-glance.patch rename to 0017-RHEL-Disable-o-glance.patch index f840eeb..e3044b1 100644 --- a/0009-RHEL-Disable-o-glance.patch +++ b/0017-RHEL-Disable-o-glance.patch @@ -1,4 +1,4 @@ -From 692bd4c371b6df59d351ae73f5d4a4890b0536a1 Mon Sep 17 00:00:00 2001 +From 1bde50da68385498441ed6e6d7178e8828eb6b3d Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Wed, 30 Jun 2021 11:15:52 +0100 Subject: [PATCH] RHEL: Disable -o glance diff --git a/0010-RHEL-Remove-the-in-place-option.patch b/0018-RHEL-Remove-the-in-place-option.patch similarity index 98% rename from 0010-RHEL-Remove-the-in-place-option.patch rename to 0018-RHEL-Remove-the-in-place-option.patch index ca87647..5c4ee81 100644 --- a/0010-RHEL-Remove-the-in-place-option.patch +++ b/0018-RHEL-Remove-the-in-place-option.patch @@ -1,4 +1,4 @@ -From 5d18e008239f0ea70dec028fc51a07cdd2766d3a Mon Sep 17 00:00:00 2001 +From 3fefe2b16e9e17322e5a620851f6b263e216ee98 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Thu, 2 Dec 2021 11:56:05 +0000 Subject: [PATCH] RHEL: Remove the --in-place option diff --git a/0011-RHEL-9-oo-compressed-Remove-nbdcopy-version-check-an.patch b/0019-RHEL-9-oo-compressed-Remove-nbdcopy-version-check-an.patch similarity index 96% rename from 0011-RHEL-9-oo-compressed-Remove-nbdcopy-version-check-an.patch rename to 0019-RHEL-9-oo-compressed-Remove-nbdcopy-version-check-an.patch index 14492c4..fbbb43f 100644 --- a/0011-RHEL-9-oo-compressed-Remove-nbdcopy-version-check-an.patch +++ b/0019-RHEL-9-oo-compressed-Remove-nbdcopy-version-check-an.patch @@ -1,4 +1,4 @@ -From 67ec9266d5f8fc639fde3cbf28c0032ea2155201 Mon Sep 17 00:00:00 2001 +From 1565824fb019fc4fb86312439f1a44fc686ce73c Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 5 Jul 2022 11:56:54 +0100 Subject: [PATCH] RHEL 9: -oo compressed: Remove nbdcopy version check and test diff --git a/0012-RHEL-9-tests-Remove-btrfs-test.patch b/0020-RHEL-9-tests-Remove-btrfs-test.patch similarity index 91% rename from 0012-RHEL-9-tests-Remove-btrfs-test.patch rename to 0020-RHEL-9-tests-Remove-btrfs-test.patch index 094e338..f047872 100644 --- a/0012-RHEL-9-tests-Remove-btrfs-test.patch +++ b/0020-RHEL-9-tests-Remove-btrfs-test.patch @@ -1,4 +1,4 @@ -From 598ebd44a74747e9db37304a0cea98bc7ba76c3a Mon Sep 17 00:00:00 2001 +From 8bc5a15ceabe7a8b6a14faa48bd47f48d33535a3 Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Tue, 5 Jul 2022 11:58:09 +0100 Subject: [PATCH] RHEL 9: tests: Remove btrfs test diff --git a/0013-RHEL-9-Remove-block-driver-option.patch b/0021-RHEL-9-Remove-block-driver-option.patch similarity index 98% rename from 0013-RHEL-9-Remove-block-driver-option.patch rename to 0021-RHEL-9-Remove-block-driver-option.patch index c0ed88e..16a6e1a 100644 --- a/0013-RHEL-9-Remove-block-driver-option.patch +++ b/0021-RHEL-9-Remove-block-driver-option.patch @@ -1,4 +1,4 @@ -From 3cc70a76fe82d8a3cbf675648a2cf568d124c203 Mon Sep 17 00:00:00 2001 +From 6aa2c1976bebf550149e27cd4463408ec476addf Mon Sep 17 00:00:00 2001 From: "Richard W.M. Jones" Date: Fri, 28 Apr 2023 12:28:19 +0100 Subject: [PATCH] RHEL 9: Remove --block-driver option diff --git a/virt-v2v.spec b/virt-v2v.spec index e5dcb15..e2c2efe 100644 --- a/virt-v2v.spec +++ b/virt-v2v.spec @@ -16,7 +16,7 @@ Name: virt-v2v Epoch: 1 Version: 2.5.2 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Convert a virtual machine to run on KVM License: GPL-2.0-or-later AND LGPL-2.0-or-later @@ -37,18 +37,26 @@ Source3: copy-patches.sh # Patches. Patch0001: 0001-tests-Don-t-rebuild-real_guests_scripts-after-clean.patch -Patch0002: 0002-RHEL-v2v-Select-correct-qemu-binary-for-o-qemu-mode-.patch -Patch0003: 0003-RHEL-v2v-Disable-the-qemu-boot-oo-qemu-boot-option-R.patch -Patch0004: 0004-RHEL-Fix-list-of-supported-sound-cards-to-match-RHEL.patch -Patch0005: 0005-RHEL-Fixes-for-libguestfs-winsupport.patch -Patch0006: 0006-RHEL-v2v-i-disk-force-VNC-as-display-RHBZ-1372671.patch -Patch0007: 0007-RHEL-v2v-do-not-mention-SUSE-Xen-hosts-RHBZ-1430203.patch -Patch0008: 0008-RHEL-point-to-KB-for-supported-v2v-hypervisors-guest.patch -Patch0009: 0009-RHEL-Disable-o-glance.patch -Patch0010: 0010-RHEL-Remove-the-in-place-option.patch -Patch0011: 0011-RHEL-9-oo-compressed-Remove-nbdcopy-version-check-an.patch -Patch0012: 0012-RHEL-9-tests-Remove-btrfs-test.patch -Patch0013: 0013-RHEL-9-Remove-block-driver-option.patch +Patch0002: 0002-tests-test-v2v-o-kubevirt-windows.sh-Set-fake-virtio.patch +Patch0003: 0003-o-rhv-upload-Add-context-if-parsing-params-fails-47.patch +Patch0004: 0004-o-rhv-upload-clarify-debug-message.patch +Patch0005: 0005-o-rhv-upload-Dump-the-JSON-before-parsing.patch +Patch0006: 0006-o-rhv-upload-Output-outside-of-the-with-block.patch +Patch0007: 0007-o-rhv-upload-Improve-host-id-logging.patch +Patch0008: 0008-o-rhv-upload-Don-t-share-transfer.json-49.patch +Patch0009: 0009-o-rhv-upload-Add-O_TRUNC-to-truncate-JSON-file-if-it.patch +Patch0010: 0010-RHEL-v2v-Select-correct-qemu-binary-for-o-qemu-mode-.patch +Patch0011: 0011-RHEL-v2v-Disable-the-qemu-boot-oo-qemu-boot-option-R.patch +Patch0012: 0012-RHEL-Fix-list-of-supported-sound-cards-to-match-RHEL.patch +Patch0013: 0013-RHEL-Fixes-for-libguestfs-winsupport.patch +Patch0014: 0014-RHEL-v2v-i-disk-force-VNC-as-display-RHBZ-1372671.patch +Patch0015: 0015-RHEL-v2v-do-not-mention-SUSE-Xen-hosts-RHBZ-1430203.patch +Patch0016: 0016-RHEL-point-to-KB-for-supported-v2v-hypervisors-guest.patch +Patch0017: 0017-RHEL-Disable-o-glance.patch +Patch0018: 0018-RHEL-Remove-the-in-place-option.patch +Patch0019: 0019-RHEL-9-oo-compressed-Remove-nbdcopy-version-check-an.patch +Patch0020: 0020-RHEL-9-tests-Remove-btrfs-test.patch +Patch0021: 0021-RHEL-9-Remove-block-driver-option.patch %if !0%{?rhel} # libguestfs hasn't been built on i686 for a while since there is no @@ -353,10 +361,12 @@ make -C tests TESTS=test-v2v-fedora-luks-on-lvm-conversion.sh check %changelog -* Fri Mar 15 2024 Richard W.M. Jones - 1:2.5.2-1 +* Mon Apr 08 2024 Richard W.M. Jones - 1:2.5.2-2 - Rebase to virt-v2v 2.5.2 - Add missing firmware types and enhance -o kubevirt resolves: RHEL-28197 +- Fix RHV JSON transfer bug + resolves: RHEL-32105 * Mon Jan 22 2024 Richard W.M. Jones - 1:2.4.0-2 - Rebase to virt-v2v 2.4.0