xcat-core/xCAT-server/share/xcat/cons/xen
jbjohnso e98cd07abe -Fix xen cons error output formatting
-Change ipmi cons method to not query tables directly.  This dramatically decreases DB load.


git-svn-id: https://svn.code.sf.net/p/xcat/code/xcat-core/trunk@2032 8638fb3e-16cb-4fca-ae20-7b5d299a9bcd
2008-08-16 13:41:14 +00:00

50 lines
1.2 KiB
Perl
Executable File

#!/usr/bin/env perl
# IBM(c) 2007 EPL license http://www.eclipse.org/legal/epl-v10.html
BEGIN
{
use Time::HiRes qw(sleep);
$::XCATROOT = $ENV{'XCATROOT'} ? $ENV{'XCATROOT'} : '/opt/xcat';
my $sleepint=int(rand(10));
print "Opening console in ".(0.5*$sleepint)." seconds...\n";
sleep (0.5*$sleepint);
}
use lib "$::XCATROOT/lib/perl";
$ENV{HOME}='/root/';
require xCAT::Client;
require File::Basename;
import File::Basename;
my $scriptname = $0;
my $cmdref={
command=>"getxencons",
arg=>"text",
noderange=>$ARGV[0]
};
use Data::Dumper;
my $dsthost;
my $dstty;
my $speed;
sub getans {
my $rsp = shift;
if ($rsp->{node}) {
$dsthost = $rsp->{node}->[0]->{sshhost}->[0];
$dstty = $rsp->{node}->[0]->{psuedotty}->[0];
$speed = $rsp->{node}->[0]->{baudrate}->[0];
}
}
xCAT::Client::submit_request($cmdref,\&getans);
until ($dsthost and $speed and $dstty) {
print "console not ready\n";
sleep 5+int(rand(10));
xCAT::Client::submit_request($cmdref,\&getans);
}
exec "ssh -t $dsthost cu -s $speed -l $dstty";
#my $pathtochild= dirname($scriptname). "/";
#exec $pathtochild."blade.expect $mm $slot $username $password";