mirror of
https://github.com/ansible/awx.git
synced 2026-05-17 14:27:42 -02:30
jobtemplate execute_role is now child of admin_role
This commit is contained in:
@@ -216,6 +216,7 @@ class JobTemplate(UnifiedJobTemplate, JobOptions, ResourceMixin):
|
|||||||
execute_role = ImplicitRoleField(
|
execute_role = ImplicitRoleField(
|
||||||
role_name='Job Template Runner',
|
role_name='Job Template Runner',
|
||||||
role_description='May run the job template',
|
role_description='May run the job template',
|
||||||
|
parent_role=['admin_role'],
|
||||||
)
|
)
|
||||||
read_role = ImplicitRoleField(
|
read_role = ImplicitRoleField(
|
||||||
role_name='Job Template Runner',
|
role_name='Job Template Runner',
|
||||||
|
|||||||
@@ -93,13 +93,21 @@ class Role(CommonModelNameNotUnique):
|
|||||||
def get_absolute_url(self):
|
def get_absolute_url(self):
|
||||||
return reverse('api:role_detail', args=(self.pk,))
|
return reverse('api:role_detail', args=(self.pk,))
|
||||||
|
|
||||||
def __contains__(self, user):
|
def __contains__(self, accessor):
|
||||||
if user.__class__.__name__ == 'Team':
|
if type(accessor) == User:
|
||||||
team_type = ContentType.objects.get_for_model(user)
|
return self.ancestors.filter(members=accessor).exists()
|
||||||
roles = Role.objects.filter(content_type__pk=team_type.id,
|
elif accessor.__class__.__name__ == 'Team':
|
||||||
object_id=user.id)
|
return self.ancestors.filter(pk=accessor.member_role.id).exists()
|
||||||
|
elif type(accessor) == Role:
|
||||||
|
return self.ancestors.filter(pk=accessor).exists()
|
||||||
|
else:
|
||||||
|
accessor_type = ContentType.objects.get_for_model(accessor)
|
||||||
|
roles = Role.objects.filter(content_type__pk=accessor_type.id,
|
||||||
|
object_id=accessor.id)
|
||||||
return self.ancestors.filter(pk__in=roles).exists()
|
return self.ancestors.filter(pk__in=roles).exists()
|
||||||
return self.ancestors.filter(members=user).exists()
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
def rebuild_role_ancestor_list(self):
|
def rebuild_role_ancestor_list(self):
|
||||||
'''
|
'''
|
||||||
|
|||||||
Reference in New Issue
Block a user