diff --git a/hobo/agent/authentic2/provisionning.py b/hobo/agent/authentic2/provisionning.py index b178cf3..dd89ef7 100644 --- a/hobo/agent/authentic2/provisionning.py +++ b/hobo/agent/authentic2/provisionning.py @@ -163,7 +163,11 @@ class Provisionning(threading.local): user_roles = {} parents = {} for rp in RoleParenting.objects.all(): - parents.setdefault(rp.child.id, []).append(rp.parent.id) + # broken parent/child relationship can happen + try: + parents.setdefault(rp.child.id, []).append(rp.parent.id) + except Role.DoesNotExist: + pass Through = Role.members.through qs = Through.objects.filter(role__members__in=users).values_list('user_id', 'role_id') for u_id, r_id in qs: