Author: fapeeler
Date: Thu Nov  7 19:24:49 2013
New Revision: 1539772

URL: http://svn.apache.org/r1539772
Log:
VCL-683

retired _sshd_status


Modified:
    vcl/trunk/managementnode/lib/VCL/Module/Provisioning/vbox.pm
    vcl/trunk/managementnode/lib/VCL/utils.pm

Modified: vcl/trunk/managementnode/lib/VCL/Module/Provisioning/vbox.pm
URL: 
http://svn.apache.org/viewvc/vcl/trunk/managementnode/lib/VCL/Module/Provisioning/vbox.pm?rev=1539772&r1=1539771&r2=1539772&view=diff
==============================================================================
--- vcl/trunk/managementnode/lib/VCL/Module/Provisioning/vbox.pm (original)
+++ vcl/trunk/managementnode/lib/VCL/Module/Provisioning/vbox.pm Thu Nov  7 
19:24:49 2013
@@ -964,11 +964,29 @@ sub node_status {
         } ## end foreach my $l (@{$sshcmd[1]})
         notify($ERRORS{'OK'}, $log, "$vmclient_shortname vmstate reports 
$status{vmstate}");
 
-        #can I ssh into it
-        my $sshd = _sshd_status($vmclient_shortname, $requestedimagename, 
$image_os_type);
-
-        #is it running the requested image
-        if ($sshd eq "on") {
+                       # Check if $self->os is defined, it may not be if 
xCAT.pm object is created from a monitoring script
+                       my $os = $self->os(0);
+                       if (!$os) {
+                               my $data = 
$self->create_datastructure_object({computer_identifier => $computer_node_name, 
image_identifier => $requestedimagename});
+                               if (!$data) {
+                                       notify($ERRORS{'WARNING'}, 0, "unable 
to determine status of $computer_node_name, \$self->os is not defined, failed 
to create DataStructure object for image set as image: '$requestedimagename'");
+                                       return;
+                          }
+                        
+                       # Set the data, create_os_object copies the data from 
the calling object to the new OS object
+                       $self->set_data($data);
+       
+                       my $image_os_module_perl_package = 
$data->get_image_os_module_perl_package();
+                               $os = 
$self->create_os_object($image_os_module_perl_package);
+                               if (!$os) {
+                               notify($ERRORS{'WARNING'}, 0, "unable to 
determine status of $computer_node_name, failed to create OS object for image 
set as imagename: 'requestedimagename'");
+                               return;
+                               }
+                       }
+
+                       # Check if the node is responding to SSH
+                       my $ssh_responding = $os->is_ssh_responding();
+                  if ($ssh_responding) {
 
                 $status{ssh} = 1;
 

Modified: vcl/trunk/managementnode/lib/VCL/utils.pm
URL: 
http://svn.apache.org/viewvc/vcl/trunk/managementnode/lib/VCL/utils.pm?rev=1539772&r1=1539771&r2=1539772&view=diff
==============================================================================
--- vcl/trunk/managementnode/lib/VCL/utils.pm (original)
+++ vcl/trunk/managementnode/lib/VCL/utils.pm Thu Nov  7 19:24:49 2013
@@ -82,7 +82,6 @@ our @ISA = qw(Exporter);
 
 our @EXPORT = qw(
   _pingnode
-  _sshd_status
   check_blockrequest_time
   check_endtimenotice_interval
   check_ssh
@@ -2054,43 +2053,6 @@ sub check_ssh {
 
 #/////////////////////////////////////////////////////////////////////////////
 
-=head2 _sshd_status
-
- Parameters  : $node, $imagename, $log
- Returns     : on or off
- Description : actually logs into remote node
-=cut
-
-sub _sshd_status {
-       my ($node, $imagename,$image_os_type, $log) = @_;
-       my ($package, $filename, $line, $sub) = caller(0);
-       $log = 0 if (!defined($log));
-       notify($ERRORS{'WARNING'}, $log, "node is not defined") if 
(!(defined($node)));
-
-       if (!nmap_port($node, 22)) {
-               return "off";
-       }
-
-       my $identity_keys = get_management_node_info()->{keys};
-
-       my @sshcmd = run_ssh_command($node, $identity_keys, "uname -s", "root");
-       
-       return "off" if (!defined($sshcmd[0]) || !defined($sshcmd[1]) || 
$sshcmd[0] == 1);
-       foreach my $l (@{$sshcmd[1]}) {
-               if ($l =~ /^Warning:/) {
-                       #if 
(VCL::Module::Provisioning::xCAT::makesshgkh($node)) {
-                       #}
-               }
-               return "off" if ($l =~ /noping/);
-               return "off" if ($l =~ /No route to host/);
-               return "off" if ($l =~ /Connection refused/);
-               return "off" if ($l =~ /Permission denied/);
-       } ## end foreach my $l (@{$sshcmd[1]})
-       return "on";
-} ## end sub _sshd_status
-
-#/////////////////////////////////////////////////////////////////////////////
-
 =head2 nmap_port
 
  Parameters  : $hostname,n $port


Reply via email to