From: Ian Campbell <ian.campbell@citrix.com>
To: ian.jackson@eu.citrix.com
Cc: Ian Campbell <ian.campbell@citrix.com>, xen-devel@lists.xen.org
Subject: [PATCH OSSTEST] Allow per-host TFTP setup
Date: Wed, 12 Feb 2014 14:16:25 +0000 [thread overview]
Message-ID: <1392214585-26602-1-git-send-email-ian.campbell@citrix.com> (raw)
I run osstest against machines which are in both the XenServer and XenClient
administrative domains, and hence which have different TFTP servers, accessible
locally via different NFS mounted paths.
Make it possible to specify various bits of TFTP path via ~/.xen-osstest/config
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
---
Osstest/Debian.pm | 6 +++++-
Osstest/TestSupport.pm | 5 ++++-
ts-host-install | 16 ++++++++++------
3 files changed, 19 insertions(+), 8 deletions(-)
diff --git a/Osstest/Debian.pm b/Osstest/Debian.pm
index 6759263..a70d35b 100644
--- a/Osstest/Debian.pm
+++ b/Osstest/Debian.pm
@@ -554,7 +554,11 @@ END
foreach my $kp (keys %{ $ho->{Flags} }) {
$kp =~ s/need-kernel-deb-// or next;
- my $d_i= $c{TftpPath}.'/'.$c{TftpDiBase}.'/'.$r{arch}.'/'.$c{TftpDiVersion}.'-'.$ho->{Suite};
+ my $tftppath = get_host_property($ho, "TftpPath", $c{TftpPath});
+ my $tftpdibase = get_host_property($ho, "TftpDiBase", $c{TftpDiBase});
+ my $tftpdiversion = get_host_property($ho, "TftpDiVersion", $c{TftpDiVersion});
+
+ my $d_i= $tftppath.'/'.$tftpdibase.'/'.$r{arch}.'/'.$tftpdiversion.'-'.$ho->{Suite};
my $kurl = create_webfile($ho, "kernel", sub {
copy("$d_i/$kp.deb", $_[0]);
diff --git a/Osstest/TestSupport.pm b/Osstest/TestSupport.pm
index a513540..5c01ffa 100644
--- a/Osstest/TestSupport.pm
+++ b/Osstest/TestSupport.pm
@@ -1839,8 +1839,11 @@ sub host_pxefile ($) {
sub setup_pxeboot ($$) {
my ($ho, $bootfile) = @_;
+ my $p= get_host_property($ho, "TftpPath", $c{TftpPath});
+ my $d= get_host_property($ho, "TftpPxeDir", $c{TftpPxeDir});
my $f= host_pxefile($ho);
- file_link_contents("$c{TftpPath}$c{TftpPxeDir}$f", $bootfile);
+
+ file_link_contents("$p$d$f", $bootfile);
}
sub setup_pxeboot_local ($) {
diff --git a/ts-host-install b/ts-host-install
index 5c0018e..2e711fe 100755
--- a/ts-host-install
+++ b/ts-host-install
@@ -122,19 +122,23 @@ END
sub setup_pxeboot_firstboot($) {
my ($ps_url) = @_;
- my $d_i= $c{TftpDiBase}.'/'.$r{arch}.'/'.$c{TftpDiVersion}.'-'.$ho->{Suite};
+ my $tftppath = get_host_property($ho, "TftpPath", $c{TftpPath});
+ my $tftpdibase = get_host_property($ho, "TftpDiBase", $c{TftpDiBase});
+ my $tftpdiversion = get_host_property($ho, "TftpDiVersion", $c{TftpDiVersion});
+
+ my $d_i= $tftpdibase.'/'.$r{arch}.'/'.$tftpdiversion.'-'.$ho->{Suite};
my @installcmdline= qw(vga=normal);
push @installcmdline, di_installcmdline_core($ho, $ps_url, %xopts);
my $src_initrd= "$d_i/initrd.gz";
- my @initrds= "$c{TftpPath}/$src_initrd";
+ my @initrds= "$tftppath/$src_initrd";
my $kernel;
foreach my $fp (keys %{ $ho->{Flags} }) {
$fp =~ s/^need-firmware-deb-// or next;
- my $cpio= "$c{TftpPath}/$d_i/$fp.cpio.gz";
+ my $cpio= "$tftppath/$d_i/$fp.cpio.gz";
if (stat $cpio) {
logm("using firmware from: $cpio");
push @initrds, $cpio;
@@ -147,7 +151,7 @@ sub setup_pxeboot_firstboot($) {
foreach my $kp (keys %{ $ho->{Flags} }) {
$kp =~ s/need-kernel-deb-// or next;
- my $kern= "$c{TftpPath}/$d_i/linux.$kp";
+ my $kern= "$tftppath/$d_i/linux.$kp";
if (stat $kern) {
logm("using kernel from: $kern");
$kernel = "/$d_i/linux.$kp";
@@ -157,7 +161,7 @@ sub setup_pxeboot_firstboot($) {
die "$kp $kern $!";
}
- my $cpio= "$c{TftpPath}/$d_i/$kp.cpio.gz";
+ my $cpio= "$tftppath/$d_i/$kp.cpio.gz";
if (stat $cpio) {
logm("using kernel modules from: $cpio");
push @initrds, $cpio;
@@ -195,7 +199,7 @@ END
logm("using initrds: @initrds");
my $initrd= "$c{TftpTmpDir}$ho->{Name}--initrd.gz";
- system_checked("cat -- @initrds >$c{TftpPath}$initrd");
+ system_checked("cat -- @initrds >$tftppath$initrd");
push @installcmdline, ("initrd=/$initrd",
"domain=$c{TestHostDomain}",
--
1.8.5.2
next reply other threads:[~2014-02-12 14:16 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-02-12 14:16 Ian Campbell [this message]
2014-02-12 14:50 ` [PATCH OSSTEST] Allow per-host TFTP setup Ian Jackson
2014-02-12 14:53 ` Ian Campbell
2014-02-14 18:04 ` Dario Faggioli
2014-02-18 10:06 ` Ian Campbell
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1392214585-26602-1-git-send-email-ian.campbell@citrix.com \
--to=ian.campbell@citrix.com \
--cc=ian.jackson@eu.citrix.com \
--cc=xen-devel@lists.xen.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).