New upstream development version 1.45.90 (preview of 2.0)
This commit is contained in:
		
							parent
							
								
									c8d08693ef
								
							
						
					
					
						commit
						4e3368f10c
					
				| @ -0,0 +1,33 @@ | |||||||
|  | From f417ca536219b151284a5a0e28698bfa19a5c160 Mon Sep 17 00:00:00 2001 | ||||||
|  | From: "Richard W.M. Jones" <rjones@redhat.com> | ||||||
|  | Date: Sun, 28 Sep 2014 19:14:43 +0100 | ||||||
|  | Subject: [PATCH 1/8] RHEL: v2v: Select correct qemu binary for -o qemu mode | ||||||
|  |  (RHBZ#1147313). | ||||||
|  | 
 | ||||||
|  | RHEL does not have qemu-system-x86_64 (etc), and in addition the | ||||||
|  | qemu binary is located in /usr/libexec.  Encode the path to this | ||||||
|  | binary directly in the script. | ||||||
|  | 
 | ||||||
|  | Note that we don't support people running qemu directly like this. | ||||||
|  | It's just for quick testing of converted VMs, and to help us with | ||||||
|  | support cases. | ||||||
|  | ---
 | ||||||
|  |  output/output.ml | 2 +- | ||||||
|  |  1 file changed, 1 insertion(+), 1 deletion(-) | ||||||
|  | 
 | ||||||
|  | diff --git a/output/output.ml b/output/output.ml
 | ||||||
|  | index 9c2d8853..92b03525 100644
 | ||||||
|  | --- a/output/output.ml
 | ||||||
|  | +++ b/output/output.ml
 | ||||||
|  | @@ -1413,7 +1413,7 @@ and qemu_finalize dir source inspect target_meta
 | ||||||
|  |     * module deals with shell and qemu comma quoting. | ||||||
|  |     *) | ||||||
|  |    let cmd = Qemuopts.create () in | ||||||
|  | -  Qemuopts.set_binary_by_arch cmd (Some guestcaps.gcaps_arch);
 | ||||||
|  | +  Qemuopts.set_binary cmd "/usr/libexec/qemu-kvm";
 | ||||||
|  |   | ||||||
|  |    let flag = Qemuopts.flag cmd | ||||||
|  |    and arg = Qemuopts.arg cmd | ||||||
|  | -- 
 | ||||||
|  | 2.31.1 | ||||||
|  | 
 | ||||||
| @ -1,123 +0,0 @@ | |||||||
| From 4d5509a98823cc0b8930678716b862adbd2c0b81 Mon Sep 17 00:00:00 2001 |  | ||||||
| From: "Richard W.M. Jones" <rjones@redhat.com> |  | ||||||
| Date: Fri, 6 Aug 2021 13:01:28 +0100 |  | ||||||
| Subject: [PATCH 01/11] Revert "v2v: Remove -o rhv-upload -oa preallocated" |  | ||||||
| 
 |  | ||||||
| This reverts commit 18084f90d9dd9092831cb3487039328981796291. |  | ||||||
| ---
 |  | ||||||
|  v2v/cmdline.ml             |  2 +- |  | ||||||
|  v2v/output_rhv_upload.ml   | 22 ++++++++++++++++++++-- |  | ||||||
|  v2v/output_rhv_upload.mli  |  7 ++++--- |  | ||||||
|  v2v/rhv-upload-transfer.py |  1 + |  | ||||||
|  4 files changed, 26 insertions(+), 6 deletions(-) |  | ||||||
| 
 |  | ||||||
| diff --git a/v2v/cmdline.ml b/v2v/cmdline.ml
 |  | ||||||
| index 79d943df..5e7c01f8 100644
 |  | ||||||
| --- a/v2v/cmdline.ml
 |  | ||||||
| +++ b/v2v/cmdline.ml
 |  | ||||||
| @@ -699,7 +699,7 @@ read the man page virt-v2v(1).
 |  | ||||||
|          | Some os -> os in |  | ||||||
|        if qemu_boot then |  | ||||||
|          error_option_cannot_be_used_in_output_mode "rhv-upload" "--qemu-boot"; |  | ||||||
| -      Output_rhv_upload.output_rhv_upload output_conn
 |  | ||||||
| +      Output_rhv_upload.output_rhv_upload output_alloc output_conn
 |  | ||||||
|                                            output_password os |  | ||||||
|                                            rhv_options, |  | ||||||
|        output_format, output_alloc |  | ||||||
| diff --git a/v2v/output_rhv_upload.ml b/v2v/output_rhv_upload.ml
 |  | ||||||
| index 6a632eaa..50baa595 100644
 |  | ||||||
| --- a/v2v/output_rhv_upload.ml
 |  | ||||||
| +++ b/v2v/output_rhv_upload.ml
 |  | ||||||
| @@ -146,11 +146,22 @@ let error_unless_nbdkit_compiled_with_selinux config =
 |  | ||||||
|        error (f_"nbdkit was compiled without SELinux support.  You will have to recompile nbdkit with libselinux-devel installed, or else set SELinux to Permissive mode while doing the conversion.") |  | ||||||
|    ) |  | ||||||
|   |  | ||||||
| +(* Output sparse must be sparse.  We may be able to
 |  | ||||||
| + * lift this limitation in future, but it requires changes on the
 |  | ||||||
| + * RHV side.  See TODO file for details.  XXX
 |  | ||||||
| + *)
 |  | ||||||
| +let error_current_limitation required_param =
 |  | ||||||
| +  error (f_"rhv-upload: currently you must use ‘%s’.  This restriction will be loosened in a future version.") required_param
 |  | ||||||
| +
 |  | ||||||
| +let error_unless_output_alloc_sparse output_alloc =
 |  | ||||||
| +  if output_alloc <> Sparse then
 |  | ||||||
| +    error_current_limitation "-oa sparse"
 |  | ||||||
| +
 |  | ||||||
|  let json_optstring = function |  | ||||||
|    | Some s -> JSON.String s |  | ||||||
|    | None -> JSON.Null |  | ||||||
|   |  | ||||||
| -class output_rhv_upload output_conn
 |  | ||||||
| +class output_rhv_upload output_alloc output_conn
 |  | ||||||
|                          output_password output_storage |  | ||||||
|                          rhv_options = |  | ||||||
|    (* Create a temporary directory which will be deleted on exit. *) |  | ||||||
| @@ -189,6 +200,9 @@ class output_rhv_upload output_conn
 |  | ||||||
|      "output_conn", JSON.String output_conn; |  | ||||||
|      "output_password", JSON.String output_password; |  | ||||||
|      "output_storage", JSON.String output_storage; |  | ||||||
| +    "output_sparse", JSON.Bool (match output_alloc with
 |  | ||||||
| +                                | Sparse -> true
 |  | ||||||
| +                                | Preallocated -> false);
 |  | ||||||
|      "rhv_cafile", json_optstring rhv_options.rhv_cafile; |  | ||||||
|      "rhv_cluster", |  | ||||||
|        JSON.String (Option.default "Default" rhv_options.rhv_cluster); |  | ||||||
| @@ -257,6 +271,7 @@ object
 |  | ||||||
|      error_unless_nbdkit_min_version config; |  | ||||||
|      error_unless_nbdkit_python_plugin_working plugin_script; |  | ||||||
|      error_unless_nbdkit_compiled_with_selinux config; |  | ||||||
| +    error_unless_output_alloc_sparse output_alloc;
 |  | ||||||
|   |  | ||||||
|      (* Python code prechecks. *) |  | ||||||
|      let json_params = match rhv_options.rhv_disk_uuids with |  | ||||||
| @@ -282,6 +297,9 @@ object
 |  | ||||||
|   |  | ||||||
|    method as_options = |  | ||||||
|      "-o rhv-upload" ^ |  | ||||||
| +    (match output_alloc with
 |  | ||||||
| +     | Sparse -> "" (* default, don't need to print it *)
 |  | ||||||
| +     | Preallocated -> " -oa preallocated") ^
 |  | ||||||
|      sprintf " -oc %s -op %s -os %s" |  | ||||||
|              output_conn output_password output_storage |  | ||||||
|   |  | ||||||
| @@ -449,7 +467,7 @@ object
 |  | ||||||
|      (* Create the metadata. *) |  | ||||||
|      let ovf = |  | ||||||
|        Create_ovf.create_ovf source inspect target_meta targets |  | ||||||
| -        Sparse sd_uuid disk_uuids vol_uuids vm_uuid
 |  | ||||||
| +        output_alloc sd_uuid disk_uuids vol_uuids vm_uuid
 |  | ||||||
|          OVirt in |  | ||||||
|      let ovf = DOM.doc_to_string ovf in |  | ||||||
|   |  | ||||||
| diff --git a/v2v/output_rhv_upload.mli b/v2v/output_rhv_upload.mli
 |  | ||||||
| index 01507dff..eb85a57d 100644
 |  | ||||||
| --- a/v2v/output_rhv_upload.mli
 |  | ||||||
| +++ b/v2v/output_rhv_upload.mli
 |  | ||||||
| @@ -25,8 +25,9 @@ val print_output_options : unit -> unit
 |  | ||||||
|  val parse_output_options : (string * string) list -> rhv_options |  | ||||||
|  (** Print and parse rhv-upload -oo options. *) |  | ||||||
|   |  | ||||||
| -val output_rhv_upload : string -> string -> string -> rhv_options ->
 |  | ||||||
| -                        Types.output
 |  | ||||||
| -(** [output_rhv_upload output_conn output_password output_storage rhv_options]
 |  | ||||||
| +val output_rhv_upload : Types.output_allocation -> string -> string ->
 |  | ||||||
| +                        string -> rhv_options -> Types.output
 |  | ||||||
| +(** [output_rhv_upload output_alloc output_conn output_password output_storage
 |  | ||||||
| +     rhv_options]
 |  | ||||||
|      creates and returns a new {!Types.output} object specialized for writing |  | ||||||
|      output to oVirt or RHV directly via RHV APIs. *) |  | ||||||
| diff --git a/v2v/rhv-upload-transfer.py b/v2v/rhv-upload-transfer.py
 |  | ||||||
| index cf4f8807..5aebcd1d 100644
 |  | ||||||
| --- a/v2v/rhv-upload-transfer.py
 |  | ||||||
| +++ b/v2v/rhv-upload-transfer.py
 |  | ||||||
| @@ -111,6 +111,7 @@ def create_disk(connection):
 |  | ||||||
|              # size, based on qemu-img measure of the overlay. |  | ||||||
|              initial_size=params['disk_size'], |  | ||||||
|              provisioned_size=params['disk_size'], |  | ||||||
| +            # XXX Ignores params['output_sparse'].
 |  | ||||||
|              # Handling this properly will be complex, see: |  | ||||||
|              # https://www.redhat.com/archives/libguestfs/2018-March/msg00177.html |  | ||||||
|              sparse=True, |  | ||||||
| -- 
 |  | ||||||
| 2.31.1 |  | ||||||
| 
 |  | ||||||
| @ -1,7 +1,7 @@ | |||||||
| From bb55b78b68e6e8039734eb1d7af22b455f8fbdc2 Mon Sep 17 00:00:00 2001 | From 00490feb06496ad4bf22dbc5493a7cf186476e9f Mon Sep 17 00:00:00 2001 | ||||||
| From: "Richard W.M. Jones" <rjones@redhat.com> | From: "Richard W.M. Jones" <rjones@redhat.com> | ||||||
| Date: Tue, 30 Sep 2014 10:50:27 +0100 | Date: Tue, 30 Sep 2014 10:50:27 +0100 | ||||||
| Subject: [PATCH 04/11] RHEL: v2v: Disable the --qemu-boot option | Subject: [PATCH 2/8] RHEL: v2v: Disable the --qemu-boot / -oo qemu-boot option | ||||||
|  (RHBZ#1147313). |  (RHBZ#1147313). | ||||||
| 
 | 
 | ||||||
| This cannot work because there is no Gtk or SDL output mode | This cannot work because there is no Gtk or SDL output mode | ||||||
| @ -11,9 +11,10 @@ In addition you will have to edit the -display option in the | |||||||
| qemu script. | qemu script. | ||||||
| ---
 | ---
 | ||||||
|  docs/virt-v2v-output-local.pod |  6 ++---- |  docs/virt-v2v-output-local.pod |  6 ++---- | ||||||
|  docs/virt-v2v.pod              | 13 ------------- |  docs/virt-v2v.pod              | 12 ------------ | ||||||
|  v2v/cmdline.ml                 |  3 ++- |  output/output.ml               |  3 +++ | ||||||
|  3 files changed, 4 insertions(+), 18 deletions(-) |  v2v/v2v.ml                     |  2 -- | ||||||
|  |  4 files changed, 5 insertions(+), 18 deletions(-) | ||||||
| 
 | 
 | ||||||
| diff --git a/docs/virt-v2v-output-local.pod b/docs/virt-v2v-output-local.pod
 | diff --git a/docs/virt-v2v-output-local.pod b/docs/virt-v2v-output-local.pod
 | ||||||
| index a5f155cb..3a2e6238 100644
 | index a5f155cb..3a2e6238 100644
 | ||||||
| @ -43,7 +44,7 @@ index a5f155cb..3a2e6238 100644 | |||||||
|  =item B<-o json -os> C<DIRECTORY> |  =item B<-o json -os> C<DIRECTORY> | ||||||
|   |   | ||||||
| diff --git a/docs/virt-v2v.pod b/docs/virt-v2v.pod
 | diff --git a/docs/virt-v2v.pod b/docs/virt-v2v.pod
 | ||||||
| index bdf4d716..83f6fd4d 100644
 | index b25d678d..0a47b611 100644
 | ||||||
| --- a/docs/virt-v2v.pod
 | --- a/docs/virt-v2v.pod
 | ||||||
| +++ b/docs/virt-v2v.pod
 | +++ b/docs/virt-v2v.pod
 | ||||||
| @@ -141,11 +141,6 @@ Since F<guest-domain.xml> contains the path(s) to the guest disk
 | @@ -141,11 +141,6 @@ Since F<guest-domain.xml> contains the path(s) to the guest disk
 | ||||||
| @ -53,54 +54,59 @@ index bdf4d716..83f6fd4d 100644 | |||||||
| -To convert a local disk image and immediately boot it in local
 | -To convert a local disk image and immediately boot it in local
 | ||||||
| -qemu, do:
 | -qemu, do:
 | ||||||
| -
 | -
 | ||||||
| - virt-v2v -i disk disk.img -o qemu -os /var/tmp --qemu-boot
 | - virt-v2v -i disk disk.img -o qemu -os /var/tmp -oo qemu-boot
 | ||||||
| -
 | -
 | ||||||
|  =head1 OPTIONS |  =head1 OPTIONS | ||||||
|   |   | ||||||
|  =over 4 |  =over 4 | ||||||
| @@ -528,9 +523,6 @@ This is similar to I<-o local>, except that a shell script is written
 | @@ -511,9 +506,6 @@ This is similar to I<-o local>, except that a shell script is written
 | ||||||
|  which you can use to boot the guest in qemu.  The converted disks and |  which you can use to boot the guest in qemu.  The converted disks and | ||||||
|  shell script are written to the directory specified by I<-os>. |  shell script are written to the directory specified by I<-os>. | ||||||
|   |   | ||||||
| -When using this output mode, you can also specify the I<--qemu-boot>
 | -When using this output mode, you can also specify the I<-oo qemu-boot>
 | ||||||
| -option which boots the guest under qemu immediately.
 | -option which boots the guest under qemu immediately.
 | ||||||
| -
 | -
 | ||||||
|  =item B<-o> B<rhev> |  =item B<-o> B<rhev> | ||||||
|   |   | ||||||
|  This is the same as I<-o rhv>. |  This is the same as I<-o rhv>. | ||||||
| @@ -775,11 +767,6 @@ Print information about the source guest and stop.  This option is
 | @@ -769,10 +761,6 @@ Print information about the source guest and stop.  This option is
 | ||||||
|  useful when you are setting up network and bridge maps. |  useful when you are setting up network and bridge maps. | ||||||
|  See L</Networks and bridges>. |  See L</Networks and bridges>. | ||||||
|   |   | ||||||
| -=item B<--qemu-boot>
 | -=item B<--qemu-boot>
 | ||||||
| -
 | -
 | ||||||
| -When using I<-o qemu> only, this boots the guest immediately after
 | -This is the same as I<-oo qemu-boot>.
 | ||||||
| -virt-v2v finishes.
 |  | ||||||
| -
 | -
 | ||||||
|  =item B<-q> |  =item B<-q> | ||||||
|   |   | ||||||
|  =item B<--quiet> |  =item B<--quiet> | ||||||
| diff --git a/v2v/cmdline.ml b/v2v/cmdline.ml
 | diff --git a/output/output.ml b/output/output.ml
 | ||||||
| index 5e7c01f8..ac10ec31 100644
 | index 92b03525..1414a521 100644
 | ||||||
| --- a/v2v/cmdline.ml
 | --- a/output/output.ml
 | ||||||
| +++ b/v2v/cmdline.ml
 | +++ b/output/output.ml
 | ||||||
| @@ -276,7 +276,6 @@ let parse_cmdline () =
 | @@ -1346,6 +1346,9 @@ and qemu_parse_options cmdline =
 | ||||||
|                                      s_"Same as ‘-ip filename’"; |      ) cmdline.output_options; | ||||||
|      [ L"print-source" ], Getopt.Set print_source, |    let qemu_boot = !qemu_boot in | ||||||
|                                      s_"Print source and stop"; |  | ||||||
| -    [ L"qemu-boot" ], Getopt.Set qemu_boot, s_"Boot in qemu (-o qemu only)";
 |  | ||||||
|      [ L"root" ],     Getopt.String ("ask|... ", set_root_choice), |  | ||||||
|                                      s_"How to choose root filesystem"; |  | ||||||
|      [ L"vddk-config" ], Getopt.String ("filename", set_input_option_compat "vddk-config"), |  | ||||||
| @@ -652,6 +651,8 @@ read the man page virt-v2v(1).
 |  | ||||||
|          | Some d when not (is_directory d) -> |  | ||||||
|             error (f_"-os %s: output directory does not exist or is not a directory") d |  | ||||||
|          | Some d -> d in |  | ||||||
| +      if qemu_boot then
 |  | ||||||
| +        error (f_"-o qemu: the --qemu-boot option cannot be used in RHEL");
 |  | ||||||
|        Output_qemu.output_qemu os qemu_boot, |  | ||||||
|        output_format, output_alloc |  | ||||||
|   |   | ||||||
|  | +  if qemu_boot then
 | ||||||
|  | +    error (f_"-o qemu: the -oo qemu-boot option cannot be used in RHEL");
 | ||||||
|  | +
 | ||||||
|  |    (* -os must be set to a directory. *) | ||||||
|  |    let output_storage = | ||||||
|  |      match cmdline.output_storage with | ||||||
|  | diff --git a/v2v/v2v.ml b/v2v/v2v.ml
 | ||||||
|  | index a88e0509..1104295c 100644
 | ||||||
|  | --- a/v2v/v2v.ml
 | ||||||
|  | +++ b/v2v/v2v.ml
 | ||||||
|  | @@ -218,8 +218,6 @@ let rec main () =
 | ||||||
|  |        s_"Same as ‘-ip filename’"; | ||||||
|  |      [ L"print-source" ], Getopt.Set print_source, | ||||||
|  |        s_"Print source and stop"; | ||||||
|  | -    [ L"qemu-boot" ], Getopt.Unit (fun () -> add_o_option "-oo" "qemu-boot"),
 | ||||||
|  | -      s_"Boot in qemu (-o qemu only)";
 | ||||||
|  |      [ L"root" ],     Getopt.String ("ask|... ", add_conv_option "--root"), | ||||||
|  |        s_"How to choose root filesystem"; | ||||||
|  |      [ L"vddk-config" ], Getopt.String ("filename", set_input_option_compat "vddk-config"), | ||||||
| -- 
 | -- 
 | ||||||
| 2.31.1 | 2.31.1 | ||||||
| 
 | 
 | ||||||
| @ -1,90 +0,0 @@ | |||||||
| From abe3c7539b6221e8ab3cc35ee3d58b1aa06bbef4 Mon Sep 17 00:00:00 2001 |  | ||||||
| From: "Richard W.M. Jones" <rjones@redhat.com> |  | ||||||
| Date: Mon, 14 May 2018 10:16:58 +0100 |  | ||||||
| Subject: [PATCH 02/11] RHEL: v2v: rhv-upload: Remove restriction on -oa |  | ||||||
|  sparse. |  | ||||||
| 
 |  | ||||||
| See: https://bugzilla.redhat.com/show_bug.cgi?id=1565681 |  | ||||||
| and the v2v-devel private thread "Do we already support migration using FC?" |  | ||||||
| ---
 |  | ||||||
|  docs/virt-v2v-output-rhv.pod |  8 +------- |  | ||||||
|  v2v/output_rhv_upload.ml     | 10 +--------- |  | ||||||
|  v2v/rhv-upload-transfer.py   |  4 +--- |  | ||||||
|  3 files changed, 3 insertions(+), 19 deletions(-) |  | ||||||
| 
 |  | ||||||
| diff --git a/docs/virt-v2v-output-rhv.pod b/docs/virt-v2v-output-rhv.pod
 |  | ||||||
| index dc6b2c0a..7b8fdc0f 100644
 |  | ||||||
| --- a/docs/virt-v2v-output-rhv.pod
 |  | ||||||
| +++ b/docs/virt-v2v-output-rhv.pod
 |  | ||||||
| @@ -5,7 +5,7 @@ virt-v2v-output-rhv - Using virt-v2v to convert guests to oVirt or RHV
 |  | ||||||
|  =head1 SYNOPSIS |  | ||||||
|   |  | ||||||
|   virt-v2v [-i* options] -o rhv-upload [-oc ENGINE_URL] -os STORAGE |  | ||||||
| -                        [-op PASSWORD] [-of raw]
 |  | ||||||
| +                        [-op PASSWORD]
 |  | ||||||
|                          [-oo rhv-cafile=FILE] |  | ||||||
|                          [-oo rhv-cluster=CLUSTER] |  | ||||||
|                          [-oo rhv-direct] |  | ||||||
| @@ -79,12 +79,6 @@ username is not specified then virt-v2v defaults to using
 |  | ||||||
|  C<admin@internal> which is the typical superuser account for oVirt |  | ||||||
|  instances. |  | ||||||
|   |  | ||||||
| -=item I<-of raw>
 |  | ||||||
| -
 |  | ||||||
| -Currently you must use I<-of raw> and you cannot use I<-oa preallocated>.
 |  | ||||||
| -
 |  | ||||||
| -These restrictions will be loosened in a future version.
 |  | ||||||
| -
 |  | ||||||
|  =item I<-op> F<password-file> |  | ||||||
|   |  | ||||||
|  A file containing a password to be used when connecting to the oVirt |  | ||||||
| diff --git a/v2v/output_rhv_upload.ml b/v2v/output_rhv_upload.ml
 |  | ||||||
| index 50baa595..be5e9851 100644
 |  | ||||||
| --- a/v2v/output_rhv_upload.ml
 |  | ||||||
| +++ b/v2v/output_rhv_upload.ml
 |  | ||||||
| @@ -146,17 +146,10 @@ let error_unless_nbdkit_compiled_with_selinux config =
 |  | ||||||
|        error (f_"nbdkit was compiled without SELinux support.  You will have to recompile nbdkit with libselinux-devel installed, or else set SELinux to Permissive mode while doing the conversion.") |  | ||||||
|    ) |  | ||||||
|   |  | ||||||
| -(* Output sparse must be sparse.  We may be able to
 |  | ||||||
| - * lift this limitation in future, but it requires changes on the
 |  | ||||||
| - * RHV side.  See TODO file for details.  XXX
 |  | ||||||
| - *)
 |  | ||||||
| +(* Output format must be raw. *)
 |  | ||||||
|  let error_current_limitation required_param = |  | ||||||
|    error (f_"rhv-upload: currently you must use ‘%s’.  This restriction will be loosened in a future version.") required_param |  | ||||||
|   |  | ||||||
| -let error_unless_output_alloc_sparse output_alloc =
 |  | ||||||
| -  if output_alloc <> Sparse then
 |  | ||||||
| -    error_current_limitation "-oa sparse"
 |  | ||||||
| -
 |  | ||||||
|  let json_optstring = function |  | ||||||
|    | Some s -> JSON.String s |  | ||||||
|    | None -> JSON.Null |  | ||||||
| @@ -271,7 +264,6 @@ object
 |  | ||||||
|      error_unless_nbdkit_min_version config; |  | ||||||
|      error_unless_nbdkit_python_plugin_working plugin_script; |  | ||||||
|      error_unless_nbdkit_compiled_with_selinux config; |  | ||||||
| -    error_unless_output_alloc_sparse output_alloc;
 |  | ||||||
|   |  | ||||||
|      (* Python code prechecks. *) |  | ||||||
|      let json_params = match rhv_options.rhv_disk_uuids with |  | ||||||
| diff --git a/v2v/rhv-upload-transfer.py b/v2v/rhv-upload-transfer.py
 |  | ||||||
| index 5aebcd1d..f38cd9c0 100644
 |  | ||||||
| --- a/v2v/rhv-upload-transfer.py
 |  | ||||||
| +++ b/v2v/rhv-upload-transfer.py
 |  | ||||||
| @@ -111,10 +111,8 @@ def create_disk(connection):
 |  | ||||||
|              # size, based on qemu-img measure of the overlay. |  | ||||||
|              initial_size=params['disk_size'], |  | ||||||
|              provisioned_size=params['disk_size'], |  | ||||||
| -            # XXX Ignores params['output_sparse'].
 |  | ||||||
| -            # Handling this properly will be complex, see:
 |  | ||||||
|              # https://www.redhat.com/archives/libguestfs/2018-March/msg00177.html |  | ||||||
| -            sparse=True,
 |  | ||||||
| +            sparse=params['output_sparse'],
 |  | ||||||
|              storage_domains=[ |  | ||||||
|                  types.StorageDomain( |  | ||||||
|                      name=params['output_storage'], |  | ||||||
| -- 
 |  | ||||||
| 2.31.1 |  | ||||||
| 
 |  | ||||||
| @ -1,17 +1,17 @@ | |||||||
| From 49385571ce5967f8d9a102e935f201ee9c22326d Mon Sep 17 00:00:00 2001 | From 539e158e5dffdb0324a89b2a059b44ae51d2cc29 Mon Sep 17 00:00:00 2001 | ||||||
| From: "Richard W.M. Jones" <rjones@redhat.com> | From: "Richard W.M. Jones" <rjones@redhat.com> | ||||||
| Date: Fri, 24 Apr 2015 09:45:41 -0400 | Date: Fri, 24 Apr 2015 09:45:41 -0400 | ||||||
| Subject: [PATCH 05/11] RHEL: Fix list of supported sound cards to match RHEL | Subject: [PATCH 3/8] RHEL: Fix list of supported sound cards to match RHEL | ||||||
|  qemu (RHBZ#1176493). |  qemu (RHBZ#1176493). | ||||||
| 
 | 
 | ||||||
| ---
 | ---
 | ||||||
|  v2v/utils.ml | 5 +++-- |  lib/utils.ml | 5 +++-- | ||||||
|  1 file changed, 3 insertions(+), 2 deletions(-) |  1 file changed, 3 insertions(+), 2 deletions(-) | ||||||
| 
 | 
 | ||||||
| diff --git a/v2v/utils.ml b/v2v/utils.ml
 | diff --git a/lib/utils.ml b/lib/utils.ml
 | ||||||
| index 7136e4be..a6c359f0 100644
 | index 1eac3f3f..a478fc33 100644
 | ||||||
| --- a/v2v/utils.ml
 | --- a/lib/utils.ml
 | ||||||
| +++ b/v2v/utils.ml
 | +++ b/lib/utils.ml
 | ||||||
| @@ -59,13 +59,14 @@ let kvm_arch = function
 | @@ -59,13 +59,14 @@ let kvm_arch = function
 | ||||||
|  (* Does qemu support the given sound card? *) |  (* Does qemu support the given sound card? *) | ||||||
|  let qemu_supports_sound_card = function |  let qemu_supports_sound_card = function | ||||||
| @ -1,33 +0,0 @@ | |||||||
| From 0839ba57487b73cfb684ea495280db5d946f667a Mon Sep 17 00:00:00 2001 |  | ||||||
| From: "Richard W.M. Jones" <rjones@redhat.com> |  | ||||||
| Date: Sun, 28 Sep 2014 19:14:43 +0100 |  | ||||||
| Subject: [PATCH 03/11] RHEL: v2v: Select correct qemu binary for -o qemu mode |  | ||||||
|  (RHBZ#1147313). |  | ||||||
| 
 |  | ||||||
| RHEL does not have qemu-system-x86_64 (etc), and in addition the |  | ||||||
| qemu binary is located in /usr/libexec.  Encode the path to this |  | ||||||
| binary directly in the script. |  | ||||||
| 
 |  | ||||||
| Note that we don't support people running qemu directly like this. |  | ||||||
| It's just for quick testing of converted VMs, and to help us with |  | ||||||
| support cases. |  | ||||||
| ---
 |  | ||||||
|  v2v/output_qemu.ml | 2 +- |  | ||||||
|  1 file changed, 1 insertion(+), 1 deletion(-) |  | ||||||
| 
 |  | ||||||
| diff --git a/v2v/output_qemu.ml b/v2v/output_qemu.ml
 |  | ||||||
| index 12c56836..7391eda0 100644
 |  | ||||||
| --- a/v2v/output_qemu.ml
 |  | ||||||
| +++ b/v2v/output_qemu.ml
 |  | ||||||
| @@ -79,7 +79,7 @@ object
 |  | ||||||
|       * module deals with shell and qemu comma quoting. |  | ||||||
|       *) |  | ||||||
|      let cmd = Qemuopts.create () in |  | ||||||
| -    Qemuopts.set_binary_by_arch cmd (Some guestcaps.gcaps_arch);
 |  | ||||||
| +    Qemuopts.set_binary cmd "/usr/libexec/qemu-kvm";
 |  | ||||||
|   |  | ||||||
|      let flag = Qemuopts.flag cmd |  | ||||||
|      and arg = Qemuopts.arg cmd |  | ||||||
| -- 
 |  | ||||||
| 2.31.1 |  | ||||||
| 
 |  | ||||||
| @ -1,15 +1,42 @@ | |||||||
| From db2150a5d790c35fb23c6d9d6b29e602482ce555 Mon Sep 17 00:00:00 2001 | From b4bab3eda2afabadcbf2e07501eab2049d1a3133 Mon Sep 17 00:00:00 2001 | ||||||
| From: "Richard W.M. Jones" <rjones@redhat.com> | From: "Richard W.M. Jones" <rjones@redhat.com> | ||||||
| Date: Sun, 30 Aug 2015 03:21:57 -0400 | Date: Sun, 30 Aug 2015 03:21:57 -0400 | ||||||
| Subject: [PATCH 06/11] RHEL: Fix tests for libguestfs-winsupport. | Subject: [PATCH 4/8] RHEL: Fixes for libguestfs-winsupport. | ||||||
| 
 | 
 | ||||||
| It doesn't let us use guestfish for arbitrary Windows edits. | In tests we cannot use guestfish for arbitrary Windows edits. | ||||||
|  | In virt-v2v helpers we must set the program name to virt-v2v. | ||||||
| ---
 | ---
 | ||||||
|  |  convert/convert.ml                         | 1 + | ||||||
|  |  convert/windows_virtio.ml                  | 1 + | ||||||
|  test-data/phony-guests/make-windows-img.sh | 1 + |  test-data/phony-guests/make-windows-img.sh | 1 + | ||||||
|  tests/test-v2v-virtio-win-iso.sh           | 8 +++++++- |  tests/test-v2v-virtio-win-iso.sh           | 8 +++++++- | ||||||
|  tests/test-v2v-windows-conversion.sh       | 8 +++++++- |  tests/test-v2v-windows-conversion.sh       | 8 +++++++- | ||||||
|  3 files changed, 15 insertions(+), 2 deletions(-) |  5 files changed, 17 insertions(+), 2 deletions(-) | ||||||
| 
 | 
 | ||||||
|  | diff --git a/convert/convert.ml b/convert/convert.ml
 | ||||||
|  | index 07c7aee9..a4b0c60e 100644
 | ||||||
|  | --- a/convert/convert.ml
 | ||||||
|  | +++ b/convert/convert.ml
 | ||||||
|  | @@ -190,6 +190,7 @@ helper-v2v-convert V2VDIR
 | ||||||
|  |   | ||||||
|  |    message (f_"Opening the source"); | ||||||
|  |    let g = open_guestfs ~identifier:"v2v" () in | ||||||
|  | +  g#set_program "virt-v2v";
 | ||||||
|  |    g#set_memsize (g#get_memsize () * 2); | ||||||
|  |    (* Setting the number of vCPUs allows parallel mkinitrd, but make | ||||||
|  |     * sure this is not too large because each vCPU consumes guest RAM. | ||||||
|  | diff --git a/convert/windows_virtio.ml b/convert/windows_virtio.ml
 | ||||||
|  | index f843dae2..6623d03d 100644
 | ||||||
|  | --- a/convert/windows_virtio.ml
 | ||||||
|  | +++ b/convert/windows_virtio.ml
 | ||||||
|  | @@ -356,6 +356,7 @@ and copy_from_virtio_win g inspect srcdir destdir filter missing =
 | ||||||
|  |      let g2 = | ||||||
|  |        try | ||||||
|  |          let g2 = open_guestfs ~identifier:"virtio_win" () in | ||||||
|  | +        g#set_program "virt-v2v";
 | ||||||
|  |          g2#add_drive_opts virtio_win ~readonly:true; | ||||||
|  |          g2#launch (); | ||||||
|  |          g2 | ||||||
| diff --git a/test-data/phony-guests/make-windows-img.sh b/test-data/phony-guests/make-windows-img.sh
 | diff --git a/test-data/phony-guests/make-windows-img.sh b/test-data/phony-guests/make-windows-img.sh
 | ||||||
| index 30908a91..73cf5144 100755
 | index 30908a91..73cf5144 100755
 | ||||||
| --- a/test-data/phony-guests/make-windows-img.sh
 | --- a/test-data/phony-guests/make-windows-img.sh
 | ||||||
							
								
								
									
										26
									
								
								0005-RHEL-v2v-i-disk-force-VNC-as-display-RHBZ-1372671.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								0005-RHEL-v2v-i-disk-force-VNC-as-display-RHBZ-1372671.patch
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,26 @@ | |||||||
|  | From 4022a90a8974147000fb5053d7596066db1b82b9 Mon Sep 17 00:00:00 2001 | ||||||
|  | From: "Richard W.M. Jones" <rjones@redhat.com> | ||||||
|  | Date: Thu, 2 Mar 2017 14:21:37 +0100 | ||||||
|  | Subject: [PATCH 5/8] RHEL: v2v: -i disk: force VNC as display (RHBZ#1372671) | ||||||
|  | 
 | ||||||
|  | The SDL output mode is not supported in RHEL's qemu-kvm. | ||||||
|  | ---
 | ||||||
|  |  input/input.ml | 2 +- | ||||||
|  |  1 file changed, 1 insertion(+), 1 deletion(-) | ||||||
|  | 
 | ||||||
|  | diff --git a/input/input.ml b/input/input.ml
 | ||||||
|  | index a8416eaf..9175a531 100644
 | ||||||
|  | --- a/input/input.ml
 | ||||||
|  | +++ b/input/input.ml
 | ||||||
|  | @@ -270,7 +270,7 @@ and disk_source cmdline args =
 | ||||||
|  |      s_features = [ "acpi"; "apic"; "pae" ]; | ||||||
|  |      s_firmware = UnknownFirmware; (* causes virt-v2v to autodetect *) | ||||||
|  |      s_display = | ||||||
|  | -      Some { s_display_type = Window; s_keymap = None; s_password = None;
 | ||||||
|  | +      Some { s_display_type = VNC; s_keymap = None; s_password = None;
 | ||||||
|  |               s_listen = LNoListen; s_port = None }; | ||||||
|  |      s_video = None; | ||||||
|  |      s_sound = None; | ||||||
|  | -- 
 | ||||||
|  | 2.31.1 | ||||||
|  | 
 | ||||||
| @ -1,7 +1,7 @@ | |||||||
| From aa5cf3ba5d10400ee6d6c63dd77c711b6fdec116 Mon Sep 17 00:00:00 2001 | From 7f77cb4a56eb8dcd26db9e81e0fb2f41777129c3 Mon Sep 17 00:00:00 2001 | ||||||
| From: Pino Toscano <ptoscano@redhat.com> | From: Pino Toscano <ptoscano@redhat.com> | ||||||
| Date: Wed, 8 Mar 2017 11:03:40 +0100 | Date: Wed, 8 Mar 2017 11:03:40 +0100 | ||||||
| Subject: [PATCH 09/11] RHEL: v2v: do not mention SUSE Xen hosts (RHBZ#1430203) | Subject: [PATCH 6/8] RHEL: v2v: do not mention SUSE Xen hosts (RHBZ#1430203) | ||||||
| 
 | 
 | ||||||
| They are not supported in RHEL. | They are not supported in RHEL. | ||||||
| ---
 | ---
 | ||||||
| @ -1,7 +1,7 @@ | |||||||
| From ccaae02ef3f081b544eca82f3652ca50ac5566a9 Mon Sep 17 00:00:00 2001 | From a4db166d7a5c480c765ee74340463db800533c73 Mon Sep 17 00:00:00 2001 | ||||||
| From: Pino Toscano <ptoscano@redhat.com> | From: Pino Toscano <ptoscano@redhat.com> | ||||||
| Date: Tue, 26 Mar 2019 09:42:25 +0100 | Date: Tue, 26 Mar 2019 09:42:25 +0100 | ||||||
| Subject: [PATCH 10/11] RHEL: point to KB for supported v2v hypervisors/guests | Subject: [PATCH 7/8] RHEL: point to KB for supported v2v hypervisors/guests | ||||||
| 
 | 
 | ||||||
| ---
 | ---
 | ||||||
|  docs/virt-v2v-support.pod | 104 ++------------------------------------ |  docs/virt-v2v-support.pod | 104 ++------------------------------------ | ||||||
| @ -1,288 +0,0 @@ | |||||||
| From 3b69cfa365c7b014ca81b09e857ab294cff04914 Mon Sep 17 00:00:00 2001 |  | ||||||
| From: "Richard W.M. Jones" <rjones@redhat.com> |  | ||||||
| Date: Thu, 14 Jan 2016 11:53:42 -0500 |  | ||||||
| Subject: [PATCH 07/11] RHEL: v2v: Disable the virt-v2v --in-place option. |  | ||||||
| 
 |  | ||||||
| This disables the virt-v2v --in-place option which we do not |  | ||||||
| wish to support in RHEL. |  | ||||||
| (See commit d0069559a939e47e5f29973ed9a69a13f0b58301). |  | ||||||
| ---
 |  | ||||||
|  docs/test-v2v-docs.sh      |   1 + |  | ||||||
|  docs/virt-v2v.pod          |  50 +---------------- |  | ||||||
|  tests/Makefile.am          |   2 - |  | ||||||
|  tests/test-v2v-in-place.sh | 108 ------------------------------------- |  | ||||||
|  v2v/cmdline.ml             |   8 +-- |  | ||||||
|  5 files changed, 8 insertions(+), 161 deletions(-) |  | ||||||
|  delete mode 100755 tests/test-v2v-in-place.sh |  | ||||||
| 
 |  | ||||||
| diff --git a/docs/test-v2v-docs.sh b/docs/test-v2v-docs.sh
 |  | ||||||
| index 465df26f..ae1a6c68 100755
 |  | ||||||
| --- a/docs/test-v2v-docs.sh
 |  | ||||||
| +++ b/docs/test-v2v-docs.sh
 |  | ||||||
| @@ -30,6 +30,7 @@ $srcdir/../podcheck.pl virt-v2v.pod virt-v2v \
 |  | ||||||
|  --debug-overlay,\ |  | ||||||
|  --ic,\ |  | ||||||
|  --if,\ |  | ||||||
| +--in-place,\
 |  | ||||||
|  --io,\ |  | ||||||
|  --ip,\ |  | ||||||
|  --it,\ |  | ||||||
| diff --git a/docs/virt-v2v.pod b/docs/virt-v2v.pod
 |  | ||||||
| index 83f6fd4d..719a95b5 100644
 |  | ||||||
| --- a/docs/virt-v2v.pod
 |  | ||||||
| +++ b/docs/virt-v2v.pod
 |  | ||||||
| @@ -8,10 +8,6 @@ virt-v2v - Convert a guest to use KVM
 |  | ||||||
|            [-o mode] [other -o* options] |  | ||||||
|            [guest|filename] |  | ||||||
|   |  | ||||||
| - virt-v2v --in-place
 |  | ||||||
| -          [-i mode] [other -i* options]
 |  | ||||||
| -          [guest|filename]
 |  | ||||||
| -
 |  | ||||||
|  =head1 DESCRIPTION |  | ||||||
|   |  | ||||||
|  Virt-v2v converts a single guest from a foreign hypervisor to run on |  | ||||||
| @@ -39,9 +35,6 @@ these sides of virt-v2v are documented separately in this manual.
 |  | ||||||
|   |  | ||||||
|  Virt-v2v normally copies from the input to the output, called "copying |  | ||||||
|  mode".  In this case the source guest is always left unchanged. |  | ||||||
| -In-place conversion (I<--in-place>) only uses the I<-i*> options and
 |  | ||||||
| -modifies the source guest in-place.  (See L</In-place conversion>
 |  | ||||||
| -below.)
 |  | ||||||
|   |  | ||||||
|  =head2 Other virt-v2v topics |  | ||||||
|   |  | ||||||
| @@ -292,20 +285,6 @@ For I<-i disk> only, this specifies the format of the input disk
 |  | ||||||
|  image.  For other input methods you should specify the input |  | ||||||
|  format in the metadata. |  | ||||||
|   |  | ||||||
| -=item B<--in-place>
 |  | ||||||
| -
 |  | ||||||
| -Do not create an output virtual machine in the target hypervisor.
 |  | ||||||
| -Instead, adjust the guest OS in the source VM to run in the input
 |  | ||||||
| -hypervisor.
 |  | ||||||
| -
 |  | ||||||
| -This mode is meant for integration with other toolsets, which take the
 |  | ||||||
| -responsibility of converting the VM configuration, providing for
 |  | ||||||
| -rollback in case of errors, transforming the storage, etc.
 |  | ||||||
| -
 |  | ||||||
| -See L</In-place conversion> below.
 |  | ||||||
| -
 |  | ||||||
| -Conflicts with all I<-o *> options.
 |  | ||||||
| -
 |  | ||||||
|  =item B<-io> OPTION=VALUE |  | ||||||
|   |  | ||||||
|  Set input option(s) related to the current input mode or transport. |  | ||||||
| @@ -1298,8 +1277,8 @@ have at least 100 available inodes.
 |  | ||||||
|  =head3 Minimum free space check in the host |  | ||||||
|   |  | ||||||
|  You must have sufficient free space in the host directory used to |  | ||||||
| -store large temporary overlays (except in I<--in-place> mode).  To
 |  | ||||||
| -find out which directory this is, use:
 |  | ||||||
| +store large temporary overlays.  To find out
 |  | ||||||
| +which directory this is, use:
 |  | ||||||
|   |  | ||||||
|   $ df -h "`guestfish get-cachedir`" |  | ||||||
|   Filesystem        Size  Used Avail Use% Mounted on |  | ||||||
| @@ -1437,31 +1416,6 @@ that instead.
 |  | ||||||
|     </devices> |  | ||||||
|   </domain> |  | ||||||
|   |  | ||||||
| -=head2 In-place conversion
 |  | ||||||
| -
 |  | ||||||
| -It is also possible to use virt-v2v in scenarios where a foreign VM
 |  | ||||||
| -has already been imported into a KVM-based hypervisor, but still needs
 |  | ||||||
| -adjustments in the guest to make it run in the new virtual hardware.
 |  | ||||||
| -
 |  | ||||||
| -In that case it is assumed that a third-party tool has created the
 |  | ||||||
| -target VM in the supported KVM-based hypervisor based on the source VM
 |  | ||||||
| -configuration and contents, but using virtual devices more appropriate
 |  | ||||||
| -for KVM (e.g. virtio storage and network, etc.).
 |  | ||||||
| -
 |  | ||||||
| -Then, to make the guest OS boot and run in the changed environment,
 |  | ||||||
| -one can use:
 |  | ||||||
| -
 |  | ||||||
| - virt-v2v -ic qemu:///system converted_vm --in-place
 |  | ||||||
| -
 |  | ||||||
| -Virt-v2v will analyze the configuration of C<converted_vm> in the
 |  | ||||||
| -C<qemu:///system> libvirt instance, and apply various fixups to the
 |  | ||||||
| -guest OS configuration to make it match the VM configuration.  This
 |  | ||||||
| -may include installing virtio drivers, configuring the bootloader, the
 |  | ||||||
| -mountpoints, the network interfaces, and so on.
 |  | ||||||
| -
 |  | ||||||
| -Should an error occur during the operation, virt-v2v exits with an
 |  | ||||||
| -error code leaving the VM in an undefined state.
 |  | ||||||
| -
 |  | ||||||
|  =head2 Machine readable output |  | ||||||
|   |  | ||||||
|  The I<--machine-readable> option can be used to make the output more |  | ||||||
| diff --git a/tests/Makefile.am b/tests/Makefile.am
 |  | ||||||
| index 41d38d30..9bbd86d6 100644
 |  | ||||||
| --- a/tests/Makefile.am
 |  | ||||||
| +++ b/tests/Makefile.am
 |  | ||||||
| @@ -77,7 +77,6 @@ TESTS = \
 |  | ||||||
|  	test-v2v-floppy.sh \ |  | ||||||
|  	test-v2v-i-disk.sh \ |  | ||||||
|  	test-v2v-i-ova.sh \ |  | ||||||
| -	test-v2v-in-place.sh \
 |  | ||||||
|  	test-v2v-mac.sh \ |  | ||||||
|  	test-v2v-machine-readable.sh \ |  | ||||||
|  	test-v2v-networks-and-bridges.sh \ |  | ||||||
| @@ -226,7 +225,6 @@ EXTRA_DIST += \
 |  | ||||||
|  	test-v2v-i-vmx-3.vmx \ |  | ||||||
|  	test-v2v-i-vmx-4.vmx \ |  | ||||||
|  	test-v2v-i-vmx-5.vmx \ |  | ||||||
| -	test-v2v-in-place.sh \
 |  | ||||||
|  	test-v2v-it-vddk-io-query.sh \ |  | ||||||
|  	test-v2v-machine-readable.sh \ |  | ||||||
|  	test-v2v-mac-expected.xml \ |  | ||||||
| diff --git a/tests/test-v2v-in-place.sh b/tests/test-v2v-in-place.sh
 |  | ||||||
| deleted file mode 100755 |  | ||||||
| index 9da8fa63..00000000
 |  | ||||||
| --- a/tests/test-v2v-in-place.sh
 |  | ||||||
| +++ /dev/null
 |  | ||||||
| @@ -1,108 +0,0 @@
 |  | ||||||
| -#!/bin/bash -
 |  | ||||||
| -# libguestfs virt-v2v test script
 |  | ||||||
| -# Copyright (C) 2014 Red Hat Inc.
 |  | ||||||
| -# Copyright (C) 2015 Parallels IP Holdings GmbH.
 |  | ||||||
| -#
 |  | ||||||
| -# This program is free software; you can redistribute it and/or modify
 |  | ||||||
| -# it under the terms of the GNU General Public License as published by
 |  | ||||||
| -# the Free Software Foundation; either version 2 of the License, or
 |  | ||||||
| -# (at your option) any later version.
 |  | ||||||
| -#
 |  | ||||||
| -# This program is distributed in the hope that it will be useful,
 |  | ||||||
| -# but WITHOUT ANY WARRANTY; without even the implied warranty of
 |  | ||||||
| -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 |  | ||||||
| -# GNU General Public License for more details.
 |  | ||||||
| -#
 |  | ||||||
| -# You should have received a copy of the GNU General Public License
 |  | ||||||
| -# along with this program; if not, write to the Free Software
 |  | ||||||
| -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 |  | ||||||
| -
 |  | ||||||
| -# Test --in-place.
 |  | ||||||
| -
 |  | ||||||
| -unset CDPATH
 |  | ||||||
| -export LANG=C
 |  | ||||||
| -set -e
 |  | ||||||
| -
 |  | ||||||
| -source ./functions.sh
 |  | ||||||
| -set -e
 |  | ||||||
| -set -x
 |  | ||||||
| -
 |  | ||||||
| -skip_if_skipped
 |  | ||||||
| -requires test -f ../test-data/phony-guests/windows.img
 |  | ||||||
| -
 |  | ||||||
| -img_base="$abs_top_builddir/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=$PWD/test-v2v-in-place.d
 |  | ||||||
| -rm -rf $d
 |  | ||||||
| -cleanup_fn rm -r $d
 |  | ||||||
| -mkdir $d
 |  | ||||||
| -
 |  | ||||||
| -img="$d/test.qcow2"
 |  | ||||||
| -rm -f $img
 |  | ||||||
| -qemu-img create -f qcow2 -b $img_base -o compat=1.1,backing_fmt=raw $img
 |  | ||||||
| -md5="$(do_md5 $img_base)"
 |  | ||||||
| -
 |  | ||||||
| -libvirt_xml="$d/test.xml"
 |  | ||||||
| -rm -f $libvirt_xml
 |  | ||||||
| -n=windows-overlay
 |  | ||||||
| -cat > $libvirt_xml <<EOF
 |  | ||||||
| -<node>
 |  | ||||||
| -  <domain type='test'>
 |  | ||||||
| -    <name>$n</name>
 |  | ||||||
| -    <memory>1048576</memory>
 |  | ||||||
| -    <os>
 |  | ||||||
| -      <type>hvm</type>
 |  | ||||||
| -      <boot dev='hd'/>
 |  | ||||||
| -    </os>
 |  | ||||||
| -    <devices>
 |  | ||||||
| -      <disk type='file' device='disk'>
 |  | ||||||
| -        <driver name='qemu' type='qcow2'/>
 |  | ||||||
| -        <source file='$img'/>
 |  | ||||||
| -        <target dev='vda' bus='virtio'/>
 |  | ||||||
| -      </disk>
 |  | ||||||
| -    </devices>
 |  | ||||||
| -  </domain>
 |  | ||||||
| -</node>
 |  | ||||||
| -EOF
 |  | ||||||
| -
 |  | ||||||
| -$VG virt-v2v --debug-gc -i libvirt -ic "test://$libvirt_xml" $n --in-place
 |  | ||||||
| -
 |  | ||||||
| -# Test that the drivers have been copied over into the guest
 |  | ||||||
| -script="$d/test.fish"
 |  | ||||||
| -expected="$d/expected"
 |  | ||||||
| -response="$d/response"
 |  | ||||||
| -
 |  | ||||||
| -mktest ()
 |  | ||||||
| -{
 |  | ||||||
| -    local cmd="$1" exp="$2"
 |  | ||||||
| -
 |  | ||||||
| -    echo "echo '$cmd'" >> "$script"
 |  | ||||||
| -    echo "$cmd" >> "$expected"
 |  | ||||||
| -
 |  | ||||||
| -    echo "$cmd" >> "$script"
 |  | ||||||
| -    echo "$exp" >> "$expected"
 |  | ||||||
| -}
 |  | ||||||
| -
 |  | ||||||
| -:> "$script"
 |  | ||||||
| -:> "$expected"
 |  | ||||||
| -
 |  | ||||||
| -firstboot_dir="/Program Files/Guestfs/Firstboot"
 |  | ||||||
| -mktest "is-dir \"$firstboot_dir\"" true
 |  | ||||||
| -mktest "is-file \"$firstboot_dir/firstboot.bat\"" true
 |  | ||||||
| -mktest "is-dir \"$firstboot_dir/scripts\"" true
 |  | ||||||
| -virtio_dir="/Windows/Drivers/VirtIO"
 |  | ||||||
| -mktest "is-dir \"$virtio_dir\"" true
 |  | ||||||
| -for drv in netkvm qxl vioscsi viostor; do
 |  | ||||||
| -    for sfx in cat inf sys; do
 |  | ||||||
| -        mktest "is-file \"$virtio_dir/$drv.$sfx\"" true
 |  | ||||||
| -    done
 |  | ||||||
| -done
 |  | ||||||
| -
 |  | ||||||
| -guestfish --ro -a "$img" -i < "$script" > "$response"
 |  | ||||||
| -diff -u "$expected" "$response"
 |  | ||||||
| -
 |  | ||||||
| -# Test the base image remained untouched
 |  | ||||||
| -test "$md5" = "$(do_md5 $img_base)"
 |  | ||||||
| diff --git a/v2v/cmdline.ml b/v2v/cmdline.ml
 |  | ||||||
| index ac10ec31..01314580 100644
 |  | ||||||
| --- a/v2v/cmdline.ml
 |  | ||||||
| +++ b/v2v/cmdline.ml
 |  | ||||||
| @@ -246,8 +246,7 @@ let parse_cmdline () =
 |  | ||||||
|                                      s_"Use password from file to connect to input hypervisor"; |  | ||||||
|      [ M"it" ],       Getopt.String ("transport", set_string_option_once "-it" input_transport), |  | ||||||
|                                      s_"Input transport"; |  | ||||||
| -    [ L"in-place" ], Getopt.Set in_place,
 |  | ||||||
| -                                    s_"Only tune the guest in the input VM";
 |  | ||||||
| +    [ L"in-place" ], Getopt.Set in_place, Getopt.hidden_option_description;
 |  | ||||||
|      [ L"mac" ],      Getopt.String ("mac:network|bridge|ip:out", add_mac), |  | ||||||
|                                      s_"Map NIC to network or bridge or assign static IP"; |  | ||||||
|      [ S 'n'; L"network" ], Getopt.String ("in:out", add_network), |  | ||||||
| @@ -386,7 +385,6 @@ read the man page virt-v2v(1).
 |  | ||||||
|      pr "vddk\n"; |  | ||||||
|      pr "colours-option\n"; |  | ||||||
|      pr "vdsm-compat-option\n"; |  | ||||||
| -    pr "in-place\n";
 |  | ||||||
|      pr "io/oo\n"; |  | ||||||
|      pr "mac-option\n"; |  | ||||||
|      pr "bandwidth-option\n"; |  | ||||||
| @@ -556,6 +554,10 @@ read the man page virt-v2v(1).
 |  | ||||||
|             error (f_"only ‘-it ssh’ can be used here") in |  | ||||||
|        Input_vmx.input_vmx input_password input_transport arg in |  | ||||||
|   |  | ||||||
| +  (* Prevent use of --in-place option in RHEL. *)
 |  | ||||||
| +  if in_place then
 |  | ||||||
| +    error (f_"--in-place cannot be used in RHEL");
 |  | ||||||
| +
 |  | ||||||
|    (* Common error message. *) |  | ||||||
|    let error_option_cannot_be_used_in_output_mode mode opt = |  | ||||||
|      error (f_"-o %s: %s option cannot be used in this output mode") mode opt |  | ||||||
| -- 
 |  | ||||||
| 2.31.1 |  | ||||||
| 
 |  | ||||||
| @ -1,16 +1,15 @@ | |||||||
| From 7edb403ee54153c64205915c0bd1d177c0094ee0 Mon Sep 17 00:00:00 2001 | From f801f4a34f9b136e2cb5af3b936948f1ecb88154 Mon Sep 17 00:00:00 2001 | ||||||
| From: "Richard W.M. Jones" <rjones@redhat.com> | From: "Richard W.M. Jones" <rjones@redhat.com> | ||||||
| Date: Wed, 30 Jun 2021 11:15:52 +0100 | Date: Wed, 30 Jun 2021 11:15:52 +0100 | ||||||
| Subject: [PATCH 11/11] RHEL 9: Disable -o glance | Subject: [PATCH 8/8] RHEL 9: Disable -o glance | ||||||
| 
 | 
 | ||||||
| Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1977539 | Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1977539 | ||||||
| ---
 | ---
 | ||||||
|  docs/virt-v2v-output-openstack.pod | 56 ++---------------------------- |  docs/virt-v2v-output-openstack.pod | 56 ++---------------------------- | ||||||
|  docs/virt-v2v.pod                  | 22 ------------ |  docs/virt-v2v.pod                  | 20 ----------- | ||||||
|  |  output/output.ml                   |  3 +- | ||||||
|  tests/test-v2v-o-glance.sh         |  3 ++ |  tests/test-v2v-o-glance.sh         |  3 ++ | ||||||
|  v2v/cmdline.ml                     |  3 -- |  4 files changed, 7 insertions(+), 75 deletions(-) | ||||||
|  v2v/output_glance.ml               |  2 +- |  | ||||||
|  5 files changed, 6 insertions(+), 80 deletions(-) |  | ||||||
| 
 | 
 | ||||||
| diff --git a/docs/virt-v2v-output-openstack.pod b/docs/virt-v2v-output-openstack.pod
 | diff --git a/docs/virt-v2v-output-openstack.pod b/docs/virt-v2v-output-openstack.pod
 | ||||||
| index f5a3abad..1ab356e8 100644
 | index f5a3abad..1ab356e8 100644
 | ||||||
| @ -100,16 +99,10 @@ index f5a3abad..1ab356e8 100644 | |||||||
|  =head1 AUTHOR |  =head1 AUTHOR | ||||||
|   |   | ||||||
| diff --git a/docs/virt-v2v.pod b/docs/virt-v2v.pod
 | diff --git a/docs/virt-v2v.pod b/docs/virt-v2v.pod
 | ||||||
| index 719a95b5..2f4fe86c 100644
 | index 0a47b611..c70bfef5 100644
 | ||||||
| --- a/docs/virt-v2v.pod
 | --- a/docs/virt-v2v.pod
 | ||||||
| +++ b/docs/virt-v2v.pod
 | +++ b/docs/virt-v2v.pod
 | ||||||
| @@ -422,20 +422,10 @@ interested in looking at the metadata.
 | @@ -432,14 +432,6 @@ See L</Networks and bridges> below.
 | ||||||
|  This option is not compatible with I<-o libvirt> since it would create |  | ||||||
|  a faulty guest (one with no disks). |  | ||||||
|   |  | ||||||
| -This option is not compatible with I<-o glance> for technical reasons.
 |  | ||||||
| -
 |  | ||||||
|  =item B<-o> B<disk> |  | ||||||
|   |   | ||||||
|  This is the same as I<-o local>. |  This is the same as I<-o local>. | ||||||
|   |   | ||||||
| @ -124,7 +117,7 @@ index 719a95b5..2f4fe86c 100644 | |||||||
|  =item B<-o> B<json> |  =item B<-o> B<json> | ||||||
|   |   | ||||||
|  Set the output method to I<json>. |  Set the output method to I<json>. | ||||||
| @@ -1148,11 +1138,6 @@ and output methods may use disk space, as outlined in the table below.
 | @@ -1163,11 +1155,6 @@ and output methods may use disk space, as outlined in the table below.
 | ||||||
|  This temporarily places a full copy of the uncompressed source disks |  This temporarily places a full copy of the uncompressed source disks | ||||||
|  in C<$VIRT_V2V_TMPDIR> (or F</var/tmp>). |  in C<$VIRT_V2V_TMPDIR> (or F</var/tmp>). | ||||||
|   |   | ||||||
| @ -136,7 +129,7 @@ index 719a95b5..2f4fe86c 100644 | |||||||
|  =item I<-o local> |  =item I<-o local> | ||||||
|   |   | ||||||
|  =item I<-o qemu> |  =item I<-o qemu> | ||||||
| @@ -1337,13 +1322,6 @@ instance.
 | @@ -1352,13 +1339,6 @@ instance.
 | ||||||
|  Because of how Cinder volumes are presented as F</dev> block devices, |  Because of how Cinder volumes are presented as F</dev> block devices, | ||||||
|  using I<-o openstack> normally requires that virt-v2v is run as root. |  using I<-o openstack> normally requires that virt-v2v is run as root. | ||||||
|   |   | ||||||
| @ -150,6 +143,20 @@ index 719a95b5..2f4fe86c 100644 | |||||||
|  =item Writing to block devices |  =item Writing to block devices | ||||||
|   |   | ||||||
|  This normally requires root.  See the next section. |  This normally requires root.  See the next section. | ||||||
|  | diff --git a/output/output.ml b/output/output.ml
 | ||||||
|  | index 1414a521..69768ff1 100644
 | ||||||
|  | --- a/output/output.ml
 | ||||||
|  | +++ b/output/output.ml
 | ||||||
|  | @@ -75,7 +75,8 @@ let rec main () =
 | ||||||
|  |        error (f_"%s option used more than once on the command line") "-om"; | ||||||
|  |      match mode with | ||||||
|  |      | "disk" -> output_mode := Some `Disk | ||||||
|  | -    | "glance" -> output_mode := Some `Glance
 | ||||||
|  | +    | "glance" ->
 | ||||||
|  | +       error(f_"-o glance option has been removed from RHEL 9")
 | ||||||
|  |      | "json" -> output_mode := Some `Json | ||||||
|  |      | "libvirt" -> output_mode := Some `Libvirt | ||||||
|  |      | "null" -> output_mode := Some `Null | ||||||
| diff --git a/tests/test-v2v-o-glance.sh b/tests/test-v2v-o-glance.sh
 | diff --git a/tests/test-v2v-o-glance.sh b/tests/test-v2v-o-glance.sh
 | ||||||
| index c0db9115..074b5e16 100755
 | index c0db9115..074b5e16 100755
 | ||||||
| --- a/tests/test-v2v-o-glance.sh
 | --- a/tests/test-v2v-o-glance.sh
 | ||||||
| @ -164,37 +171,6 @@ index c0db9115..074b5e16 100755 | |||||||
|  source ./functions.sh |  source ./functions.sh | ||||||
|  set -e |  set -e | ||||||
|  set -x |  set -x | ||||||
| diff --git a/v2v/cmdline.ml b/v2v/cmdline.ml
 |  | ||||||
| index 01314580..e6c86b6f 100644
 |  | ||||||
| --- a/v2v/cmdline.ml
 |  | ||||||
| +++ b/v2v/cmdline.ml
 |  | ||||||
| @@ -170,7 +170,6 @@ let parse_cmdline () =
 |  | ||||||
|      if !output_mode <> `Not_set then |  | ||||||
|        error (f_"%s option used more than once on the command line") "-o"; |  | ||||||
|      match mode with |  | ||||||
| -    | "glance" -> output_mode := `Glance
 |  | ||||||
|      | "libvirt" -> output_mode := `Libvirt |  | ||||||
|      | "disk" | "local" -> output_mode := `Local |  | ||||||
|      | "json" -> output_mode := `JSON |  | ||||||
| @@ -323,8 +322,6 @@ let parse_cmdline () =
 |  | ||||||
|   |  | ||||||
|   virt-v2v -i disk disk.img -o local -os /var/tmp |  | ||||||
|   |  | ||||||
| - virt-v2v -i disk disk.img -o glance
 |  | ||||||
| -
 |  | ||||||
|  There is a companion front-end called \"virt-p2v\" which comes as an |  | ||||||
|  ISO or CD image that can be booted on physical machines. |  | ||||||
|   |  | ||||||
| diff --git a/v2v/output_glance.ml b/v2v/output_glance.ml
 |  | ||||||
| index 8c5426b9..3fce4e7a 100644
 |  | ||||||
| --- a/v2v/output_glance.ml
 |  | ||||||
| +++ b/v2v/output_glance.ml
 |  | ||||||
| @@ -100,4 +100,4 @@ object
 |  | ||||||
|  end |  | ||||||
|   |  | ||||||
|  let output_glance = new output_glance |  | ||||||
| -let () = Modules_list.register_output_module "glance"
 |  | ||||||
| +(* let () = Modules_list.register_output_module "glance" *)
 |  | ||||||
| -- 
 | -- 
 | ||||||
| 2.31.1 | 2.31.1 | ||||||
| 
 | 
 | ||||||
| @ -1,26 +0,0 @@ | |||||||
| From e57a5dafc00b3b5737824977aad0feb0ec497a1f Mon Sep 17 00:00:00 2001 |  | ||||||
| From: "Richard W.M. Jones" <rjones@redhat.com> |  | ||||||
| Date: Thu, 2 Mar 2017 14:21:37 +0100 |  | ||||||
| Subject: [PATCH 08/11] RHEL: v2v: -i disk: force VNC as display (RHBZ#1372671) |  | ||||||
| 
 |  | ||||||
| The SDL output mode is not supported in RHEL's qemu-kvm. |  | ||||||
| ---
 |  | ||||||
|  v2v/input_disk.ml | 2 +- |  | ||||||
|  1 file changed, 1 insertion(+), 1 deletion(-) |  | ||||||
| 
 |  | ||||||
| diff --git a/v2v/input_disk.ml b/v2v/input_disk.ml
 |  | ||||||
| index b3acb5f6..5b39dbe2 100644
 |  | ||||||
| --- a/v2v/input_disk.ml
 |  | ||||||
| +++ b/v2v/input_disk.ml
 |  | ||||||
| @@ -88,7 +88,7 @@ class input_disk input_format disk = object
 |  | ||||||
|        s_features = [ "acpi"; "apic"; "pae" ]; |  | ||||||
|        s_firmware = UnknownFirmware;       (* causes virt-v2v to autodetect *) |  | ||||||
|        s_display = |  | ||||||
| -        Some { s_display_type = Window; s_keymap = None; s_password = None;
 |  | ||||||
| +        Some { s_display_type = VNC; s_keymap = None; s_password = None;
 |  | ||||||
|                 s_listen = LNoListen; s_port = None }; |  | ||||||
|        s_video = None; |  | ||||||
|        s_sound = None; |  | ||||||
| -- 
 |  | ||||||
| 2.31.1 |  | ||||||
| 
 |  | ||||||
							
								
								
									
										4
									
								
								sources
									
									
									
									
									
								
							
							
						
						
									
										4
									
								
								sources
									
									
									
									
									
								
							| @ -1,2 +1,2 @@ | |||||||
| SHA512 (virt-v2v-1.45.3.tar.gz) = 24606acb039e630d8cbe4befe232bf9f3e8a2064e931d9064adc59704d34b67269933e2b24cb9f996c31b8c16b4e4f2ebdd7f40c9d29bb0f4a9f3df98d8edf34 | SHA512 (virt-v2v-1.45.90.tar.gz) = bbe5a6cbe949609c93bdbca0853aae6b9ca87882e49420a763440aab986bdd90a000181e9ec9b1271a42d052749e579f810a4c0122a5dbfa37ff81681147aacd | ||||||
| SHA512 (virt-v2v-1.45.3.tar.gz.sig) = efbeb0b925b403e6973936a89125b169c7522fc5073a0b8978326de861819a3b8756e219a381e3eac3ee40d97cc16919286a797557e6391e301a0871b38628e7 | SHA512 (virt-v2v-1.45.90.tar.gz.sig) = 445b0a1f1db0abc86f3be31e39e9430536f5d62d73f56d88abf27c58ef554db7b0844f92ef1ae267dd27d5be9f5b80aadf1f7e6b1267c732f99a219639f7db9a | ||||||
|  | |||||||
| @ -14,7 +14,7 @@ | |||||||
| 
 | 
 | ||||||
| Name:          virt-v2v | Name:          virt-v2v | ||||||
| Epoch:         1 | Epoch:         1 | ||||||
| Version:       1.45.3 | Version:       1.45.90 | ||||||
| Release:       1%{?dist} | Release:       1%{?dist} | ||||||
| Summary:       Convert a virtual machine to run on KVM | Summary:       Convert a virtual machine to run on KVM | ||||||
| 
 | 
 | ||||||
| @ -50,17 +50,14 @@ ExclusiveArch: x86_64 | |||||||
| 
 | 
 | ||||||
| # Downstream (RHEL-only) patches. | # Downstream (RHEL-only) patches. | ||||||
| %if 0%{?rhel} | %if 0%{?rhel} | ||||||
| Patch9001:     0001-Revert-v2v-Remove-o-rhv-upload-oa-preallocated.patch | Patch9001:     0001-RHEL-v2v-Select-correct-qemu-binary-for-o-qemu-mode-.patch | ||||||
| Patch9002:     0002-RHEL-v2v-rhv-upload-Remove-restriction-on-oa-sparse.patch | Patch9002:     0002-RHEL-v2v-Disable-the-qemu-boot-oo-qemu-boot-option-R.patch | ||||||
| Patch9003:     0003-RHEL-v2v-Select-correct-qemu-binary-for-o-qemu-mode-.patch | Patch9003:     0003-RHEL-Fix-list-of-supported-sound-cards-to-match-RHEL.patch | ||||||
| Patch9004:     0004-RHEL-v2v-Disable-the-qemu-boot-option-RHBZ-1147313.patch | Patch9004:     0004-RHEL-Fixes-for-libguestfs-winsupport.patch | ||||||
| Patch9005:     0005-RHEL-Fix-list-of-supported-sound-cards-to-match-RHEL.patch | Patch9005:     0005-RHEL-v2v-i-disk-force-VNC-as-display-RHBZ-1372671.patch | ||||||
| Patch9006:     0006-RHEL-Fix-tests-for-libguestfs-winsupport.patch | Patch9006:     0006-RHEL-v2v-do-not-mention-SUSE-Xen-hosts-RHBZ-1430203.patch | ||||||
| Patch9007:     0007-RHEL-v2v-Disable-the-virt-v2v-in-place-option.patch | Patch9007:     0007-RHEL-point-to-KB-for-supported-v2v-hypervisors-guest.patch | ||||||
| Patch9008:     0008-RHEL-v2v-i-disk-force-VNC-as-display-RHBZ-1372671.patch | Patch9008:     0008-RHEL-9-Disable-o-glance.patch | ||||||
| Patch9009:     0009-RHEL-v2v-do-not-mention-SUSE-Xen-hosts-RHBZ-1430203.patch |  | ||||||
| Patch9010:     0010-RHEL-point-to-KB-for-supported-v2v-hypervisors-guest.patch |  | ||||||
| Patch9011:     0011-RHEL-9-Disable-o-glance.patch |  | ||||||
| %endif | %endif | ||||||
| 
 | 
 | ||||||
| %if 0%{patches_touch_autotools} | %if 0%{patches_touch_autotools} | ||||||
| @ -71,16 +68,17 @@ BuildRequires: make | |||||||
| BuildRequires: /usr/bin/pod2man | BuildRequires: /usr/bin/pod2man | ||||||
| BuildRequires: gcc | BuildRequires: gcc | ||||||
| BuildRequires: ocaml >= 4.01 | BuildRequires: ocaml >= 4.01 | ||||||
| BuildRequires: libguestfs-devel >= 1:1.42 |  | ||||||
| 
 | 
 | ||||||
|  | BuildRequires: libguestfs-devel >= 1:1.42 | ||||||
| BuildRequires: augeas-devel | BuildRequires: augeas-devel | ||||||
| BuildRequires: bash-completion | BuildRequires: bash-completion | ||||||
| BuildRequires: file-devel | BuildRequires: file-devel | ||||||
| BuildRequires: gettext-devel | BuildRequires: gettext-devel | ||||||
| BuildRequires: jansson-devel | BuildRequires: jansson-devel | ||||||
|  | BuildRequires: libnbd-devel | ||||||
| BuildRequires: libosinfo-devel | BuildRequires: libosinfo-devel | ||||||
| BuildRequires: libvirt-devel |  | ||||||
| BuildRequires: libvirt-daemon-kvm | BuildRequires: libvirt-daemon-kvm | ||||||
|  | BuildRequires: libvirt-devel | ||||||
| BuildRequires: libxml2-devel | BuildRequires: libxml2-devel | ||||||
| BuildRequires: pcre-devel | BuildRequires: pcre-devel | ||||||
| BuildRequires: perl(Sys::Guestfs) | BuildRequires: perl(Sys::Guestfs) | ||||||
| @ -90,6 +88,7 @@ BuildRequires: xorriso | |||||||
| 
 | 
 | ||||||
| BuildRequires: ocaml-findlib-devel | BuildRequires: ocaml-findlib-devel | ||||||
| BuildRequires: ocaml-libguestfs-devel | BuildRequires: ocaml-libguestfs-devel | ||||||
|  | BuildRequires: ocaml-libnbd-devel | ||||||
| BuildRequires: ocaml-fileutils-devel | BuildRequires: ocaml-fileutils-devel | ||||||
| BuildRequires: ocaml-gettext-devel | BuildRequires: ocaml-gettext-devel | ||||||
| %if !0%{?rhel} | %if !0%{?rhel} | ||||||
| @ -117,7 +116,7 @@ Requires:      gawk | |||||||
| Requires:      gzip | Requires:      gzip | ||||||
| Requires:      unzip | Requires:      unzip | ||||||
| Requires:      curl | Requires:      curl | ||||||
| Requires:      /usr/bin/virsh | Requires:      %{_bindir}/virsh | ||||||
| 
 | 
 | ||||||
| # Ensure the UEFI firmware is available, to properly convert | # Ensure the UEFI firmware is available, to properly convert | ||||||
| # EFI guests (RHBZ#1429643). | # EFI guests (RHBZ#1429643). | ||||||
| @ -128,14 +127,25 @@ Requires:      edk2-ovmf | |||||||
| Requires:      edk2-aarch64 | Requires:      edk2-aarch64 | ||||||
| %endif | %endif | ||||||
| 
 | 
 | ||||||
| # Needed for -it vddk, and -o rhv-upload. | Requires:      libnbd >= 1.8.2-2.el9 | ||||||
| Requires:      nbdkit | Requires:      %{_bindir}/qemu-nbd | ||||||
|  | Requires:      %{_bindir}/nbdcopy | ||||||
|  | Requires:      %{_bindir}/nbdinfo | ||||||
|  | Requires:      nbdkit-server >= 1.26.5-1.el9 | ||||||
| Requires:      nbdkit-curl-plugin | Requires:      nbdkit-curl-plugin | ||||||
|  | Requires:      nbdkit-file-plugin | ||||||
|  | Requires:      nbdkit-nbd-plugin | ||||||
|  | Requires:      nbdkit-null-plugin | ||||||
| Requires:      nbdkit-python-plugin | Requires:      nbdkit-python-plugin | ||||||
| Requires:      nbdkit-ssh-plugin | Requires:      nbdkit-ssh-plugin | ||||||
| %ifarch x86_64 | %ifarch x86_64 | ||||||
| Requires:      nbdkit-vddk-plugin | Requires:      nbdkit-vddk-plugin | ||||||
| %endif | %endif | ||||||
|  | Requires:      nbdkit-cacheextents-filter | ||||||
|  | Requires:      nbdkit-cow-filter >= 1.26.5-1.el9 | ||||||
|  | Requires:      nbdkit-rate-filter | ||||||
|  | Requires:      nbdkit-readahead-filter | ||||||
|  | Requires:      nbdkit-retry-filter | ||||||
| 
 | 
 | ||||||
| # For rhsrvany.exe, used to install firstboot scripts in Windows guests. | # For rhsrvany.exe, used to install firstboot scripts in Windows guests. | ||||||
| Requires:      mingw32-srvany >= 1.0-13 | Requires:      mingw32-srvany >= 1.0-13 | ||||||
| @ -258,6 +268,9 @@ popd | |||||||
| %files -f %{name}.lang | %files -f %{name}.lang | ||||||
| %license COPYING | %license COPYING | ||||||
| %doc README | %doc README | ||||||
|  | %{_bindir}/helper-v2v-convert | ||||||
|  | %{_bindir}/helper-v2v-input | ||||||
|  | %{_bindir}/helper-v2v-output | ||||||
| %{_bindir}/virt-v2v | %{_bindir}/virt-v2v | ||||||
| %{_mandir}/man1/virt-v2v.1* | %{_mandir}/man1/virt-v2v.1* | ||||||
| %{_mandir}/man1/virt-v2v-hacking.1* | %{_mandir}/man1/virt-v2v-hacking.1* | ||||||
| @ -287,6 +300,9 @@ popd | |||||||
| 
 | 
 | ||||||
| 
 | 
 | ||||||
| %changelog | %changelog | ||||||
|  | * Tue Sep 21 2021 Richard W.M. Jones <rjones@redhat.com> - 1:1.45.90-1 | ||||||
|  | - New upstream development version 1.45.90 (preview of 2.0) | ||||||
|  | 
 | ||||||
| * Fri Aug 06 2021 Richard W.M. Jones <rjones@redhat.com> - 1:1.45.3-1 | * Fri Aug 06 2021 Richard W.M. Jones <rjones@redhat.com> - 1:1.45.3-1 | ||||||
| - New upstream development version 1.45.3. | - New upstream development version 1.45.3. | ||||||
| - Rebase RHEL patches. | - Rebase RHEL patches. | ||||||
|  | |||||||
		Loading…
	
		Reference in New Issue
	
	Block a user