[Libguestfs] [v2v PATCH 12/12] convert_windows: install "v2vnetcf.ps1" with prio 2500

Laszlo Ersek lersek at redhat.com
Tue Mar 8 14:30:59 UTC 2022


The windows converter installs the firstboot scripts in this order:

  do_convert
    configure_firstboot
      configure_wait_pnp
        add_firstboot_script
      configure_vmdp
        add_firstboot_script
      configure_qemu_ga
        add_firstboot_script
      unconfigure_xenpv
        add_firstboot_script
      unconfigure_prltools
        add_firstboot_script
      unconfigure_vmwaretools
        add_firstboot_script
    configure_network_interfaces
      install_firstboot_powershell "v2vnetcf.ps1"
        add_firstboot_script
          -> the script that polls for "netkvm.sys" with Get-NetAdapter,
             then calls New-NetIPAddress

Because of this, if the guest is supposed to have static IP address(es),
they are set by the "v2vnetcf.ps1" firstboot script quite late during
first boot.

It's more comfortable for users if the network is usable from an earlier
point of the first boot, so register "v2vnetcf.ps1" in priority group 2500
(the default is 5000), moving the script to the front.

Suggested-by: Richard W.M. Jones <rjones at redhat.com>
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=1788823
Signed-off-by: Laszlo Ersek <lersek at redhat.com>
---
 convert/convert_windows.ml | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/convert/convert_windows.ml b/convert/convert_windows.ml
index fa2eae28a768..b53312a9aba4 100644
--- a/convert/convert_windows.ml
+++ b/convert/convert_windows.ml
@@ -739,8 +739,12 @@ let convert (g : G.guestfs) _ inspect _ static_ips =
           add ""
       ) static_ips;
 
-      (* Install the Powershell script to run at firstboot. *)
-      Windows.install_firstboot_powershell g inspect psh_filename !psh
+      (* Install the Powershell script to run at firstboot.
+       *
+       * Place it first among the firstboot scripts (RHBZ#1788823).
+       *)
+      Windows.install_firstboot_powershell g inspect ~prio:2500 psh_filename
+        !psh
     ) (* static_ips <> [] *)
 
   and fix_ntfs_heads () =
-- 
2.19.1.3.g30247aa5d201



More information about the Libguestfs mailing list