From mboxrd@z Thu Jan 1 00:00:00 1970 From: Wei Liu Subject: [OSSTEST PATCH V3] ts-debian-hvm-install: use text installer frontend Date: Thu, 15 May 2014 12:42:13 +0100 Message-ID: <1400154133-13163-1-git-send-email-wei.liu2@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: xen-devel@lists.xen.org Cc: Ian Jackson , Wei Liu , Ian Campbell List-Id: xen-devel@lists.xenproject.org Factor out di_installcmdline_base in Debian.pm and use that in ts-debian-hvm-install. This should improve readability of d-i log in various Debian HVM testcases. Signed-off-by: Wei Liu Cc: Ian Jackson Cc: Ian Campbell --- https://www.debian.org/releases/stable/amd64/apbs02.html.en --- Osstest/Debian.pm | 40 ++++++++++++++++++++++++++++------------ ts-debian-hvm-install | 9 +++++++-- 2 files changed, 35 insertions(+), 14 deletions(-) diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm index ab09abb..ef508ca 100644 --- a/Osstest/Debian.pm +++ b/Osstest/Debian.pm @@ -36,6 +36,7 @@ BEGIN { preseed_base preseed_create preseed_hook_command preseed_hook_installscript + di_installcmdline_base di_installcmdline_core ); %EXPORT_TAGS = ( ); @@ -398,6 +399,30 @@ END our %preseed_cmds; # $preseed_cmds{$di_key}[]= $cmd +sub di_installcmdline_base($;@) { + my ($tho, %xopts) = @_; + my @cl = qw( + auto=true + hw-detect/load_firmware=false + DEBCONF_DEBUG=5 + ); + my $difront = get_host_property($tho,'DIFrontend','text'); + push @cl, ("DEBIAN_FRONTEND=$difront"); + + die "Both PreseedURL and PreseedFile are defined." + if defined($xopts{PreseedURL}) && defined($xopts{PreseedFile}); + + push @cl, ("url=$xopts{PreseedURL}") if $xopts{PreseedURL}; + + push @cl, ("file=$xopts{PreseedFile}") if $xopts{PreseedFile}; + + my $debconf_priority= $xopts{DebconfPriority}; + push @cl, "debconf/priority=$debconf_priority" + if defined $debconf_priority; + + return @cl +} + sub di_installcmdline_core ($$;@) { my ($tho, $ps_url, %xopts) = @_; @@ -405,24 +430,15 @@ sub di_installcmdline_core ($$;@) { my $netcfg_interface= get_host_property($tho,'interface force','auto'); - my @cl= qw( - auto=true preseed - hw-detect/load_firmware=false - DEBCONF_DEBUG=5 - ); - my $difront = get_host_property($tho,'DIFrontend','text'); + $xopts{PreseedURL} = $ps_url; + + my @cl = di_installcmdline_base($tho, %xopts); push @cl, ( - "DEBIAN_FRONTEND=$difront", "hostname=$tho->{Name}", - "url=$ps_url", "netcfg/dhcp_timeout=150", "netcfg/choose_interface=$netcfg_interface" ); - my $debconf_priority= $xopts{DebconfPriority}; - push @cl, "debconf/priority=$debconf_priority" - if defined $debconf_priority; - return @cl; } diff --git a/ts-debian-hvm-install b/ts-debian-hvm-install index fec24f7..17adeb5 100755 --- a/ts-debian-hvm-install +++ b/ts-debian-hvm-install @@ -86,18 +86,23 @@ END sub grub_cfg () { + my $cmdline = join ' ' , di_installcmdline_base($gho, PreseedFile => "/preseed.cfg"); + return <<"END"; set default="0" set timeout=5 menuentry 'debian guest auto Install' { - linux /install.amd/vmlinuz console=vga console=ttyS0,115200n8 preseed/file=/preseed.cfg + linux /install.amd/vmlinuz $cmdline console=ttyS0,115200n8 initrd /install.amd/initrd.gz } END } sub isolinux_cfg () { + + my $cmdline = join ' ' , di_installcmdline_base($gho, PreseedFile => "/preseed.cfg"); + return <<"END"; default autoinstall prompt 0 @@ -105,7 +110,7 @@ sub isolinux_cfg () { label autoinstall kernel /install.amd/vmlinuz - append video=vesa:ywrap,mtrr vga=788 console=ttyS0,115200n8 preseed/file=/preseed.cfg initrd=/install.amd/initrd.gz + append $cmdline console=ttyS0,115200n8 initrd=/install.amd/initrd.gz END } -- 1.7.10.4