[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [OSSTEST Nested PATCH v7 4/6] Add new script to custmize nested test configuration
> -----Original Message----- > From: Ian Campbell [mailto:ian.campbell@xxxxxxxxxx] > Sent: Tuesday, March 31, 2015 10:14 PM > To: Pang, LongtaoX > Cc: xen-devel@xxxxxxxxxxxxx; Ian.Jackson@xxxxxxxxxxxxx; wei.liu2@xxxxxxxxxx; > Hu, Robert > Subject: Re: [OSSTEST Nested PATCH v7 4/6] Add new script to custmize nested > test configuration > > On Fri, 2015-03-27 at 19:06 -0400, longtao.pang wrote: > > 1. In this script, make some appropriate runvars which selecthost > > would recognise. > > 2. Prepare the configurations for installing L2 guest VM. > > 3. Create a lv disk in L0 and hot-attach it to L1, need to restart L1 > > to make the block disk to be recognized by L1 system, then using this > > disk to create a VG that used for installing L2. > > > > Signed-off-by: longtao.pang <longtaox.pang@xxxxxxxxx> > > --- > > Changes in v7: > > Add new ts script for nested configuration according maintainer's reply. > > --- > > ts-nested-setup | 54 > ++++++++++++++++++++++++++++++++++++++++++++++++++++++ > > 1 file changed, 54 insertions(+) > > create mode 100755 ts-nested-setup > > > > diff --git a/ts-nested-setup b/ts-nested-setup new file mode 100755 > > index 0000000..153c4a3 > > --- /dev/null > > +++ b/ts-nested-setup > > @@ -0,0 +1,54 @@ > > +#!/usr/bin/perl -w > > +# This is part of "osstest", an automated testing framework for Xen. > > +# Copyright (C) 2015 Intel Inc. > > +# > > +# This program is free software: you can redistribute it and/or > > +modify # it under the terms of the GNU Affero General Public License > > +as published by # the Free Software Foundation, either version 3 of > > +the License, or # (at your option) any later version. > > +# > > +# This program is distributed in the hope that it will be useful, # > > +but WITHOUT ANY WARRANTY; without even the implied warranty of # > > +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # > GNU > > +Affero General Public License for more details. > > +# > > +# You should have received a copy of the GNU Affero General Public > > +License # along with this program. If not, see > <http://www.gnu.org/licenses/>. > > + > > +use strict qw(vars); > > +use DBI; > > +use Osstest; > > +use Osstest::Debian; > > +use Osstest::TestSupport; > > + > > +tsreadconfig(); > > +our ($ident_l0,$nested_host) = @ARGV; > > You don't used $ident and I think all your uses of $nested_host can be > replaced > by $l1->{Guest} using the result of the ts_get_host_guest. > > > +our ($l0,$l1) = ts_get_host_guest(@ARGV); > > + > > +guest_check_ip($l1); > > +target_cmd_root($l1, "mkdir -p /home/osstest/.ssh && cp > > +/root/.ssh/authorized_keys /home/osstest/.ssh/"); my $url = > > +$c{WebspaceUrl}.$c{WebspaceCommon}.$l0->{Name}."_".'overlay.tar'; > > +target_cmd_root($l1, <<END); > > + wget -O overlay.tar $url > > + tar -xf overlay.tar -C / > > + rm overlay.tar -f > > + update-rc.d osstest-confirm-booted start 99 2 . > > +END > > I think the need for this goes away with > http://article.gmane.org/gmane.comp.emulators.xen.devel/224420 > from my distro test flight series. > > As it happens I was rebasing that series this morning but due to other issues > I've not managed to run it yet. Once I've managed to at least smoke test I'll > CC > you on the repost. > OK. What's more, for the below codes which is used for starting 'osstest-confirm-booted' script to confirm whether L1 is fully booted after reboot it. I think it's necessary here. +target_cmd_root($l1, <<END); + wget -O overlay.tar $url + tar -xf overlay.tar -C / + rm overlay.tar -f + update-rc.d osstest-confirm-booted start 99 2 . +END > > +store_runvar('nested_l1',$nested_host); > > +store_runvar("${nested_host}_ip",$l1->{Ip}); > > +store_runvar('multi_reboot_time',5); > > I think you said in a previous patch that this last one isn't needed any more? > > > +my $l2_disk_mb = 20000; > > +my $l2_lv_name = 'nestedl2'; > > +my $vgname = $l0->{Name}; > > +$vgname .= ".$c{TestHostDomain}" if ($l0->{Suite} =~ m/lenny/); > > +target_cmd_root($l0, <<END); > > + lvremove -f /dev/${vgname}/${l2_lv_name} ||: > > + lvcreate -L ${l2_disk_mb}M -n $l2_lv_name $vgname > > + dd if=/dev/zero of=/dev/${vgname}/${l2_lv_name} count=10 > > + xl block-attach $l1->{Name} > > +/dev/${vgname}/${l2_lv_name},raw,sdb,rw > > This attach won't be persistent over domain destroy, is that expected? > We need create a logical volume in L0 and attach it to L1 for L2 VM installing. Before creating, it will remove the logical volume with the same "$l2_lv_name" that has already existed. Yes, after destroyed L1 VM, the logical volume will still exist inside L0, but there is no harm, I think. > > +END > > +target_install_packages_norec($l1, qw(lvm2 rsync genisoimage)); > > +target_reboot($l1); target_cmd_root($l1, "pvcreate /dev/xvdb && > > +vgcreate ${l2_lv_name}_vg /dev/xvdb"); > > Ian. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |