in src/pkg/qs_user_gov.py [0:0]
def apply_user_governance(user):
"""
- Add/Update users in QuickSight.
- if the namespace does not exist, create it
- if user does not exist, register the user
- update the user role.
- if user role was downgraded - exit.
- otherwise,
- if the user's group doesnt exist, create it
- assign user to its groups
"""
create_if_not_exists_namespace(user)
register_if_not_exists_user(user)
if update_role(user):
if user.qs_groups:
create_if_not_exists_groups(user)
update_memberships(user)