Author: fapeeler
Date: Thu Jun 19 20:45:16 2014
New Revision: 1604031

URL: http://svn.apache.org/r1604031
Log:
VCL-754

Updated manage_server routine to use reservation users from data structure

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

Modified: vcl/trunk/managementnode/lib/VCL/Module/OS.pm
URL: 
http://svn.apache.org/viewvc/vcl/trunk/managementnode/lib/VCL/Module/OS.pm?rev=1604031&r1=1604030&r2=1604031&view=diff
==============================================================================
--- vcl/trunk/managementnode/lib/VCL/Module/OS.pm (original)
+++ vcl/trunk/managementnode/lib/VCL/Module/OS.pm Thu Jun 19 20:45:16 2014
@@ -2522,6 +2522,7 @@ sub manage_server_access {
        my $user_id_owner                          = $self->data->get_user_id();
        my $image_os_type                                 = 
$self->data->get_image_os_type();
        my $request_laststate_name      = 
$self->data->get_request_laststate_name();
+       my $reservation_users                     = 
$self->data->get_reservation_users();
 
        # Build list of users.
        # If in admin group set admin flag
@@ -2529,52 +2530,7 @@ sub manage_server_access {
        # Check if user is in reserverationaccounts table, add user if needed
        # Check if user exists on server, add if needed
        
-       my @userlist_admin;
-       my @userlist_login;
-       my %user_hash;
-
-       if ($server_request_admingroupid) {
-               @userlist_admin = 
getusergroupmembers($server_request_admingroupid);
-       }
-       if ($server_request_logingroupid) {
-               @userlist_login = 
getusergroupmembers($server_request_logingroupid);
-       }       
-       
-       notify($ERRORS{'OK'}, 0, 
"request_laststate_name=$request_laststate_name");     
-       notify($ERRORS{'OK'}, 0, " admin login list= @userlist_admin");
-       notify($ERRORS{'OK'}, 0, " nonadmin login list= @userlist_login");
-       
-       if (scalar @userlist_admin > 0) {
-               foreach my $str (@userlist_admin) {
-                       my ($username,$uid,$vcl_user_id) = 0;
-                       ($username,$uid,$vcl_user_id) = split(/:/, $str);
-                       my ($correct_username, $user_domain) = split /@/, 
$username;
-         $user_hash{$vcl_user_id}{"user_info"} = get_user_info($vcl_user_id);
-         $user_hash{$vcl_user_id}{"username"} = $correct_username;
-                       $user_hash{$vcl_user_id}{"uid"} = $uid;
-                       $user_hash{$vcl_user_id}{"vcl_user_id"} = $vcl_user_id;
-                       $user_hash{$vcl_user_id}{"rootaccess"} = 1;
-                       notify($ERRORS{'DEBUG'}, 0, "adding admin vcl_user_id= 
$vcl_user_id uid= $uid for $username ");
-               }
-       }               
-       if (scalar @userlist_login > 0) {
-               foreach my $str (@userlist_login) {
-                       my ($username, $uid,$vcl_user_id) = 0;
-                       ($username, $uid,$vcl_user_id) = split(/:/, $str);
-                       my ($correct_username, $user_domain) = split /@/, 
$username;
-                       if (!exists($user_hash{$vcl_user_id})) {
-                               $user_hash{$vcl_user_id}{"user_info"} = 
get_user_info($vcl_user_id);
-                               $user_hash{$vcl_user_id}{"username"} = 
$correct_username;
-                               $user_hash{$vcl_user_id}{"uid"} = $uid;
-                               $user_hash{$vcl_user_id}{"vcl_user_id"} = 
$vcl_user_id;
-                               $user_hash{$vcl_user_id}{"rootaccess"} = 2;
-                               notify($ERRORS{'DEBUG'}, 0, "adding 
$vcl_user_id for $username ");
-                       }
-                       else {
-                               notify($ERRORS{'OK'}, 0, "$vcl_user_id for 
$username exists in user_hash, skipping");
-                       }
-               }
-       }       
+       my %user_hash = %{$reservation_users};
 
        # Collect users in reservationaccounts table
        my %res_accounts = get_reservation_accounts($reservation_id);
@@ -2589,7 +2545,9 @@ sub manage_server_access {
                }
                my $standalone = $user_hash{$userid}{user_info}{STANDALONE};
 
-               if(!$self->user_exists($user_hash{$userid}{username})){
+               notify($ERRORS{'OK'}, 0, " userid= $userid unityid= 
$user_hash{$userid}{unityid}");
+
+               if(!$self->user_exists($user_hash{$userid}{unityid})){
                        delete($res_accounts{$userid});
                }
                
@@ -2620,8 +2578,8 @@ sub manage_server_access {
                        }
        
                        # Create user on the OS
-                       
if($self->create_user($user_hash{$userid}{username},$user_hash{$userid}{passwd},$user_hash{$userid}{uid},$user_hash{$userid}{rootaccess},$standalone,$user_hash{$userid}{user_info}{user_sshPublicKeys}))
 {
-                               notify($ERRORS{'OK'}, 0, "Successfully created 
user $user_hash{$userid}{username} on $computer_node_name");
+                       
if($self->create_user($user_hash{$userid}{unityid},$user_hash{$userid}{passwd},$user_hash{$userid}{uid},$user_hash{$userid}{rootaccess},$standalone,$user_hash{$userid}{user_info}{user_sshPublicKeys}))
 {
+                               notify($ERRORS{'OK'}, 0, "Successfully created 
user $user_hash{$userid}{unityid} on $computer_node_name");
                        }
                        else {
                                notify($ERRORS{'WARNING'}, 0, "Failed to create 
user on $computer_node_name ");


Reply via email to