Author: arkurth
Date: Fri Sep 2 18:30:42 2011
New Revision: 1164666
URL: http://svn.apache.org/viewvc?rev=1164666&view=rev
Log:
VCL-503
Changed timeout value in OS.pm::is_ssh_responding from 15 to 30 seconds.
Changed value in Windows.pm::user_logged_in to 60 seconds.
Other
Updated Windows.pm::post_load to only call logoff_users if wait_for_logoff
returns false.
Removed unnecessary call to is_ssh_responding from get_system32_path.
Added check for a warning that is displayed if PAE is enabled in
disable_hibernation.
Modified:
incubator/vcl/trunk/managementnode/lib/VCL/Module/OS.pm
incubator/vcl/trunk/managementnode/lib/VCL/Module/OS/Windows.pm
Modified: incubator/vcl/trunk/managementnode/lib/VCL/Module/OS.pm
URL:
http://svn.apache.org/viewvc/incubator/vcl/trunk/managementnode/lib/VCL/Module/OS.pm?rev=1164666&r1=1164665&r2=1164666&view=diff
==============================================================================
--- incubator/vcl/trunk/managementnode/lib/VCL/Module/OS.pm (original)
+++ incubator/vcl/trunk/managementnode/lib/VCL/Module/OS.pm Fri Sep 2 18:30:42
2011
@@ -471,7 +471,7 @@ sub is_ssh_responding {
command => "echo testing ssh on $computer_node_name",
max_attempts => $max_attempts,
output_level => 0,
- timeout_seconds => 15,
+ timeout_seconds => 30,
});
# The exit status will be 0 if the command succeeded
@@ -1989,4 +1989,4 @@ __END__
L<http://cwiki.apache.org/VCL/>
-=cut
+=cut
\ No newline at end of file
Modified: incubator/vcl/trunk/managementnode/lib/VCL/Module/OS/Windows.pm
URL:
http://svn.apache.org/viewvc/incubator/vcl/trunk/managementnode/lib/VCL/Module/OS/Windows.pm?rev=1164666&r1=1164665&r2=1164666&view=diff
==============================================================================
--- incubator/vcl/trunk/managementnode/lib/VCL/Module/OS/Windows.pm (original)
+++ incubator/vcl/trunk/managementnode/lib/VCL/Module/OS/Windows.pm Fri Sep 2
18:30:42 2011
@@ -621,19 +621,10 @@ sub post_load {
if (!$self->wait_for_logoff('root', 2)) {
notify($ERRORS{'WARNING'}, 0, "root account never logged off");
- }
-
-=item *
-
- Log off all currently logged on users
-
- Do this in case autoadminlogon was enabled during the load process and the
user
- account was not properly logged off.
-
-=cut
-
- if (!$self->logoff_users()) {
- notify($ERRORS{'WARNING'}, 0, "failed to log off all currently
logged in users");
+
+ if (!$self->logoff_users()) {
+ notify($ERRORS{'WARNING'}, 0, "failed to log off all
currently logged in users");
+ }
}
=item *
@@ -7823,13 +7814,12 @@ sub get_system32_path {
my $computer_name = $self->data->get_computer_short_name();
- # Make sure SSH is responding
- if (!$self->is_ssh_responding()) {
- notify($ERRORS{'WARNING'}, 0, "unable to determine System32
path to use for $computer_name, computer is not responding to SSH");
- return;
+ my $is_64_bit = $self->is_64_bit();
+ if (!defined($is_64_bit)) {
+ notify($ERRORS{'DEBUG'}, 0, "failed to determine the
architecture of the Windows OS installed on $computer_name, unable to determine
correct system32 path");
+ return;
}
-
- if ($self->is_64_bit()) {
+ elsif ($is_64_bit) {
$self->{SYSTEM32_PATH} = 'C:/Windows/Sysnative';
notify($ERRORS{'DEBUG'}, 0, "64-bit Windows OS installed on
$computer_name, using $self->{SYSTEM32_PATH}");
}
@@ -8043,7 +8033,7 @@ sub user_logged_in {
# Run qwinsta.exe to display terminal session information
# Set command timeout argument because this command occasionally hangs
- my ($exit_status, $output) = run_ssh_command($computer_node_name,
$management_node_keys, "$system32_path/qwinsta.exe", '', '', 1, 20);
+ my ($exit_status, $output) = run_ssh_command($computer_node_name,
$management_node_keys, "$system32_path/qwinsta.exe", '', '', 1, 60);
if ($exit_status > 0) {
notify($ERRORS{'WARNING'}, 0, "failed to run qwinsta.exe on
$computer_node_name, exit status: $exit_status, output:\n@{$output}");
return;
@@ -8943,6 +8933,13 @@ sub disable_hibernation {
if (defined($powercfg_exit_status) && $powercfg_exit_status == 0) {
notify($ERRORS{'OK'}, 0, "disabled hibernation");
}
+ elsif (grep(/PAE mode/i, @$powercfg_output)) {
+ # The following may be displayed:
+ # Hibernation failed with the following error: The request
is not supported.
+ # The following items are preventing hibernation on this
system.
+ # The system is running in PAE mode, and hibernation is not
allowed in PAE mode.
+ notify($ERRORS{'OK'}, 0, "hibernation NOT disabled because
$computer_node_name is running in PAE mode");
+ }
elsif ($powercfg_exit_status) {
notify($ERRORS{'WARNING'}, 0, "failed to disable hibernation,
exit status: $powercfg_exit_status, output:\n" . join("\n", @$powercfg_output));
return;
@@ -9703,8 +9700,10 @@ sub sanitize_files {
}
# Get the file path arguments, add the node configuration directory
+ my $node_configuration_directory =
$self->get_node_configuration_directory();
my @file_paths = @_;
- push @file_paths, $self->get_node_configuration_directory();
+ push @file_paths, "$node_configuration_directory/Scripts";
+ push @file_paths, "$node_configuration_directory/Logs";
# Loop through each file path, remove the Windows root password from
each
my $error_occurred = 0;