You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@vcl.apache.org by fa...@apache.org on 2013/08/21 20:03:17 UTC

svn commit: r1516235 - /vcl/trunk/managementnode/lib/VCL/Module/OS/Linux.pm

Author: fapeeler
Date: Wed Aug 21 18:03:16 2013
New Revision: 1516235

URL: http://svn.apache.org/r1516235
Log:
VCL-698

added check for /home in exclude list to prevent unwanted deletation of user's /home directoy if it is located on the local disk


Modified:
    vcl/trunk/managementnode/lib/VCL/Module/OS/Linux.pm

Modified: vcl/trunk/managementnode/lib/VCL/Module/OS/Linux.pm
URL: http://svn.apache.org/viewvc/vcl/trunk/managementnode/lib/VCL/Module/OS/Linux.pm?rev=1516235&r1=1516234&r2=1516235&view=diff
==============================================================================
--- vcl/trunk/managementnode/lib/VCL/Module/OS/Linux.pm (original)
+++ vcl/trunk/managementnode/lib/VCL/Module/OS/Linux.pm Wed Aug 21 18:03:16 2013
@@ -2357,7 +2357,7 @@ sub create_user {
 	my ($useradd_exit_status, $useradd_output) = $self->execute($useradd_command);
 	
 	# Check if the output indicates that the user already exists
-	if ($useradd_output && grep(/already exists/, @$useradd_output)) {
+	if ($useradd_output && grep(/exists/, @$useradd_output)) {
 		if (!$self->delete_user($user_login_id)) {
 			notify($ERRORS{'WARNING'}, 0, "failed to add user '$user_login_id' to $computer_node_name, user with same name already exists and could not be deleted");
 			return;
@@ -2498,8 +2498,13 @@ sub delete_user {
 	my $userdel_command = "/usr/sbin/userdel";
 	
 	if ($home_directory_on_local_disk) {
-		notify($ERRORS{'DEBUG'}, 0, "home directory will be deleted: $home_directory_path");
-		$userdel_command .= ' -r -f';
+		# Fetch exclude_list
+   	my @exclude_list = $self->get_exclude_list();
+
+   	if (!(grep(/home/, @exclude_list))) {
+			notify($ERRORS{'DEBUG'}, 0, "home directory will be deleted: $home_directory_path");
+			$userdel_command .= ' -r -f';
+   	}
 	}
 	$userdel_command .= " $username";