[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH RFC V2 4/6] Introduce ts-ovmf-debian-install
Wei Liu writes ("[PATCH RFC V2 4/6] Introduce ts-ovmf-debian-install"): > This is OVMF guest test case. It resembles ts-redhat-install: Thanks. This is coming along but it still has too much clone-and-hack in it. All duplicated code should be factored out into TestSupport.pm or Debian.pm. > + $preseed_file .= (<<END); > +d-i netcfg/get_hostname string debian-hvm This string should presumably be the guest ident or something. > +d-i apt-setup/use_mirror boolean false I think you need to use the mirror as specified for host installs, so I think you need to move the mirror stuff into preseed_base. > +d-i pkgsel/include string openssh-server, ntp, ntpdate, This is mostly common with preseed_create, so should be there. You will probably need to pass the xopts to preseed_base. > +d-i preseed/early_command string > + > +d-i preseed/late_command string \\ > + in-target mkdir -p /boot/efi/EFI/boot; \\ > + in-target cp /boot/efi/EFI/debian/grubx64.efi > /boot/efi/EFI/boot/bootx64.efi ;\\ Yuk. > + in-target mkdir -p /root/.ssh; \\ > + cp /authorized_keys /target/root/.ssh There's already machinery for doing this (rather differently) in preseed-create. Surely you should use it ? > +d-i clock-setup/ntp-server string ntp.uk.xensource.com Firstly, if this is needed it should be in preseed-base. Secondly the hardcoded xensource.com is right out! > + target_putfilecontents_root_stash($ho, 10, preseed(), > + "/root/guest-preseed"); These pathnames would ideally have the flight and job in them. Doing so will make it easier to run multiple tests on the same host install. (Yes, I know that the ts-redhat-install script doesn't do that.) > + target_cmd_root($ho, <<END, 60); > + mkdir -p $emptydir > + genisoimage -o $emptyiso @isogen_base $emptydir/. > +END This is straight clone-and-hack from ts-redhat-install. > + more_prepareguest_hvm($ho,$gho, $ram_mb, $disk_mb, > + OnReboot => 'preserve', > + Bios => 'ovmf', > + PostImageHook => sub { > + target_cmd_root($ho, <<END, $isotimeout); > + set -x > + umount /mnt ||: > + rm -rf $newiso > + mount -o loop -r $gho->{Rimage} /mnt > + mkdir $newiso > + cp -a /mnt/. $newiso/. > + umount /mnt More clone-and-hack from ts-redhat-install. > + md5sum `find -follow -type f` \> md5sum.txt This should probably use find -print0 | xargs -0. > +sub rewrite_config_nocd () { > + guest_editconfig($ho, $gho, sub { > + if (m/^\s*disk\s*\=/ .. /\]/) { > + s/\Q$gho->{Rimage}\E/$emptyiso/; > + } > + s/^on_reboot.*/on_reboot='restart'/; > + }); > +} > + > +if (!$stage) { > + prep(); > + start(); > +} else { > + $gho= selectguest($gn,$gho); > +} > +if ($stage<2) { > + guest_await_reboot($ho,$gho,2000); > + guest_destroy($ho,$gho); > +} > + > +rewrite_config_nocd(); > +start(); > +guest_await_dhcp_tcp($gho,300); > +guest_check_up($gho); More clone and hack. Thanks, Ian. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |