|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [OSSTEST PATCH 04/16] Support guest-specific "toolstack" for guest creation
Some guests need creation in a special way. For example, rump kernels
are ideally started with rumprun. Honour a guest var which specifies
a toolstack name.
Osstest::TestSupport::toolstack now takes an optional $gho so it can
do this lookup when appropriate.
After creation the guest is necessarily managed with the toolstack for
the host, so we honour this (ie we pass the $gho) only for create.
Signed-off-by: Ian Jackson <Ian.Jackson@xxxxxxxxxxxxx>
---
Osstest/TestSupport.pm | 15 +++++++++------
1 file changed, 9 insertions(+), 6 deletions(-)
diff --git a/Osstest/TestSupport.pm b/Osstest/TestSupport.pm
index b18a19e..bc3ad13 100644
--- a/Osstest/TestSupport.pm
+++ b/Osstest/TestSupport.pm
@@ -1583,7 +1583,7 @@ sub guest_create ($) {
my ($gho) = @_;
my $ho = $gho->{Host};
guest_prepare_disk($gho);
- toolstack($ho)->create($gho);
+ toolstack($ho,$gho)->create($gho);
}
sub guest_prepare_disk ($) {
@@ -2257,13 +2257,16 @@ sub guest_vncsnapshot_stash ($$$$) {
target_getfile_root($ho,100, "$rfile", "$stash/$leaf");
}
-sub toolstack ($) {
- my ($ho) = @_;
- return $ho->{_Toolstack} if $ho->{_Toolstack};
+sub toolstack ($;$) {
+ my ($ho,$gho) = @_;
+
+ my $cache = $gho || $ho;
+ return $cache->{_Toolstack} if $cache->{_Toolstack};
my $tsname= $r{toolstack} || 'xend';
- $ho->{_Toolstack}= get_host_method_object($ho, 'Toolstack', $tsname);
- return $ho->{_Toolstack};
+ $tsname= guest_var($gho, 'toolstack', $tsname) if $gho;
+ $cache->{_Toolstack} = get_host_method_object($ho, 'Toolstack', $tsname);
+ return $cache->{_Toolstack};
}
sub authorized_keys () {
--
2.1.4
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |