From 63014585a9ec0c5a7f367ece01a9c7ed344d6e55 Mon Sep 17 00:00:00 2001 From: jbjohnso Date: Sat, 18 Feb 2012 20:40:09 +0000 Subject: [PATCH] Hav ipmi plugin provide a site variable to disable service node fanout 'ipmifanout' to 0 will bypass service nodes (recommended IMO) git-svn-id: https://svn.code.sf.net/p/xcat/code/xcat-core/trunk@11621 8638fb3e-16cb-4fca-ae20-7b5d299a9bcd --- xCAT-server/lib/xcat/plugins/ipmi.pm | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/xCAT-server/lib/xcat/plugins/ipmi.pm b/xCAT-server/lib/xcat/plugins/ipmi.pm index 0effd2e87..b9297a8b2 100644 --- a/xCAT-server/lib/xcat/plugins/ipmi.pm +++ b/xCAT-server/lib/xcat/plugins/ipmi.pm @@ -5471,7 +5471,12 @@ sub preprocess_request { @noderanges=($realnoderange); } foreach my $noderange (@noderanges) { - my $sn = xCAT::Utils->get_ServiceNode($noderange, "xcat", "MN"); + my $sn; + if ($::XCATSITEVALS{ipmifanout} =~ /0|n/i) { + $sn = { '!xcatlocal!' => $noderange }; + } else { + $sn = xCAT::Utils->get_ServiceNode($noderange, "xcat", "MN"); + } # build each request for each service node @@ -5480,7 +5485,9 @@ sub preprocess_request { #print "snkey=$snkey\n"; my $reqcopy = {%$request}; $reqcopy->{node} = $sn->{$snkey}; - $reqcopy->{'_xcatdest'} = $snkey; + unless ($snkey eq '!xcatlocal!') { + $reqcopy->{'_xcatdest'} = $snkey; + } $reqcopy->{_xcatpreprocessed}->[0] = 1; if ($delay) { $reqcopy->{'_xcatdelay'} = $delay; } push @requests, $reqcopy;