From e954e4c684d9db83baf5f9871d08dddd6ba61f78 Mon Sep 17 00:00:00 2001 From: jbjohnso Date: Sat, 26 Sep 2009 18:16:26 +0000 Subject: [PATCH] -Have makeconservercf report error when config is bad instead of writing malformed conserver config files git-svn-id: https://svn.code.sf.net/p/xcat/code/xcat-core/trunk@4238 8638fb3e-16cb-4fca-ae20-7b5d299a9bcd --- xCAT-server/lib/xcat/plugins/conserver.pm | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/xCAT-server/lib/xcat/plugins/conserver.pm b/xCAT-server/lib/xcat/plugins/conserver.pm index 901c0d392..dbd0024d3 100644 --- a/xCAT-server/lib/xcat/plugins/conserver.pm +++ b/xCAT-server/lib/xcat/plugins/conserver.pm @@ -309,7 +309,10 @@ sub makeconservercf { dotsent($_,\@filecontent); $termservers{$_->{termserver}}=1; #prevent needless cycles being burned } - donodeent($_,\@filecontent,$delmode); + if (donodeent($_,\@filecontent,$delmode) eq "BADCFG") { + $cb->({node=>[{name=>$node,error=>"Bad configuration, check attributes under the nodehm category",errorcode=>1}]}); + + } } } } @@ -338,7 +341,9 @@ sub makeconservercf { $termservers{$_->{termserver}}=1; #prevent needless cycles being burned } if ( $type{$_->{node}} !~ /fsp|bpa|hmc|ivm/ ) { - donodeent($_,\@filecontent); + if (donodeent($_,\@filecontent) eq "BADCFG") { + $cb->({node=>[{name=>$_,error=>"Bad configuration, check attributes under the nodehm category",errorcode=>1}]}); + } } } } @@ -440,10 +445,13 @@ sub donodeent { if ($delmode) { return; } + my $cmeth=$cfgent->{cons}; + if (not $cmeth or (grep(/^$cmeth$/,@cservers) and (not $cfgent->{termserver} or not $cfgent->{termport}))) { + return "BADCFG"; + } push @$content,"#xCAT BEGIN $node CONS\n"; push @$content,"console $node {\n"; #if ($cfgent->{cons} - my $cmeth=$cfgent->{cons}; #print $cmeth."\n"; if (grep(/^$cmeth$/,@cservers)) { push @$content," include ".$cfgent->{termserver}.";\n";