From ac5bc2aaba63e639acbd05b064becd06a73e592b Mon Sep 17 00:00:00 2001 From: Akita Noek Date: Mon, 16 May 2016 10:49:34 -0400 Subject: [PATCH 1/2] Fixed duplicate entries in active_roles (again) #1692 --- awx/api/serializers.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/awx/api/serializers.py b/awx/api/serializers.py index d40b0e0b9d..31dd96469b 100644 --- a/awx/api/serializers.py +++ b/awx/api/serializers.py @@ -1573,12 +1573,12 @@ class ResourceAccessListElementSerializer(UserSerializer): .exclude(id__in=indirect_team_roles) ret['summary_fields']['direct_access'] \ - = [format_role_perm(r) for r in direct_access_roles] \ - + [format_team_role_perm(r, direct_permissive_role_ids) for r in direct_team_roles] + = [format_role_perm(r) for r in direct_access_roles.distinct()] \ + + [format_team_role_perm(r, direct_permissive_role_ids) for r in direct_team_roles.distinct()] ret['summary_fields']['indirect_access'] \ - = [format_role_perm(r) for r in indirect_access_roles] \ - + [format_team_role_perm(r, all_permissive_role_ids) for r in indirect_team_roles] + = [format_role_perm(r) for r in indirect_access_roles.distinct()] \ + + [format_team_role_perm(r, all_permissive_role_ids) for r in indirect_team_roles.distinct()] return ret From 06eb13a104931ba259dee58a3fd0b1ce5cc512b1 Mon Sep 17 00:00:00 2001 From: Akita Noek Date: Mon, 16 May 2016 10:52:41 -0400 Subject: [PATCH 2/2] Fixed duplicate users in access_list Uhg. --- awx/api/generics.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/awx/api/generics.py b/awx/api/generics.py index 946b7264c7..fe1ecd5659 100644 --- a/awx/api/generics.py +++ b/awx/api/generics.py @@ -508,4 +508,4 @@ class ResourceAccessList(ListAPIView): ancestors = set() for r in roles: ancestors.update(set(r.ancestors.all())) - return User.objects.filter(roles__in=list(ancestors)) + return User.objects.filter(roles__in=list(ancestors)).distinct()