[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [OSSTEST PATCH 12/62] ts-guests-nbd-mirror: make it work with stretch
From: Wei Liu <wei.liu2@xxxxxxxxxx> On the server side, only add oldstyle= and port= on wheezy and jessie. stretch doesn't support or need those anymore. On the client side, generate new style configuration file. Reorder nbd-client setup a bit. Install it first, then write our own configuration file, then start it. This stops dpkg asking what to do regarding configuration files. Signed-off-by: Wei Liu <wei.liu2@xxxxxxxxxx> Acked-by: Ian Jackson <ian.jackson@xxxxxxxxxxxxx> --- v3: invert some tests, rearrange client setup code. v4: Fix commit message grammar. --- ts-guests-nbd-mirror | 47 +++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 43 insertions(+), 4 deletions(-) diff --git a/ts-guests-nbd-mirror b/ts-guests-nbd-mirror index ca8300db..7ea31f7c 100755 --- a/ts-guests-nbd-mirror +++ b/ts-guests-nbd-mirror @@ -60,15 +60,19 @@ sub configserver () { [generic] user = root END - $scfg .= <<END unless $sho->{Suite} =~ m/sarge|lenny|squeeze/; + + $scfg .= <<END if $sho->{Suite} =~ m/wheezy|jessie/; oldstyle = true END + foreach my $v (@vols) { $v->{Port}= unique_incrementing_runvar("${srvhost}_nextport",4000); $v->{Path}= "/dev/$v->{Gho}{Vg}/$v->{Lv}"; $scfg.=<<END; [export$v->{Ix}] exportname = $v->{Path} +END + $scfg.=<<END if $sho->{Suite} =~ m/wheezy|jessie/; port = $v->{Port} END } @@ -79,9 +83,7 @@ END target_install_packages($sho, qw(nbd-server)); } -sub configclient () { - target_cmd_root($cho, "dpkg --purge nbd-client ||:"); - +sub configclient_pre_stretch () { my $mydaemon= '/root/nbd-client-async'; target_putfilecontents_root_stash($cho,10,<<'END',$mydaemon); #!/bin/sh @@ -107,7 +109,44 @@ NBD_PORT[$v->{Ix}]=$v->{Port} END } target_putfilecontents_root_stash($cho,10,$ccfg,"/etc/nbd-client"); +} + +sub configclient_stretch_and_later () { + my $ccfg = <<END; +# generated by $0 +END + + foreach my $v (@vols) { + my $nbddev = "nbd$v->{Ix}"; + $ccfg .= <<END; +$nbddev $sho->{Name} export$v->{Ix} +END + } + + target_putfilecontents_root_stash($cho,10,$ccfg,"/etc/nbdtab"); +} + +sub configclient () { + target_cmd_root($cho, "dpkg --purge nbd-client ||:"); + target_install_packages($cho, qw(nbd-client)); + + target_cmd_root($cho, "/etc/init.d/nbd-client stop ||:"); + + if ($cho->{Suite} =~ m/wheezy|jessie/) { + configclient_pre_stretch(); + } else { + configclient_stretch_and_later(); + foreach my $v (@vols) { + my $nbddev = "nbd$v->{Ix}"; + target_cmd_root($cho, <<END); +mkdir -p /dev/$v->{Gho}{Vg} +if ! test -L $v->{Path}; then ln -s /dev/$nbddev $v->{Path}; fi +END + } + } + + target_cmd_root($cho, "/etc/init.d/nbd-client start"); } sub shuffleconfigs () { -- 2.11.0 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |