From ca86b104efbea168ee59499464a30782c43e0cc6 Mon Sep 17 00:00:00 2001 From: Sandrine Avakian Date: Tue, 27 Nov 2012 16:22:09 +0100 Subject: [PATCH] Bug fixes to add a federated user. --- sfa/senslab/LDAPapi.py | 21 +++++++++++++++------ sfa/senslab/slabdriver.py | 4 ++-- sfa/senslab/slabslices.py | 26 +++++++++++++------------- 3 files changed, 30 insertions(+), 21 deletions(-) diff --git a/sfa/senslab/LDAPapi.py b/sfa/senslab/LDAPapi.py index e78eec89..0328dbcd 100644 --- a/sfa/senslab/LDAPapi.py +++ b/sfa/senslab/LDAPapi.py @@ -334,13 +334,22 @@ class LDAPapi : "organizationalPerson", "posixAccount", \ "shadowAccount", "systemQuotas", \ "ldapPublicKey"] - - attrs['givenName'] = str(record['first_name']).lower().capitalize() - attrs['sn'] = str(record['last_name']).lower().capitalize() - attrs['cn'] = attrs['givenName'] + ' ' + attrs['sn'] - attrs['gecos'] = attrs['givenName'] + ' ' + attrs['sn'] + + attrs['uid'] = self.generate_login(record) - + try: + attrs['givenName'] = str(record['first_name']).lower().capitalize() + attrs['sn'] = str(record['last_name']).lower().capitalize() + attrs['cn'] = attrs['givenName'] + ' ' + attrs['sn'] + attrs['gecos'] = attrs['givenName'] + ' ' + attrs['sn'] + + except: + attrs['givenName'] = attrs['uid'] + attrs['sn'] = attrs['uid'] + attrs['cn'] = attrs['uid'] + attrs['gecos'] = attrs['uid'] + + attrs['quota'] = self.ldapUserQuotaNFS attrs['homeDirectory'] = self.ldapUserHomePath + attrs['uid'] attrs['loginShell'] = self.ldapShell diff --git a/sfa/senslab/slabdriver.py b/sfa/senslab/slabdriver.py index 7b5d25bb..64b1ba8a 100644 --- a/sfa/senslab/slabdriver.py +++ b/sfa/senslab/slabdriver.py @@ -859,8 +859,8 @@ class SlabDriver(Driver): login, fixed_slicerec_dict = \ __get_slice_records(slice_filter, slice_filter_type) logger.debug(" SLABDRIVER \tGetSlices login %s \ - slice record %s slice_filter %s"\ - %(login, fixed_slicerec_dict,slice_filter)) + slice record %s slice_filter %s slice_filter_type %s "\ + %(login, fixed_slicerec_dict,slice_filter, slice_filter_type)) #Now we have the slice record fixed_slicerec_dict, get the diff --git a/sfa/senslab/slabslices.py b/sfa/senslab/slabslices.py index dd22f530..3fe82b4b 100644 --- a/sfa/senslab/slabslices.py +++ b/sfa/senslab/slabslices.py @@ -518,19 +518,19 @@ class SlabSlices: for added_user_hrn in added_user_hrns: added_user = users_dict[added_user_hrn] #hrn, type = urn_to_hrn(added_user['urn']) - try: - person = { - - 'first_name': added_user['first_name'], - 'last_name': added_user['last_name'], - 'person_id': added_user['person_id'], - 'peer_person_id': None, - 'keys': added_user['keys'][0], - 'key_ids': added_user.get('key_ids', []), - - } - except KeyError: - pass + + person = {} + person['peer_person_id'] = None + k_list = ['first_name','last_name','person_id'] + for k in k_list: + if k in added_user: + person[k] = added_user[k] + + person['keys'] = added_user['keys'][0] + person['key_ids'] = added_user.get('key_ids', []) + + + person['person_id'] = self.driver.AddPerson(person) if peer: -- 2.47.0