From 306ee139a4dcb72463c222cc17afa1d20c9daa3a Mon Sep 17 00:00:00 2001 From: Thierry Parmentelat Date: Fri, 3 Feb 2012 11:56:31 +0100 Subject: [PATCH] start to deal with plc roles --- sfa/plc/pldriver.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/sfa/plc/pldriver.py b/sfa/plc/pldriver.py index 2c84f987..b9db9b29 100644 --- a/sfa/plc/pldriver.py +++ b/sfa/plc/pldriver.py @@ -110,7 +110,15 @@ class PlDriver (Driver): self.shell.AddPersonToSite(pointer, login_base) # What roles should this user have? - self.shell.AddRoleToPerson('user', pointer) + roles=[] + if 'roles' in sfa_record: + # if specified in xml, but only low-level roles + roles = [ role for role in sfa_record['roles'] if role in ['user','tech'] ] + # at least user if no other cluse could be found + if not roles: + roles=['user'] + for role in roles: + self.shell.AddRoleToPerson(role, pointer) # Add the user's key if pub_key: self.shell.AddPersonKey(pointer, {'key_type' : 'ssh', 'key' : pub_key}) -- 2.45.2