code for Adding verbose for xCAT commands item
git-svn-id: https://svn.code.sf.net/p/xcat/code/xcat-core/trunk@13136 8638fb3e-16cb-4fca-ae20-7b5d299a9bcd
This commit is contained in:
parent
646386b6d2
commit
2f4cbf7dbf
@ -28,7 +28,7 @@ require xCAT::Schema;
|
||||
require xCAT::Utils;
|
||||
#use Data::Dumper;
|
||||
require xCAT::NodeRange;
|
||||
|
||||
use xCAT::MsgUtils qw(verbose_message);
|
||||
|
||||
|
||||
#-------------------------------------------------------------------------------
|
||||
@ -285,6 +285,7 @@ sub fsp_api_action {
|
||||
}
|
||||
$id = $$attrs[0];
|
||||
$fsp_name = $$attrs[3];
|
||||
xCAT::MsgUtils->verbose_message($request, "fsp_api_action START node:$node_name,type:$$attrs[4].");
|
||||
if($$attrs[4] =~ /^fsp$/ || $$attrs[4] =~ /^lpar$/ || $$attrs[4] =~ /^cec$/) {
|
||||
$type = 0;
|
||||
$fsp_bpa_type="fsp";
|
||||
@ -307,7 +308,7 @@ sub fsp_api_action {
|
||||
} else {
|
||||
$fsp_ip = getIPaddress($request, $$attrs[4], $fsp_name );
|
||||
}
|
||||
|
||||
xCAT::MsgUtils->verbose_message($request, "fsp_api_action getIPaddress:$fsp_ip.");
|
||||
if(!defined($fsp_ip)) {
|
||||
$res = "Failed to get IP address for $fsp_name or the related FSPs/BPAs.";
|
||||
return ([$node_name, $res, -1]);
|
||||
@ -371,7 +372,7 @@ sub fsp_api_action {
|
||||
$cmd = "$fsp_api -a $action -T $tooltype -t $type:$fsp_ip:$id:$node_name:";
|
||||
}
|
||||
}
|
||||
|
||||
xCAT::MsgUtils->verbose_message($request, "fsp_api_action cmd:$cmd.");
|
||||
#print "cmd: $cmd\n";
|
||||
$SIG{CHLD} = 'DEFAULT';
|
||||
# secure passwords in verbose mode
|
||||
@ -393,6 +394,7 @@ sub fsp_api_action {
|
||||
if(defined($res)) {
|
||||
$res =~ s/$node_name: //g;
|
||||
}
|
||||
xCAT::MsgUtils->verbose_message($request, "fsp_api_action return:$Rc.");
|
||||
return( [$node_name,$res, $Rc] );
|
||||
}
|
||||
|
||||
@ -444,6 +446,7 @@ sub fsp_state_action {
|
||||
$fsp_name = $node_name;
|
||||
|
||||
|
||||
xCAT::MsgUtils->verbose_message($request, "fsp_state_action START node:$node_name,type:$$attrs[4].");
|
||||
if( $$attrs[4] =~ /^(fsp|lpar|cec|blade)$/) {
|
||||
$type = 0;
|
||||
} else {
|
||||
@ -459,11 +462,13 @@ sub fsp_state_action {
|
||||
return ([-1, $res[0]]);
|
||||
}
|
||||
|
||||
xCAT::MsgUtils->verbose_message($request, "fsp_state_action getIPaddress:$fsp_ip.");
|
||||
#print "fsp name: $fsp_name\n";
|
||||
#print "fsp ip: $fsp_ip\n";
|
||||
my $cmd;
|
||||
#$cmd = "$fsp_api -a $action -u $user -p $password -T $tooltype -t $type:$fsp_ip:$id:$node_name:";
|
||||
$cmd = "$fsp_api -a $action -T $tooltype -t $type:$fsp_ip:$id:$node_name:";
|
||||
xCAT::MsgUtils->verbose_message($request, "fsp_state_action cmd:$cmd.");
|
||||
#print "cmd: $cmd\n";
|
||||
$SIG{CHLD} = 'DEFAULT';
|
||||
@res = xCAT::Utils->runcmd($cmd, -1);
|
||||
@ -477,6 +482,7 @@ sub fsp_state_action {
|
||||
if( @res ) {
|
||||
$res[0] =~ s/$node_name: //g;
|
||||
}
|
||||
xCAT::MsgUtils->verbose_message($request, "fsp_state_action return:$Rc.");
|
||||
return( [$Rc,@res] );
|
||||
}
|
||||
|
||||
|
@ -7,6 +7,7 @@ use Getopt::Long;
|
||||
use xCAT::PPCcli qw(SUCCESS EXPECT_ERROR RC_ERROR NR_ERROR);
|
||||
use xCAT::NetworkUtils;
|
||||
use xCAT::FSPUtils;
|
||||
use xCAT::MsgUtils qw(verbose_message);
|
||||
#use Data::Dumper;
|
||||
|
||||
##########################################################################
|
||||
@ -135,12 +136,13 @@ sub rbootseq {
|
||||
#print "d";
|
||||
#print Dumper($d);
|
||||
|
||||
|
||||
xCAT::MsgUtils->verbose_message($request, "rbootseq START for node:$node_name, type=$$d[4].");
|
||||
if (!($$d[4] =~ /^(lpar|blade)$/)) {
|
||||
push @output, [$node_name, "\'boot\' command not supported for CEC or BPA", -1 ];
|
||||
return (\@output);
|
||||
}
|
||||
# add checking the power state of the cec
|
||||
xCAT::MsgUtils->verbose_message($request, "rbootseq check machine state for node:$node_name.");
|
||||
my $power_state = xCAT::FSPUtils::fsp_api_action ($request, $node_name, $d, "cec_state", $tooltype);
|
||||
if ( @$power_state[2] != 0 ) {
|
||||
push @output, [$node_name, @$power_state[1], -1 ];
|
||||
@ -205,14 +207,17 @@ sub rbootseq {
|
||||
push @output, [$node_name, "The mac address in mac table could NOT be used for rbootseq with -net. HFI mac , or other wrong format?", -1 ];
|
||||
return( \@output );
|
||||
}
|
||||
xCAT::MsgUtils->verbose_message($request, "rbootseq <$node_name> net=$parameter");
|
||||
}
|
||||
|
||||
if( $opt->{hfi}) {
|
||||
|
||||
$parameter = "/hfi-iohub/hfi-ethernet:$o->{server},,$o->{client},$o->{gateway},$bootp_retries,$tftp_retries,$o->{netmask},$blksize";
|
||||
|
||||
xCAT::MsgUtils->verbose_message($request, "rbootseq <$node_name> hfi=$parameter");
|
||||
}
|
||||
|
||||
xCAT::MsgUtils->verbose_message($request, "rbootseq set_lpar_bootstring for node:$node_name.");
|
||||
my $res = xCAT::FSPUtils::fsp_api_action ($request, $node_name, $d, "set_lpar_bootstring", $tooltype, $parameter);
|
||||
#print "In boot, state\n";
|
||||
#print Dumper($res);
|
||||
@ -222,6 +227,7 @@ sub rbootseq {
|
||||
##################################
|
||||
# Output error
|
||||
##################################
|
||||
xCAT::MsgUtils->verbose_message($request, "rbootseq return:$Rc.");
|
||||
if ( $Rc != SUCCESS ) {
|
||||
push @output, [$node_name,$data,$Rc];
|
||||
} else {
|
||||
|
@ -9,7 +9,7 @@ use xCAT::FSPUtils;
|
||||
use xCAT::PPCcfg;
|
||||
#use Data::Dumper;
|
||||
#use xCAT::PPCcli;
|
||||
|
||||
use xCAT::MsgUtils qw(verbose_message);
|
||||
|
||||
##########################################
|
||||
# Globals
|
||||
@ -466,6 +466,7 @@ sub do_query {
|
||||
while (my ($mtms, $h) = each(%$hash)) {
|
||||
while (my($name, $d) = each(%$h)) {
|
||||
my $action = $fspapi_action{$cmd}{query}{@$d[4]};
|
||||
xCAT::MsgUtils->verbose_message($request, "rspconfig :$action for node:$name.");
|
||||
my $values = xCAT::FSPUtils::fsp_api_action($request, $name, $d, $action);
|
||||
&do_process_query_res($name, $cmd, \@result, $values);
|
||||
#my $res = &do_process_query_res($name, $cmd, \@result, $values);
|
||||
@ -512,6 +513,7 @@ sub do_set {
|
||||
while (my ($mtms, $h) = each(%$hash)) {
|
||||
while (my($name, $d) = each(%$h)) {
|
||||
my $action = $fspapi_action{$cmd}{set}{@$d[4]};
|
||||
xCAT::MsgUtils->verbose_message($request, "rspconfig :$action for node:$name, param:$value.");
|
||||
my $para = &do_set_get_para($name, $cmd, $value);
|
||||
my $values = xCAT::FSPUtils::fsp_api_action($request, $name, $d, $action, 0, $para);
|
||||
# print Dumper($values);
|
||||
@ -595,6 +597,7 @@ sub passwd {
|
||||
while ( my ($node,$d) = each(%$h) ) {
|
||||
my $type = @$d[4];
|
||||
my $fsp_api = ($::XCATROOT) ? "$::XCATROOT/sbin/fsp-api" : "/opt/xcat/sbin/fsp-api";
|
||||
xCAT::MsgUtils->verbose_message($request, "rspconfig :modify password of $usr for node:$node.");
|
||||
my $cmd = xCAT::FSPcfg::fsp_api_passwd ($request, $node, $d, $usr, $passwd, $newpasswd);
|
||||
my $Rc = @$cmd[2];
|
||||
my $data = @$cmd[1];
|
||||
@ -607,6 +610,7 @@ sub passwd {
|
||||
# Write the new password to table
|
||||
##################################
|
||||
if ( $Rc == 0 ) {
|
||||
xCAT::MsgUtils->verbose_message($request, "rspconfig :update xCATdb for node:$node,ID:$usr.");
|
||||
xCAT::PPCdb::update_credentials( $node, $type, $usr, $newpasswd );
|
||||
}
|
||||
}
|
||||
@ -677,6 +681,7 @@ sub frame {
|
||||
# Get frame number
|
||||
#################################
|
||||
#$data = xCAT::PPCcli::lssyscfg( $exp, @$d[4], @$d[2], 'frame_num' );
|
||||
xCAT::MsgUtils->verbose_message($request, "rspconfig :get_frame_number for node:$node.");
|
||||
$data = xCAT::FSPUtils::fsp_api_action( $request, $node, $d, "get_frame_number");
|
||||
$Rc = pop(@$data);
|
||||
|
||||
@ -708,6 +713,7 @@ sub frame {
|
||||
return( [[$node,"Cannot find frame num in database", -1]] );
|
||||
}
|
||||
#$data = xCAT::PPCcli::chsyscfg( $exp, "bpa", $d, "frame_num=".$ent->{id} );
|
||||
xCAT::MsgUtils->verbose_message($request, "rspconfig :set_frame_number for node:$node,id:$ent->{id}.");
|
||||
$data = xCAT::FSPUtils::fsp_api_action( $request, $node, $d, "set_frame_number", 0, $ent->{id});
|
||||
$Rc = pop(@$data);
|
||||
|
||||
@ -727,6 +733,7 @@ sub frame {
|
||||
# Read the frame number from opt
|
||||
#################################
|
||||
#$data = xCAT::PPCcli::chsyscfg( $exp, "bpa", $d, "frame_num=$value" );
|
||||
xCAT::MsgUtils->verbose_message($request, "rspconfig :set_frame_number for node:$node,id:$value.");
|
||||
$data = xCAT::FSPUtils::fsp_api_action( $request, $node, $d, "set_frame_number", 0, $value);
|
||||
$Rc = pop(@$data);
|
||||
|
||||
@ -775,6 +782,7 @@ sub cec_off_policy {
|
||||
#################################
|
||||
# Get platform IPL parameters
|
||||
#################################
|
||||
xCAT::MsgUtils->verbose_message($request, "rspconfig :get_phyp_cfg_power_off_policy for node:$node.");
|
||||
$data = xCAT::FSPUtils::fsp_api_action( $request, $node, $d, "get_phyp_cfg_power_off_policy");
|
||||
$Rc = pop(@$data);
|
||||
|
||||
@ -794,6 +802,7 @@ sub cec_off_policy {
|
||||
#################################
|
||||
# Set cec off policy
|
||||
#################################
|
||||
xCAT::MsgUtils->verbose_message($request, "rspconfig :set power_off_policy for node:$node,policy:$value.");
|
||||
if( $value eq "poweroff") {
|
||||
$value = "cec_off_policy_poweroff";
|
||||
} else {
|
||||
|
@ -8,6 +8,7 @@ use xCAT::Usage;
|
||||
#use Data::Dumper;
|
||||
use xCAT::FSPUtils;
|
||||
use xCAT::PPCconn;
|
||||
use xCAT::MsgUtils qw(verbose_message);
|
||||
|
||||
##############################################
|
||||
# Globals
|
||||
@ -56,7 +57,7 @@ sub mkhwconn_parse_args
|
||||
$Getopt::Long::ignorecase = 0;
|
||||
Getopt::Long::Configure( "bundling" );
|
||||
|
||||
if ( !GetOptions( \%opt, qw(V|verbose h|help t s:s T=s p=s P=s port=s ) )) {
|
||||
if ( !GetOptions( \%opt, qw(V|Verbose h|help t s:s T=s p=s P=s port=s ) )) {
|
||||
return( usage() );
|
||||
}
|
||||
|
||||
@ -321,7 +322,7 @@ sub lshwconn_parse_args
|
||||
return $opttmp;
|
||||
}
|
||||
|
||||
if ( !GetOptions( \%opt, qw(V|verbose h|help T=s s) )) {
|
||||
if ( !GetOptions( \%opt, qw(V|Verbose h|help T=s s) )) {
|
||||
return( usage() );
|
||||
}
|
||||
return usage() if ( exists $opt{h});
|
||||
@ -438,7 +439,7 @@ sub rmhwconn_parse_args
|
||||
$Getopt::Long::ignorecase = 0;
|
||||
Getopt::Long::Configure( "bundling" );
|
||||
|
||||
if ( !GetOptions( \%opt, qw(V|verbose h|help T=s s) )) {
|
||||
if ( !GetOptions( \%opt, qw(V|Verbose h|help T=s s) )) {
|
||||
return( usage() );
|
||||
}
|
||||
return usage() if ( exists $opt{h});
|
||||
@ -571,7 +572,7 @@ sub mkhwconn
|
||||
my $Rc = undef;
|
||||
my $tooltype= $opt->{T};
|
||||
|
||||
|
||||
xCAT::MsgUtils->verbose_message($request, "mkhwconn START.");
|
||||
for my $cec_bpa ( keys %$hash)
|
||||
{
|
||||
my $node_hash = $hash->{$cec_bpa};
|
||||
@ -596,6 +597,7 @@ sub mkhwconn
|
||||
|
||||
#}
|
||||
|
||||
xCAT::MsgUtils->verbose_message($request, "mkhwconn :add_connection for node:$node_name.");
|
||||
my $res = xCAT::FSPUtils::fsp_api_action($request, $node_name, $d, "add_connection", $tooltype, $opt->{port} );
|
||||
$Rc = @$res[2];
|
||||
if( @$res[1] ne "") {
|
||||
@ -604,6 +606,7 @@ sub mkhwconn
|
||||
|
||||
}
|
||||
}
|
||||
xCAT::MsgUtils->verbose_message($request, "mkhwconn END.");
|
||||
return \@value;
|
||||
}
|
||||
##########################################################################
|
||||
|
@ -6,7 +6,7 @@ use strict;
|
||||
use Getopt::Long;
|
||||
use xCAT::PPCmac;
|
||||
use xCAT::PPCcli qw(SUCCESS EXPECT_ERROR RC_ERROR NR_ERROR);
|
||||
|
||||
use xCAT::MsgUtils qw(verbose_message);
|
||||
use xCAT::LparNetbootExp;
|
||||
##########################################################################
|
||||
# Parse the command line for options and operands
|
||||
@ -184,6 +184,7 @@ sub do_getmacs {
|
||||
# last;
|
||||
# }
|
||||
#}
|
||||
xCAT::MsgUtils->verbose_message($request, "getmacs :lparnetbootexp for node:$node.");
|
||||
my $Rc = xCAT::LparNetbootExp->lparnetbootexp(\%optarg, $request);
|
||||
######################################
|
||||
# Split results into array
|
||||
@ -442,6 +443,7 @@ sub getmacs {
|
||||
#########################################
|
||||
# Connect to fsp to achieve MAC address
|
||||
#########################################
|
||||
xCAT::MsgUtils->verbose_message($request, "getmacs START.");
|
||||
my $d = $par;
|
||||
|
||||
#########################################
|
||||
@ -501,6 +503,7 @@ sub getmacs {
|
||||
#########################################
|
||||
# Manually collect MAC addresses.
|
||||
#########################################
|
||||
xCAT::MsgUtils->verbose_message($request, "getmacs :do_getmacs for node:$node.");
|
||||
$result = do_getmacs( $request, $d, $exp, $name, $node );
|
||||
#}
|
||||
#$sitetab->close;
|
||||
@ -575,6 +578,7 @@ sub getmacs {
|
||||
writemac( $node, $value );
|
||||
}
|
||||
#return( [[$node,$data,$Rc]] );
|
||||
xCAT::MsgUtils->verbose_message($request, "getmacs END.");
|
||||
return $res;
|
||||
}
|
||||
}
|
||||
|
@ -16,7 +16,7 @@ use xCAT::Usage;
|
||||
use xCAT::NodeRange;
|
||||
use xCAT::FSPUtils;
|
||||
#use Data::Dumper;
|
||||
|
||||
use xCAT::MsgUtils qw(verbose_message);
|
||||
##############################################
|
||||
# Globals
|
||||
##############################################
|
||||
@ -109,7 +109,7 @@ sub chvm_parse_args {
|
||||
$Getopt::Long::ignorecase = 0;
|
||||
Getopt::Long::Configure( "bundling" );
|
||||
|
||||
if ( !GetOptions( \%opt, qw(V|verbose p=s i=s m=s r=s ) )) {
|
||||
if ( !GetOptions( \%opt, qw(V|Verbose p=s i=s m=s r=s ) )) {
|
||||
return( usage() );
|
||||
}
|
||||
####################################
|
||||
@ -361,7 +361,7 @@ sub mkvm_parse_args {
|
||||
# if ( !GetOptions( \%opt, qw(V|verbose ibautocfg ibacap=s i=s l=s c=s p=s full) )) {
|
||||
# return( usage() );
|
||||
# }
|
||||
if ( !GetOptions( \%opt, qw(V|verbose i=s m=s r=s ) )) {
|
||||
if ( !GetOptions( \%opt, qw(V|Verbose i=s m=s r=s ) )) {
|
||||
return( usage() );
|
||||
}
|
||||
####################################
|
||||
@ -535,7 +535,7 @@ sub rmvm_parse_args {
|
||||
$Getopt::Long::ignorecase = 0;
|
||||
Getopt::Long::Configure( "bundling" );
|
||||
|
||||
if ( !GetOptions( \%opt, qw(V|verbose service r) )) {
|
||||
if ( !GetOptions( \%opt, qw(V|Verbose service r) )) {
|
||||
return( usage() );
|
||||
}
|
||||
return(usage( "rmvm doesn't support for Power 775." ));
|
||||
@ -592,7 +592,7 @@ sub lsvm_parse_args {
|
||||
$Getopt::Long::ignorecase = 0;
|
||||
Getopt::Long::Configure( "bundling" );
|
||||
|
||||
if ( !GetOptions( \%opt, qw(V|verbose l|long) )) {
|
||||
if ( !GetOptions( \%opt, qw(V|Verbose l|long) )) {
|
||||
return( usage() );
|
||||
}
|
||||
####################################
|
||||
@ -644,6 +644,7 @@ sub do_op_extra_cmds {
|
||||
while (my ($mtms, $h) = each(%$hash)) {
|
||||
while (my($name, $d) = each(%$h)) {
|
||||
my $tmp_value = ($param eq '*') ? $name : $param;
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} $action for node:$name, parm:$tmp_value.");
|
||||
my $value = xCAT::FSPUtils::fsp_api_action($request, $name, $d, $action, 0, $tmp_value);
|
||||
if (@$value[1] && ((@$value[1] =~ /Error/i) && (@$value[2] ne '0'))) {
|
||||
return ([[$name, @$value[1], '1']]) ;
|
||||
@ -698,7 +699,7 @@ sub modify_by_prof {
|
||||
my %io = ();
|
||||
my %lpar_state = ();
|
||||
my @result;
|
||||
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} START.");
|
||||
if (defined( $request->{stdin} )) {
|
||||
my $p = $request->{stdin};
|
||||
my @io = split(/\n/, $p) ;
|
||||
@ -720,6 +721,7 @@ sub modify_by_prof {
|
||||
$cec_name = @$d[3];
|
||||
}
|
||||
#get the current I/O slot information
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} :get_io_slot_info for node:$cec_name.");
|
||||
my $action = "get_io_slot_info";
|
||||
my $values = xCAT::FSPUtils::fsp_api_action ($request, $cec_name, $td, $action);
|
||||
my $Rc = $$values[2];
|
||||
@ -736,6 +738,7 @@ sub modify_by_prof {
|
||||
}
|
||||
|
||||
#get all the nodes state in the same cec
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} :get all the nodes state for CEC:$cec_name.");
|
||||
$action = "all_lpars_state";
|
||||
undef($values);
|
||||
my $values = xCAT::FSPUtils::fsp_state_action ($request, $cec_name, $td, $action);
|
||||
@ -770,6 +773,7 @@ sub modify_by_prof {
|
||||
return ( \@result );
|
||||
}
|
||||
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} :set_io_slot_owner io_slot_info:$f,owner:$lpar.");
|
||||
my $values = xCAT::FSPUtils::fsp_api_action ($request, $lpar, $d, $action, $tooltype, $drc_index);
|
||||
#my $Rc = shift(@$values);
|
||||
my $Rc = pop(@$values);
|
||||
@ -781,6 +785,7 @@ sub modify_by_prof {
|
||||
|
||||
}
|
||||
}
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} END.");
|
||||
return( \@result );
|
||||
}
|
||||
|
||||
@ -795,6 +800,7 @@ sub enumerate {
|
||||
my $type;
|
||||
my @td;
|
||||
|
||||
xCAT::MsgUtils->verbose_message($request, "lsvm :enumerate START for mtms:$mtms.");
|
||||
while (my ($name,$d) = each(%$h) ) {
|
||||
$cec = @$d[3];
|
||||
$type = @$d[4];
|
||||
@ -802,6 +808,7 @@ sub enumerate {
|
||||
}
|
||||
|
||||
$td[4]="cec";
|
||||
xCAT::MsgUtils->verbose_message($request, "lsvm :enumerate get_io_slot_info for node:$cec.");
|
||||
my $action = "get_io_slot_info";
|
||||
my $values = xCAT::FSPUtils::fsp_api_action ($request, $cec, \@td, $action);
|
||||
#my $Rc = shift(@$values);
|
||||
@ -818,6 +825,7 @@ sub enumerate {
|
||||
#}
|
||||
|
||||
if( $type =~ /^(fsp|cec)$/ ) {
|
||||
xCAT::MsgUtils->verbose_message($request, "lsvm :enumerate query_octant_cfg for node:$cec.");
|
||||
$action = "query_octant_cfg";
|
||||
my $values = xCAT::FSPUtils::fsp_api_action ($request, $cec, \@td, $action);
|
||||
my $Rc = pop(@$values);
|
||||
@ -838,6 +846,7 @@ sub enumerate {
|
||||
$outhash{ $cec } = $res;
|
||||
}
|
||||
|
||||
xCAT::MsgUtils->verbose_message($request, "lsvm :enumerate END for mtms:$mtms.");
|
||||
return( [0,\%outhash] );
|
||||
}
|
||||
|
||||
@ -986,6 +995,7 @@ sub list {
|
||||
my %lpar_huges = ();
|
||||
my $l_string = "\n";
|
||||
#print Dumper($hash);
|
||||
xCAT::MsgUtils->verbose_message($request, "lsvm START");
|
||||
while (my ($mtms,$h) = each(%$hash) ) {
|
||||
my $info = enumerate($request, $h, $mtms );
|
||||
my $Rc = shift(@$info);
|
||||
@ -1008,7 +1018,7 @@ sub list {
|
||||
# push @result, [$node_name, "Node not found",1];
|
||||
# next;
|
||||
# }
|
||||
|
||||
xCAT::MsgUtils->verbose_message($request, "lsvm :parse io info for node:$node_name.");
|
||||
if( defined($msg)) {
|
||||
push @result,[$node_name, $msg, 0];
|
||||
} else {
|
||||
@ -1083,6 +1093,7 @@ sub list {
|
||||
|
||||
# get the octant configuration value
|
||||
if ($type=~/^(fsp|cec)$/) {
|
||||
xCAT::MsgUtils->verbose_message($request, "lsvm :parse octant info for $type:$node_name.");
|
||||
my $value = $data->{$cec};
|
||||
if ($request->{opt}->{l}) {
|
||||
my $cec_bsr = get_cec_cec_bsr($node_name, $bsr_infos);
|
||||
@ -1100,6 +1111,7 @@ sub list {
|
||||
$l_string = "\n";
|
||||
} # end of while
|
||||
}# end of while
|
||||
xCAT::MsgUtils->verbose_message($request, "lsvm END.");
|
||||
return( \@result );
|
||||
}
|
||||
|
||||
@ -1193,6 +1205,7 @@ sub create {
|
||||
my %node_id = ();
|
||||
my @nodes = @{$opt->{target}};
|
||||
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} START.");
|
||||
#print Dumper($request);
|
||||
#####################################
|
||||
# Get source node information
|
||||
@ -1212,6 +1225,7 @@ sub create {
|
||||
}
|
||||
}
|
||||
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} :query_octant_cfg for CEC:$cec_name.");
|
||||
my $values = xCAT::FSPUtils::fsp_api_action ($request, $cec_name, $d, "query_octant_cfg");
|
||||
my $Rc = shift(@$values);
|
||||
if ( $Rc != 0 ) {
|
||||
@ -1288,6 +1302,7 @@ sub create {
|
||||
|
||||
|
||||
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} :set_octant_cfg for CEC:$cec_name,param:$parameters.");
|
||||
#$values = xCAT::FSPUtils::fsp_api_create_parttion( $starting_lpar_id, $octant_cfg, $node_number, $d, "set_octant_cfg");
|
||||
$values = xCAT::FSPUtils::fsp_api_action ($request,$cec_name, $d, "set_octant_cfg", 0, $parameters);
|
||||
my $Rc = $$values[2];
|
||||
@ -1305,6 +1320,7 @@ sub create {
|
||||
|
||||
}
|
||||
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} END.");
|
||||
return( \@result );
|
||||
}
|
||||
|
||||
|
@ -710,5 +710,24 @@ sub backup_logfile
|
||||
return $::OK;
|
||||
}
|
||||
|
||||
sub verbose_message
|
||||
{
|
||||
shift;
|
||||
my $req = shift;
|
||||
my $data = shift;
|
||||
if (!defined($req->{verbose})) {
|
||||
return;
|
||||
}
|
||||
my ($sec,$min,$hour,$mday,$mon,$yr,$wday,$yday,$dst) = localtime(time);
|
||||
my $time = sprintf "%04d%02d%02d.%02d:%02d:%02d", $yr+1900,$mon+1,$mday,$hour,$min,$sec;
|
||||
$data = "$time ($$) ".$data;
|
||||
if (defined($req->{callback})) {
|
||||
my %rsp;
|
||||
$rsp{data} = [$data];
|
||||
xCAT::MsgUtils->message("I", \%rsp, $req->{callback});
|
||||
} else {
|
||||
xCAT::MsgUtils->message("I", $data);
|
||||
}
|
||||
}
|
||||
1;
|
||||
|
||||
|
@ -7,6 +7,7 @@ use xCAT::PPCcli qw(SUCCESS EXPECT_ERROR RC_ERROR NR_ERROR);
|
||||
use xCAT::Usage;
|
||||
use Storable qw(freeze thaw);
|
||||
use POSIX "WNOHANG";
|
||||
use xCAT::MsgUtils qw(verbose_message);
|
||||
|
||||
##########################################
|
||||
# Globals
|
||||
@ -359,6 +360,7 @@ sub passwd {
|
||||
while ( my ($cec,$h) = each(%$hash) ) {
|
||||
while ( my ($node,$d) = each(%$h) ) {
|
||||
my $type = @$d[4];
|
||||
xCAT::MsgUtils->verbose_message($request, "rspconfig :modify password of $usr for node:$node.");
|
||||
my $data = xCAT::PPCcli::chsyspwd( $exp, $usr, $type, $cec, $passwd, $newpasswd );
|
||||
my $Rc = shift(@$data);
|
||||
my $usr_back = $usr;
|
||||
@ -369,6 +371,7 @@ sub passwd {
|
||||
# Write the new password to table
|
||||
##################################
|
||||
if ( $Rc == SUCCESS ) {
|
||||
xCAT::MsgUtils->verbose_message($request, "rspconfig :update xCATdb for node:$node,ID:$usr_back.");
|
||||
xCAT::PPCdb::update_credentials( $node, $type, $usr_back, $newpasswd );
|
||||
}
|
||||
}
|
||||
@ -438,6 +441,7 @@ sub sshcfg {
|
||||
# Determine if SSH is enabled
|
||||
#####################################
|
||||
if ( !defined( $mode )) {
|
||||
xCAT::MsgUtils->verbose_message($request, "rspconfig :check sshcfg for user:$logon on node:$server.");
|
||||
my $result = xCAT::PPCcli::send_cmd( $exp, "cat $auth" );
|
||||
my $Rc = shift(@$result);
|
||||
|
||||
@ -460,6 +464,7 @@ sub sshcfg {
|
||||
#####################################
|
||||
# Enable/disable SSH
|
||||
#####################################
|
||||
xCAT::MsgUtils->verbose_message($request, "rspconfig :sshcfg $mode for user:$logon on node:$server.");
|
||||
my $result = xCAT::PPCcli::mkauthkeys( $exp, $mode, $logon, $sshkey );
|
||||
my $Rc = shift(@$result);
|
||||
|
||||
@ -503,6 +508,7 @@ sub frame {
|
||||
#################################
|
||||
# Get frame number
|
||||
#################################
|
||||
xCAT::MsgUtils->verbose_message($request, "rspconfig :get frame_num for node:$node.");
|
||||
$data = xCAT::PPCcli::lssyscfg( $exp, @$d[4], @$d[2], 'frame_num' );
|
||||
$Rc = shift(@$data);
|
||||
|
||||
@ -533,6 +539,7 @@ sub frame {
|
||||
if ( !defined($ent) or !defined($ent->{id}) ) {
|
||||
return( [[$node,"Cannot find frame num in database",RC_ERROR]] );
|
||||
}
|
||||
xCAT::MsgUtils->verbose_message($request, "rspconfig :set frame_num=".$ent->{id}." for node:$node.");
|
||||
$data = xCAT::PPCcli::chsyscfg( $exp, "bpa", $d, "frame_num=".$ent->{id} );
|
||||
$Rc = shift(@$data);
|
||||
|
||||
@ -550,6 +557,7 @@ sub frame {
|
||||
# Set frame number
|
||||
# Read the frame number from opt
|
||||
#################################
|
||||
xCAT::MsgUtils->verbose_message($request, "rspconfig :set frame_num=$value for node:$node.");
|
||||
$data = xCAT::PPCcli::chsyscfg( $exp, "bpa", $d, "frame_num=$value" );
|
||||
$Rc = shift(@$data);
|
||||
|
||||
@ -565,6 +573,7 @@ sub frame {
|
||||
#################################
|
||||
# Set frame number to database
|
||||
#################################
|
||||
xCAT::MsgUtils->verbose_message($request, "rspconfig : set frame_num, update node:$node attr id=$value.");
|
||||
$tab->setNodeAttribs( $node, { id=>$value } );
|
||||
}
|
||||
}
|
||||
@ -597,6 +606,7 @@ sub hostname {
|
||||
#################################
|
||||
# Get system name
|
||||
#################################
|
||||
xCAT::MsgUtils->verbose_message($request, "rspconfig :get system name for node:$node.");
|
||||
$data = xCAT::PPCcli::lssyscfg( $exp, @$d[4], @$d[2], 'name' );
|
||||
$Rc = shift(@$data);
|
||||
|
||||
@ -609,6 +619,7 @@ sub hostname {
|
||||
|
||||
push @$result, [$node,@$data[0],SUCCESS];
|
||||
} elsif ( $value eq '*' ) {
|
||||
xCAT::MsgUtils->verbose_message($request, "rspconfig :set system name:$node for node:$node.");
|
||||
$data = xCAT::PPCcli::chsyscfg( $exp, @$d[4], $d, "new_name=$node" );
|
||||
$Rc = shift(@$data);
|
||||
|
||||
@ -621,6 +632,7 @@ sub hostname {
|
||||
|
||||
push @$result, [$node,@$data[0],SUCCESS];
|
||||
} else {
|
||||
xCAT::MsgUtils->verbose_message($request, "rspconfig :set system name:$value for node:$node.");
|
||||
$data = xCAT::PPCcli::chsyscfg( $exp, @$d[4], $d, "new_name=$value" );
|
||||
$Rc = shift(@$data);
|
||||
|
||||
@ -766,6 +778,7 @@ sub doresetnet {
|
||||
$targets->{$nodetype}->{$oi}->{'args'} .= ",$netinfo{$oi}{'gateway'},$netinfo{$oi}{'mask'}";
|
||||
}
|
||||
$ip_host->{$oi} = $name;
|
||||
xCAT::MsgUtils->verbose_message($req, "rspconfig :resetnet collecting information for node:$name.");
|
||||
}
|
||||
|
||||
$result = undef;
|
||||
@ -1045,6 +1058,7 @@ sub invoke_cmd {
|
||||
"sshcfg=enable",
|
||||
"network_reset=$target_dev->{args}"
|
||||
);
|
||||
xCAT::MsgUtils->verbose_message($request, "rspconfig :doresetnet run xCAT_plugin::blade::clicmds for node:$target_dev->{name},ip:$ip.");
|
||||
$result = xCAT_plugin::blade::clicmds(
|
||||
$ip,
|
||||
$target_dev->{username},
|
||||
@ -1056,6 +1070,7 @@ sub invoke_cmd {
|
||||
{
|
||||
@cmds = ("network_reset=$target_dev->{args}");
|
||||
#trace( $request, "sshcmds on hmc $ip");
|
||||
xCAT::MsgUtils->verbose_message($request, "rspconfig :doresetnet run xCAT::PPC::sshcmds_on_hmc for node:$target_dev->{name},ip:$ip.");
|
||||
$result = xCAT::PPC::sshcmds_on_hmc(
|
||||
$ip,
|
||||
$target_dev->{username},
|
||||
@ -1066,6 +1081,7 @@ sub invoke_cmd {
|
||||
{
|
||||
@cmds = ("network=$ip,$target_dev->{args}");
|
||||
#trace( $request, "update config on $target_dev->{'type'} $ip");
|
||||
xCAT::MsgUtils->verbose_message($request, "rspconfig :doresetnet run xCAT::PPC::updconf_in_asm for node:$target_dev->{name},ip:$ip.");
|
||||
$result = xCAT::PPC::updconf_in_asm(
|
||||
$ip,
|
||||
$target_dev,
|
||||
|
@ -7,7 +7,7 @@ use xCAT::PPCcli qw(SUCCESS EXPECT_ERROR RC_ERROR NR_ERROR);
|
||||
use xCAT::Usage;
|
||||
use xCAT::DBobjUtils;
|
||||
use xCAT::FSPUtils;
|
||||
|
||||
use xCAT::MsgUtils qw(verbose_message);
|
||||
##############################################
|
||||
# Globals
|
||||
##############################################
|
||||
@ -473,6 +473,7 @@ sub mkhwconn
|
||||
my @value = ();
|
||||
my $Rc = undef;
|
||||
|
||||
xCAT::MsgUtils->verbose_message($request, "mkhwconn START.");
|
||||
for my $cec_bpa ( keys %$hash)
|
||||
{
|
||||
my $node_hash = $hash->{$cec_bpa};
|
||||
@ -501,6 +502,7 @@ sub mkhwconn
|
||||
} else {
|
||||
push @newnodes,$cnode;
|
||||
}
|
||||
xCAT::MsgUtils->verbose_message($request, "mkhwconn :mksysconn for node:$node_name.");
|
||||
for my $nn ( @newnodes )
|
||||
{
|
||||
my $node_ip;
|
||||
@ -549,6 +551,7 @@ sub mkhwconn
|
||||
# }
|
||||
}
|
||||
}
|
||||
xCAT::MsgUtils->verbose_message($request, "mkhwconn END.");
|
||||
return \@value;
|
||||
}
|
||||
##########################################################################
|
||||
|
@ -10,7 +10,7 @@ use xCAT::PPCcli qw(SUCCESS EXPECT_ERROR RC_ERROR NR_ERROR);
|
||||
use xCAT::Usage;
|
||||
use Socket;
|
||||
use xCAT::PPCdb;
|
||||
|
||||
use xCAT::MsgUtils qw(verbose_message);
|
||||
|
||||
##########################################
|
||||
# Globals
|
||||
@ -389,6 +389,7 @@ sub process_cmd {
|
||||
##################################
|
||||
# Run command
|
||||
##################################
|
||||
xCAT::MsgUtils->verbose_message($request, "$command :$_ for node:$server.");
|
||||
my $res = $cmds{$command}{$_}[1]($exp, $request, $form, \%menu);
|
||||
push @$res, $_;
|
||||
push @result, $res;
|
||||
|
@ -7,7 +7,7 @@ use Getopt::Long;
|
||||
use Data::Dumper;
|
||||
use xCAT::PPCcli qw(SUCCESS EXPECT_ERROR RC_ERROR NR_ERROR);
|
||||
use xCAT::NetworkUtils;
|
||||
|
||||
use xCAT::MsgUtils qw(verbose_message);
|
||||
use xCAT::LparNetbootExp;
|
||||
|
||||
##########################################################################
|
||||
@ -394,6 +394,7 @@ sub do_getmacs {
|
||||
# last;
|
||||
# }
|
||||
#}
|
||||
xCAT::MsgUtils->verbose_message($request, "getmacs :lparnetbootexp for node:$node.");
|
||||
my $Rc = xCAT::LparNetbootExp->lparnetbootexp(\%optarg, $request);
|
||||
######################################
|
||||
# Split results into array
|
||||
@ -631,6 +632,7 @@ sub getmacs {
|
||||
#########################################
|
||||
# Connect to fsp to achieve MAC address
|
||||
#########################################
|
||||
xCAT::MsgUtils->verbose_message($request, "getmacs START.");
|
||||
my $d = $par;
|
||||
|
||||
#########################################
|
||||
@ -651,6 +653,7 @@ sub getmacs {
|
||||
# Get name known by HCP
|
||||
#########################################
|
||||
my $filter = "name,lpar_id";
|
||||
xCAT::MsgUtils->verbose_message($request, "getmacs :lssyscfg filter '$filter'.");
|
||||
my $values = xCAT::PPCcli::lssyscfg( $exp, $type, $mtms, $filter );
|
||||
my $Rc = shift(@$values);
|
||||
|
||||
@ -694,6 +697,7 @@ sub getmacs {
|
||||
#########################################
|
||||
# Manually collect MAC addresses.
|
||||
#########################################
|
||||
xCAT::MsgUtils->verbose_message($request, "getmacs :do_getmacs for node:$node.");
|
||||
$result = do_getmacs( $request, $d, $exp, $name, $node );
|
||||
$Rc = shift(@$result);
|
||||
}
|
||||
@ -749,6 +753,7 @@ sub getmacs {
|
||||
if ( !exists( $opt->{d} )) {
|
||||
writemac( $node, $result );
|
||||
}
|
||||
xCAT::MsgUtils->verbose_message($request, "getmacs END.");
|
||||
return( [[$node,$data,$Rc]] );
|
||||
}
|
||||
}
|
||||
|
@ -8,7 +8,7 @@ use xCAT::PPCdb;
|
||||
use xCAT::Usage;
|
||||
use xCAT::NodeRange;
|
||||
use Data::Dumper;
|
||||
|
||||
use xCAT::MsgUtils qw(verbose_message);
|
||||
|
||||
##############################################
|
||||
# Globals
|
||||
@ -504,6 +504,7 @@ sub clone {
|
||||
# Enumerate CECs
|
||||
#####################################
|
||||
my $filter = "type_model,serial_num";
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} :lssyscfg fsps.filter:'$filter'.");
|
||||
my $cecs = xCAT::PPCcli::lssyscfg( $exp, "fsps", $filter );
|
||||
my $Rc = shift(@$cecs);
|
||||
|
||||
@ -579,6 +580,7 @@ sub clone {
|
||||
$temp[2] = $destcec;
|
||||
$temp[4] = 'lpar';
|
||||
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} :mksyscfg lpar.cfg:'$cfg'.");
|
||||
my $result = xCAT::PPCcli::mksyscfg( $exp, "lpar", \@temp, $cfg );
|
||||
$Rc = shift(@$result);
|
||||
|
||||
@ -618,6 +620,7 @@ sub remove {
|
||||
my @lpars = ();
|
||||
my @values = ();
|
||||
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} START.");
|
||||
while (my ($mtms,$h) = each(%$hash) ) {
|
||||
while (my ($lpar,$d) = each(%$h) ) {
|
||||
my $lparid = @$d[0];
|
||||
@ -641,6 +644,7 @@ sub remove {
|
||||
####################################
|
||||
else {
|
||||
my $filter = "name,lpar_id";
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} :lssyscfg lpar.filter:'$filter'.");
|
||||
my $result = xCAT::PPCcli::lssyscfg(
|
||||
$exp,
|
||||
"lpar",
|
||||
@ -673,6 +677,7 @@ sub remove {
|
||||
###############################################
|
||||
# begin to retrieve the CEC's service lpar id
|
||||
###############################################
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} :lssyscfg fsp.filter:'service_lpar_id'.");
|
||||
my $service_lparid = xCAT::PPCcli::lssyscfg(
|
||||
$exp,
|
||||
"fsp",
|
||||
@ -687,6 +692,7 @@ sub remove {
|
||||
my $cfgdata = @$service_lparid[0];
|
||||
if ( ($id == $cfgdata) && ($cfgdata !~ /none/) ) {
|
||||
$cfgdata = "service_lpar_id=none";
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} :lssyscfg fsp.filter:'$cfgdata'.");
|
||||
my $result = xCAT::PPCcli::chsyscfg( $exp, "fsp", $d, $cfgdata );
|
||||
$Rc = shift(@$result);
|
||||
if ( $Rc != SUCCESS ) {
|
||||
@ -703,6 +709,7 @@ sub remove {
|
||||
################################
|
||||
# Send remove command
|
||||
################################
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} :rmsyscfg lpar.id:$id.");
|
||||
my $result = xCAT::PPCcli::rmsyscfg( $exp, \@d );
|
||||
my $Rc = shift(@$result);
|
||||
|
||||
@ -710,6 +717,7 @@ sub remove {
|
||||
# Remove LPAR from database
|
||||
################################
|
||||
if ( $Rc == SUCCESS and !exists( $opt->{r} ) ) {
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} :remove lpar:$name from xCATdb.");
|
||||
my $err = xCATdB( "rmvm", $name,"", $id,"", $type,"" , $lpar );
|
||||
if ( defined( $err )) {
|
||||
push @values, [$lpar,$err,RC_ERROR];
|
||||
@ -720,6 +728,7 @@ sub remove {
|
||||
}
|
||||
}
|
||||
}
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} END.");
|
||||
return( \@values );
|
||||
}
|
||||
|
||||
@ -791,6 +800,7 @@ sub modify_by_attr {
|
||||
my $attrstr= $opt->{a};
|
||||
my @values;
|
||||
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} START.");
|
||||
# attrstr will be in stdin for "cat vmdef | chvm nodename"
|
||||
if (!defined($attrstr) && defined($request->{stdin})) {
|
||||
my $tempattr = $request->{stdin};
|
||||
@ -836,6 +846,7 @@ sub modify_by_attr {
|
||||
###########################
|
||||
# Get current profile
|
||||
###########################
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} :lssyscfg node.id:'@$d[0]'.");
|
||||
my $cfg_res = xCAT::PPCcli::lssyscfg(
|
||||
$exp,
|
||||
"node",
|
||||
@ -868,6 +879,7 @@ sub modify_by_attr {
|
||||
}
|
||||
|
||||
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} :lssyscfg prof.filter:'lpar_ids=@$d[0],profile_names=@$cfg_res[0]'.");
|
||||
my $prof = xCAT::PPCcli::lssyscfg(
|
||||
$exp,
|
||||
"prof",
|
||||
@ -893,12 +905,14 @@ sub modify_by_attr {
|
||||
push @values, [$lpar, $err_msg, $Rc];
|
||||
next;
|
||||
}
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} :chsyscfg prof.cfg:'$cfgdata'.");
|
||||
my $result = xCAT::PPCcli::chsyscfg( $exp, "prof", $d, $cfgdata );
|
||||
$Rc = shift(@$result);
|
||||
push @values, [$lpar,@$result[0],$Rc];
|
||||
}
|
||||
}
|
||||
}
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} END.");
|
||||
return (\@values);
|
||||
}
|
||||
|
||||
@ -1004,6 +1018,7 @@ sub modify_by_prof {
|
||||
my $profile = $opt->{p};
|
||||
my @values;
|
||||
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} START.");
|
||||
#######################################
|
||||
# -p flag, find profile specified
|
||||
#######################################
|
||||
@ -1029,6 +1044,7 @@ sub modify_by_prof {
|
||||
###########################
|
||||
# Get LPAR profiles
|
||||
###########################
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} :lssyscfg prof.filter:'lpar_ids=@$d[0],profile_names=$profile'.");
|
||||
my $prof = xCAT::PPCcli::lssyscfg(
|
||||
$exp,
|
||||
"prof",
|
||||
@ -1100,6 +1116,7 @@ sub modify_by_prof {
|
||||
# Send command
|
||||
###############################
|
||||
if ( defined( $profile )) {
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} :mksyscfg prof.cfg:'$cfg'.");
|
||||
my $result = xCAT::PPCcli::mksyscfg( $exp, "prof", $d, $cfg );
|
||||
my $Rc = shift(@$result);
|
||||
|
||||
@ -1112,12 +1129,14 @@ sub modify_by_prof {
|
||||
push @values, [$lpar,@$result[0],$Rc];
|
||||
}
|
||||
else {
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} :chsyscfg prof.cfg:'$cfg'.");
|
||||
my $result = xCAT::PPCcli::chsyscfg( $exp, "prof", $d, $cfg );
|
||||
my $Rc = shift(@$result);
|
||||
push @values, [$lpar,@$result[0],$Rc];
|
||||
}
|
||||
}
|
||||
}
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} END.");
|
||||
return( \@values );
|
||||
}
|
||||
|
||||
@ -1136,6 +1155,7 @@ sub list {
|
||||
my @lpars = ();
|
||||
my $result;
|
||||
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} START.");
|
||||
while (my ($mtms,$h) = each(%$hash) ) {
|
||||
while (my ($lpar,$d) = each(%$h) ) {
|
||||
my $lparid = @$d[0];
|
||||
@ -1161,6 +1181,7 @@ sub list {
|
||||
####################################
|
||||
else {
|
||||
my $filter = "name,lpar_id";
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} :lssyscfg lpar.filter:'$filter'.");
|
||||
my $result = xCAT::PPCcli::lssyscfg(
|
||||
$exp,
|
||||
"lpar",
|
||||
@ -1191,6 +1212,7 @@ sub list {
|
||||
#################################
|
||||
# Get source LPAR profile
|
||||
#################################
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} :lssyscfg prof.filter:'lpar_ids=$id'.");
|
||||
my $prof = xCAT::PPCcli::lssyscfg(
|
||||
$exp,
|
||||
"prof",
|
||||
@ -1244,7 +1266,7 @@ sub list {
|
||||
foreach ( sort keys %$values ) {
|
||||
push @value,$values->{$_};
|
||||
}
|
||||
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} END.");
|
||||
return( \@value );
|
||||
}
|
||||
##########################################################################
|
||||
@ -1604,7 +1626,7 @@ sub create {
|
||||
my $mtms;
|
||||
my $type;
|
||||
my $profile;
|
||||
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} START.");
|
||||
#####################################
|
||||
# Get source node information
|
||||
#####################################
|
||||
@ -1643,6 +1665,7 @@ sub create {
|
||||
#####################################
|
||||
# Get source LPAR profile
|
||||
#####################################
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} :lssyscfg prof.filter:'lpar_ids=$lparid'.");
|
||||
my $prof = xCAT::PPCcli::lssyscfg(
|
||||
$exp,
|
||||
"prof",
|
||||
@ -1721,6 +1744,7 @@ sub create {
|
||||
#################################
|
||||
# Create new LPAR
|
||||
#################################
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} :mksyscfg lpar.cfg:'$cfgdata'.");
|
||||
$result = xCAT::PPCcli::mksyscfg( $exp, "lpar", $d, $cfgdata );
|
||||
$Rc = shift(@$result);
|
||||
|
||||
@ -1728,6 +1752,7 @@ sub create {
|
||||
# Add new LPAR to database
|
||||
#################################
|
||||
if ( $Rc == SUCCESS ) {
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} :add lpar:$name from xCATdb.");
|
||||
my $err = xCATdB( "mkvm", $name, $profile, $id, $d, $hwtype, $lpar);
|
||||
if ( defined( $err )) {
|
||||
push @values, [$name,$err,RC_ERROR];
|
||||
@ -1738,6 +1763,7 @@ sub create {
|
||||
push @values, [$name,@$result[0],$Rc];
|
||||
$id++;
|
||||
}
|
||||
xCAT::MsgUtils->verbose_message($request, "$request->{command} END.");
|
||||
return( \@values );
|
||||
}
|
||||
|
||||
|
@ -90,7 +90,7 @@ my %usage = (
|
||||
"rbootseq" =>
|
||||
"Usage:
|
||||
Common:
|
||||
rbootseq [-h|--help|-v|--version]
|
||||
rbootseq [-h|--help|-v|--version|-V|--Verbose]
|
||||
Blade specific:
|
||||
rbootseq <noderange> [hd0|hd1|hd2|hd3|net|iscsi|usbflash|floppy|none],...
|
||||
PPC (using Direct FSP Management) specific:
|
||||
@ -101,7 +101,7 @@ my %usage = (
|
||||
"rspconfig" =>
|
||||
"Usage:
|
||||
Common:
|
||||
rspconfig [-h|--help|-v|--version]
|
||||
rspconfig [-h|--help|-v|--version|-V|--Verbose]
|
||||
BMC/MPA Common:
|
||||
rspconfig <noderange> [snmpdest|alert|community] [-V|--verbose]
|
||||
rspconfig <noderange> [snmpdest=<dest ip address>|alert=<on|off|en|dis|enable|disable>|community=<string>]
|
||||
|
@ -43,6 +43,8 @@ use Getopt::Long;
|
||||
use xCAT::SvrUtils;
|
||||
use xCAT::FSPUtils;
|
||||
my $indiscover=0;
|
||||
my $CALLBACK = undef;
|
||||
my $verbose_cmd = undef;
|
||||
|
||||
sub handled_commands {
|
||||
return {
|
||||
@ -836,6 +838,7 @@ sub vitals {
|
||||
push @vitems,split( /,/,$_);
|
||||
}
|
||||
}
|
||||
verbose_message("slotid:$slot, options:@vitems.");
|
||||
} else { #-- chassis query
|
||||
foreach (@_) {
|
||||
if ($_ eq 'all') {
|
||||
@ -853,6 +856,7 @@ sub vitals {
|
||||
push @vitems,split( /,/,$_);
|
||||
}
|
||||
}
|
||||
verbose_message("for chassis, options:@vitems.");
|
||||
}
|
||||
if (grep /fan/,@vitems or grep /blower/,@vitems) { #We'll lump blowers and fans together for blades, besides, BCS fans
|
||||
#use the 'blower' OIDs anyway
|
||||
@ -3730,6 +3734,18 @@ sub build_more_info{
|
||||
return \@moreinfo;
|
||||
}
|
||||
|
||||
sub verbose_message {
|
||||
my $data = shift;
|
||||
if (!defined($CALLBACK) or !defined($verbose_cmd)) {
|
||||
return;
|
||||
}
|
||||
my ($sec,$min,$hour,$mday,$mon,$yr,$wday,$yday,$dst) = localtime(time);
|
||||
my $time = sprintf "%04d%02d%02d.%02d:%02d:%02d", $yr+1900,$mon+1,$mday,$hour,$min,$sec;
|
||||
$data = "$time ($$) $verbose_cmd:".$data;
|
||||
my %rsp;
|
||||
$rsp{data} = [$data];
|
||||
xCAT::MsgUtils->message("I", \%rsp, $CALLBACK);
|
||||
}
|
||||
sub process_request {
|
||||
$SIG{INT} = $SIG{TERM} = sub {
|
||||
foreach (keys %mm_comm_pids) {
|
||||
@ -3759,6 +3775,10 @@ sub process_request {
|
||||
} else {
|
||||
@exargs = ($request->{arg});
|
||||
}
|
||||
if (grep /-V|--Verbose/, @exargs) {
|
||||
$CALLBACK = $callback;
|
||||
$verbose_cmd = $command;
|
||||
}
|
||||
|
||||
my $moreinfo;
|
||||
if ($request->{moreinfo}) { $moreinfo=$request->{moreinfo}; }
|
||||
@ -3995,7 +4015,7 @@ sub clicmds {
|
||||
my %handled = ();
|
||||
my $result;
|
||||
my @tcmds = qw(snmpcfg sshcfg network swnet pd1 pd2 textid network_reset rscanfsp initnetwork solcfg userpassword USERID);
|
||||
|
||||
verbose_message("start deal with $mptype CLI options:@{$args{cmds}}.");
|
||||
# most of these commands should be able to be done
|
||||
# through SNMP, but they produce various errors.
|
||||
foreach my $cmd (@{$args{cmds}}) {
|
||||
@ -4012,9 +4032,13 @@ sub clicmds {
|
||||
next;
|
||||
}
|
||||
}
|
||||
if ($cmd =~ /-v|--Verbose/) {
|
||||
next;
|
||||
}
|
||||
push @unhandled,$cmd;
|
||||
}
|
||||
unless (%handled) {
|
||||
verbose_message("no option needed to be handled with $mptype CLI.");
|
||||
return([0,\@unhandled]);
|
||||
}
|
||||
my $curruser = $user;
|
||||
@ -4050,6 +4074,7 @@ sub clicmds {
|
||||
}
|
||||
require xCAT::SSHInteract;
|
||||
my $t;
|
||||
verbose_message("start SSH mpa:$mpa session for node:$node.");
|
||||
eval {
|
||||
$t = new xCAT::SSHInteract(
|
||||
-username=>$curruser,
|
||||
@ -4087,6 +4112,7 @@ sub clicmds {
|
||||
if (defined($handled{USERID})) {
|
||||
$promote_pass = $handled{USERID};
|
||||
}
|
||||
verbose_message("deal with genesis state for mpa:$mpa.");
|
||||
$t->print($currpass);
|
||||
$t->waitfor(-match=>"/password:/i");
|
||||
$t->print($promote_pass);
|
||||
@ -4106,6 +4132,7 @@ sub clicmds {
|
||||
}
|
||||
$t->waitfor(match=>"/system> /");
|
||||
} elsif (not $t) {#ssh failed.. fallback to a telnet attempt for older AMMs with telnet disabled by default
|
||||
verbose_message("start telnet mpa:$curraddr session for node:$node.");
|
||||
require Net::Telnet;
|
||||
$t = new Net::Telnet(
|
||||
Timeout=>15,
|
||||
@ -4164,6 +4191,7 @@ sub clicmds {
|
||||
push @data, "The management module has been reset to load the configuration";
|
||||
}
|
||||
$t->close;
|
||||
verbose_message("finished SSH mpa:$curraddr session for node:$node.");
|
||||
return([$Rc,\@unhandled,\@data]);
|
||||
}
|
||||
|
||||
@ -5090,7 +5118,7 @@ sub dompa {
|
||||
return;
|
||||
}
|
||||
}
|
||||
|
||||
verbose_message("start deal with SNMP session.");
|
||||
$mpauser= $mpahash->{$mpa}->{username};
|
||||
$mpapass = $mpahash->{$mpa}->{password};
|
||||
$session = new SNMP::Session(
|
||||
@ -5263,6 +5291,7 @@ sub dompa {
|
||||
}
|
||||
xCAT_monitoring::monitorctrl::setNodeStatusAttributes(\%old, 1);
|
||||
}
|
||||
verbose_message("SNMP session completed.");
|
||||
#my $msgtoparent=freeze(\@outhashes); # = XMLout(\%output,RootName => 'xcatresponse');
|
||||
#print $out $msgtoparent; #$node.": $_\n";
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user