@@ -817,7 +817,7 @@ def create_initial_users_for_saas(self, initial_users):
817817 for primary_user in primary_users :
818818 self .logger .info ("" )
819819 try :
820- self .logger .info (f"Syncing primary user { primary_user ['email' ]} " )
820+ self .logger .info (f"Syncing primary user with email { primary_user ['email' ]} " )
821821 self .create_initial_user_for_saas (primary_user , "PRIMARY" )
822822 completed .append (primary_user )
823823 self .logger .info (f"Completed sync of primary user { primary_user ['email' ]} " )
@@ -829,7 +829,7 @@ def create_initial_users_for_saas(self, initial_users):
829829 self .logger .info ("" )
830830 try :
831831 self .logger .info ("" )
832- self .logger .info (f"Syncing secondary user { secondary_user ['email' ]} " )
832+ self .logger .info (f"Syncing secondary user with email { secondary_user ['email' ]} " )
833833 self .create_initial_user_for_saas (secondary_user , "SECONDARY" )
834834 completed .append (secondary_user )
835835 self .logger .info (f"Completed sync of secondary user { secondary_user ['email' ]} " )
@@ -855,8 +855,13 @@ def create_initial_user_for_saas(self, user, user_type):
855855 user_given_name = user ["given_name" ]
856856 user_family_name = user ["family_name" ]
857857
858- user_id = user_email
859- username = user_email
858+ if "id" in user :
859+ user_id = user ["id" ]
860+ else :
861+ # default to email if no id provided
862+ user_id = user_email
863+
864+ username = user_id
860865 # display_name = re.search('^([^@]+)@', user_email).group(1) # local part of the email
861866 display_name = f"{ user_given_name } { user_family_name } "
862867
@@ -874,6 +879,7 @@ def create_initial_user_for_saas(self, user, user_type):
874879 }
875880 is_workspace_admin = True
876881 application_role = "ADMIN"
882+ facilities_role = "PREMIUM"
877883 # TODO: check which security groups primary users should be members of
878884 manage_security_groups = ["MAXADMIN" ]
879885 elif user_type == "SECONDARY" :
@@ -889,6 +895,7 @@ def create_initial_user_for_saas(self, user, user_type):
889895 }
890896 is_workspace_admin = False
891897 application_role = "USER"
898+ facilities_role = "BASE"
892899 # TODO: check which security groups secondary users should be members of
893900 manage_security_groups = []
894901 else :
@@ -906,6 +913,8 @@ def create_initial_user_for_saas(self, user, user_type):
906913 "primary" : True
907914 }
908915 ],
916+ "phoneNumbers" : [],
917+ "addresses" : [],
909918 "displayName" : display_name ,
910919 "issuer" : "local" ,
911920 "permissions" : permissions ,
@@ -923,6 +932,8 @@ def create_initial_user_for_saas(self, user, user_type):
923932 if mas_application_id == "manage" :
924933 # special case for manage; role is always "MANAGEUSER"
925934 role = "MANAGEUSER"
935+ if mas_application_id == "facilities" :
936+ role = facilities_role
926937 else :
927938 # otherwise grant the user the appropriate role for their user_type
928939 role = application_role
0 commit comments