1
0
mirror of synced 2026-04-07 21:39:59 +00:00

Drop all xend related sanity checks

They cause more havoc nowadays than they help.

Thanks Ian Campbell!

Closes: #732456
This commit is contained in:
Axel Beckert
2014-03-28 22:24:21 +01:00
parent aa54db02c3
commit fcebb14002
5 changed files with 11 additions and 101 deletions

View File

@@ -151,9 +151,6 @@ and EVMS EXAMPLE.
used the system will not have a swap entry added to
its /etc/fstab file either.
--no-xen-ok Don't complain if xen seems not installed or xend is
not running. (Needed for the testsuite.)
--output=dir Specify the output directory to create the xen
configuration file within.
@@ -1196,95 +1193,6 @@ EOF
exit 127;
}
}
#
# Test the system has a valid (network-script) + (vif-script) setup.
#
testXenConfig();
}
=begin doc
Test that the current Xen host has a valid network configuration,
this is designed to help newcomers to Xen.
=end doc
=cut
sub testXenConfig
{
# wierdness.
return if ( !-d "/etc/xen" );
#
# Temporary hash.
#
my %cfg;
#
# Read the configuration file.
#
open( CONFIG, "<", "/etc/xen/xend-config.sxp" ) or
fail("Failed to read /etc/xen/xend-config.sxp: $!");
while (<CONFIG>)
{
next if ( !$_ || !length($_) );
# vif
if ( $_ =~ /^\(vif-script ([^)]+)/ )
{
$cfg{ 'vif-script' } = $1;
}
# network
if ( $_ =~ /^\(network-script ([^)]+)/ )
{
$cfg{ 'network-script' } = $1;
}
}
close(CONFIG);
if ( !defined( $cfg{ 'network-script' } ) ||
!defined( $cfg{ 'vif-script' } ) )
{
print <<EOF;
WARNING
-------
You appear to have a missing vif-script, or network-script, in the
Xen configuration file /etc/xen/xend-config.sxp.
Please fix this and restart Xend, or your guests will not be able
to use any networking!
EOF
}
else
{
if ( ( $cfg{ 'network-script' } =~ /dummy/i ) ||
( $cfg{ 'vif-script' } =~ /dummy/i ) )
{
print <<EOF;
WARNING
-------
You appear to have a "dummy" vif-script, or network-script, setting
in the Xen configuration file /etc/xen/xend-config.sxp.
Please fix this and restart Xend, or your guests will not be able to
use any networking!
EOF
}
}
}
@@ -1356,7 +1264,6 @@ sub setupDefaultOptions
chomp($CONFIG{ 'arch' });
$CONFIG{ 'fs' } = 'ext3';
$CONFIG{ 'force' } = 0;
$CONFIG{ 'no_xen_ok' } = 0;
$CONFIG{ 'install' } = 1;
$CONFIG{ 'hooks' } = 1;
$CONFIG{ 'partitions' } = '';
@@ -1689,7 +1596,7 @@ sub parseCommandLineArguments
"finalrole=s", \&checkOption,
"roledir=s", \&checkOption,
"force!", \$CONFIG{ 'force' },
"no-xen-ok", \$CONFIG{ 'no_xen_ok' },
"no-xen-ok", sub { warn "Option --no-xen-ok is deprecated and ignored."; },
"keep!", \$CONFIG{ 'keep' },
"template=s", \&checkOption,
"output=s", \&checkOption,
@@ -3085,8 +2992,7 @@ sub createLVMBits
# Delete if forcing
if ( $CONFIG{ 'force' } )
{
if ( $CONFIG{ 'no_xen_ok' } or
!xenRunning($CONFIG{ 'hostname' }, \%CONFIG)) {
unless ( xenRunning($CONFIG{ 'hostname' }, \%CONFIG)) {
logprint(
"Removing $lvm_disk - since we're forcing the install\n");
runCommand("lvremove --force $lvm_disk", \%CONFIG);

View File

@@ -30,7 +30,6 @@ xen-delete-image - Delete previously created Xen instances.
Testing options:
--test Don't complain if we're not invoked by root.
--no-xen-ok Don't complain if xen seems not installed or xend is not running
=head1 OPTIONS
@@ -233,7 +232,7 @@ foreach my $name (@ARGV, @hosts)
{
my %PER_HOST_CONFIG = %CONFIG;
$PER_HOST_CONFIG{ 'hostname' } = $name;
if ( $CONFIG{ 'no_xen_ok' } or !xenRunning($name, \%PER_HOST_CONFIG) )
unless ( xenRunning($name, \%PER_HOST_CONFIG) )
{
deleteXenImage($name);
}
@@ -276,7 +275,7 @@ sub parseCommandLineArguments
"hostname=s@", \$CONFIG{ 'hostname' },
"test", \$CONFIG{ 'test' },
"verbose", \$CONFIG{ 'verbose' },
"no-xen-ok", \$CONFIG{ 'no_xen_ok' },
"no-xen-ok", sub { warn "Option --no-xen-ok is deprecated and ignored."; },
"help", \$HELP,
"manual", \$MANUAL,
"version", \$VERSION

2
debian/changelog vendored
View File

@@ -4,6 +4,8 @@ xen-tools (4.4+dev-1) UNRELEASED; urgency=low
later. Thanks to Daniel Lintott! (Closes: #742778)
* Pass "-y" option ("assume yes") to yum (Closes: #735675)
Thanks Lionel FÉLICITÉ!
* Drop all xend related sanity checks, they cause more havoc nowadays
than they help. Thanks Ian Campbell! (Closes: #732456)
* Apply patch by Adrian C. (anrxc) to allow to override hooks in
/usr/share/xen-tools/*.d/ with hooks in /etc/xen-tools/hooks.d/.
Thanks! (Also add /etc/xen-tools/hooks.d/ to debian/dirs.)

View File

@@ -128,7 +128,10 @@ sub xenRunning ($$)
my $running = 0;
die "Couldn't determine Xen toolstack" unless $CONFIG->{'xm'};
unless ($CONFIG->{'xm'}) {
warn "Couldn't determine Xen toolstack, skipping check for running DomUs.";
return 0;
}
open( CMD, $CONFIG->{'xm'}." list $hostname 2>/dev/null |" ) or
fail_with_config("Failed to run '".$CONFIG->{'xm'}." list $hostname'", $CONFIG);

View File

@@ -75,7 +75,7 @@ close( IMAGE );
# So we need to run the deletion script and verify the images
# are removed correctly.
#
my $log = `perl -I./lib -I../lib ./bin/xen-delete-image --test --verbose --no-xen-ok --dir=$dir $hostname`;
my $log = `perl -I./lib -I../lib ./bin/xen-delete-image --test --verbose --dir=$dir $hostname`;
ok ( $? == 0, 'Calling xen-delete-image returned exit code 0' );
print $log;