Author: fapeeler
Date: Tue Jul 21 18:14:16 2009
New Revision: 796423

URL: http://svn.apache.org/viewvc?rev=796423&view=rev
Log:
VCL-187

continued improvements on the Ubuntu.pm

typo in grant_access routine

extended reserve routine to add $user_name to /etc/sudoers file



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

Modified: incubator/vcl/trunk/managementnode/lib/VCL/Module/OS/Linux/Ubuntu.pm
URL: 
http://svn.apache.org/viewvc/incubator/vcl/trunk/managementnode/lib/VCL/Module/OS/Linux/Ubuntu.pm?rev=796423&r1=796422&r2=796423&view=diff
==============================================================================
--- incubator/vcl/trunk/managementnode/lib/VCL/Module/OS/Linux/Ubuntu.pm 
(original)
+++ incubator/vcl/trunk/managementnode/lib/VCL/Module/OS/Linux/Ubuntu.pm Tue 
Jul 21 18:14:16 2009
@@ -284,7 +284,7 @@
        my $image_identity = $self->data->get_image_identity;
        my $reservation_password = $self->data->get_reservation_password();
 
-       my $useradd_string = "/usr/sbin/useradd -d /home/$user_name -m -g users 
$user_name";
+       my $useradd_string = "/usr/sbin/useradd -d /home/$user_name -m -g admin 
$user_name";
 
        my @sshcmd = run_ssh_command($computer_node_name, $image_identity, 
$useradd_string, "root");
        foreach my $l (@{$sshcmd[1]}) {
@@ -308,6 +308,25 @@
                notify($ERRORS{'DEBUG'}, 0, "Updated the user password .... L 
is $l");
        }
 
+       #FIXME: This needs to pull from imagemeta data rootaccess - if 
rootaccess==1 then set
+       # Add to sudoers file
+       #clear user from sudoers file
+       my $clear_cmd = "perl -pi -e 's/^$user_name .*\n//' /etc/sudoers";
+       if(run_ssh_command($computer_node_name, $image_identity, $clear_cmd, 
"root")) {
+               notify($ERRORS{'DEBUG'}, 0, "cleared $user_name from 
/etc/sudoers");
+       }
+       else {
+               notify($ERRORS{'CRITICAL'}, 0, "failed to clear $user_name from 
/etc/sudoers");
+       }
+       my $sudoers_cmd = "echo \"$user_name ALL= NOPASSWD: ALL\" >> 
/etc/sudoers";
+       if(run_ssh_command($computer_node_name, $image_identity, $sudoers_cmd, 
"root")) {
+               notify($ERRORS{'DEBUG'}, 0, "added $user_name to /etc/sudoers");
+       }
+       else {
+               notify($ERRORS{'CRITICAL'}, 0, "failed to add $user_name to 
/etc/sudoers");
+       }
+
+
        return 1;
 }
 
@@ -324,7 +343,7 @@
 
        notify($ERRORS{'OK'}, 0, "In grant_access routine 
$user,$computer_node_name");
        my @sshcmd;
-       my $clear_extsshd = "perl -pi -e \'s/^AllowUsers .*\n//' 
/etc/ssh/external_sshd_config";
+       my $clear_extsshd = "perl -pi -e 's/^AllowUsers .*\n//' 
/etc/ssh/external_sshd_config";
        if(run_ssh_command($computer_node_name, $identity, $clear_extsshd, 
"root")) {
                notify($ERRORS{'DEBUG'}, 0, "cleared AllowUsers directive from 
external_sshd_config");
        }


Reply via email to