mirror of
https://github.com/ansible/awx.git
synced 2026-05-08 01:47:35 -02:30
Merge pull request #1968 from wwitzel3/issue-1938
adds related `roles` for InventoryScript
This commit is contained in:
@@ -1261,6 +1261,9 @@ class CustomInventoryScriptSerializer(BaseSerializer):
|
|||||||
|
|
||||||
def get_related(self, obj):
|
def get_related(self, obj):
|
||||||
res = super(CustomInventoryScriptSerializer, self).get_related(obj)
|
res = super(CustomInventoryScriptSerializer, self).get_related(obj)
|
||||||
|
res.update(dict(
|
||||||
|
roles = reverse('api:inventory_script_roles_list', args=(obj.pk,)),
|
||||||
|
))
|
||||||
|
|
||||||
if obj.organization:
|
if obj.organization:
|
||||||
res['organization'] = reverse('api:organization_detail', args=(obj.organization.pk,))
|
res['organization'] = reverse('api:organization_detail', args=(obj.organization.pk,))
|
||||||
|
|||||||
@@ -155,6 +155,7 @@ inventory_update_urls = patterns('awx.api.views',
|
|||||||
inventory_script_urls = patterns('awx.api.views',
|
inventory_script_urls = patterns('awx.api.views',
|
||||||
url(r'^$', 'inventory_script_list'),
|
url(r'^$', 'inventory_script_list'),
|
||||||
url(r'^(?P<pk>[0-9]+)/$', 'inventory_script_detail'),
|
url(r'^(?P<pk>[0-9]+)/$', 'inventory_script_detail'),
|
||||||
|
url(r'^(?P<pk>[0-9]+)/roles/$', 'inventory_script_roles_list'),
|
||||||
)
|
)
|
||||||
|
|
||||||
credential_urls = patterns('awx.api.views',
|
credential_urls = patterns('awx.api.views',
|
||||||
|
|||||||
@@ -813,7 +813,7 @@ class OrganizationRolesList(SubListAPIView):
|
|||||||
def get_queryset(self):
|
def get_queryset(self):
|
||||||
po = self.get_parent_object()
|
po = self.get_parent_object()
|
||||||
content_type = ContentType.objects.get_for_model(self.parent_model)
|
content_type = ContentType.objects.get_for_model(self.parent_model)
|
||||||
return Role.objects.filter(content_type=content_type, object_id=po.pk).all()
|
return Role.objects.filter(content_type=content_type, object_id=po.pk)
|
||||||
|
|
||||||
class TeamList(ListCreateAPIView):
|
class TeamList(ListCreateAPIView):
|
||||||
|
|
||||||
@@ -1090,7 +1090,7 @@ class ProjectRolesList(SubListAPIView):
|
|||||||
def get_queryset(self):
|
def get_queryset(self):
|
||||||
po = self.get_parent_object()
|
po = self.get_parent_object()
|
||||||
content_type = ContentType.objects.get_for_model(self.parent_model)
|
content_type = ContentType.objects.get_for_model(self.parent_model)
|
||||||
return Role.objects.filter(content_type=content_type, object_id=po.pk).all()
|
return Role.objects.filter(content_type=content_type, object_id=po.pk)
|
||||||
|
|
||||||
class UserList(ListCreateAPIView):
|
class UserList(ListCreateAPIView):
|
||||||
|
|
||||||
@@ -1402,7 +1402,7 @@ class CredentialRolesList(SubListAPIView):
|
|||||||
def get_queryset(self):
|
def get_queryset(self):
|
||||||
po = self.get_parent_object()
|
po = self.get_parent_object()
|
||||||
content_type = ContentType.objects.get_for_model(self.parent_model)
|
content_type = ContentType.objects.get_for_model(self.parent_model)
|
||||||
return Role.objects.filter(content_type=content_type, object_id=po.pk).all()
|
return Role.objects.filter(content_type=content_type, object_id=po.pk)
|
||||||
|
|
||||||
class InventoryScriptList(ListCreateAPIView):
|
class InventoryScriptList(ListCreateAPIView):
|
||||||
|
|
||||||
@@ -1424,6 +1424,18 @@ class InventoryScriptDetail(RetrieveUpdateDestroyAPIView):
|
|||||||
inv_src.save()
|
inv_src.save()
|
||||||
return super(InventoryScriptDetail, self).destroy(request, *args, **kwargs)
|
return super(InventoryScriptDetail, self).destroy(request, *args, **kwargs)
|
||||||
|
|
||||||
|
class InventoryScriptRolesList(SubListAPIView):
|
||||||
|
|
||||||
|
model = Role
|
||||||
|
serializer_class = RoleSerializer
|
||||||
|
parent_model = CustomInventoryScript
|
||||||
|
new_in_300 = True
|
||||||
|
|
||||||
|
def get_queryset(self):
|
||||||
|
po = self.get_parent_object()
|
||||||
|
content_type = ContentType.objects.get_for_model(self.parent_model)
|
||||||
|
return Role.objects.filter(content_type=content_type, object_id=po.pk)
|
||||||
|
|
||||||
class InventoryList(ListCreateAPIView):
|
class InventoryList(ListCreateAPIView):
|
||||||
|
|
||||||
model = Inventory
|
model = Inventory
|
||||||
@@ -1484,7 +1496,7 @@ class InventoryRolesList(SubListAPIView):
|
|||||||
def get_queryset(self):
|
def get_queryset(self):
|
||||||
po = self.get_parent_object()
|
po = self.get_parent_object()
|
||||||
content_type = ContentType.objects.get_for_model(self.parent_model)
|
content_type = ContentType.objects.get_for_model(self.parent_model)
|
||||||
return Role.objects.filter(content_type=content_type, object_id=po.pk).all()
|
return Role.objects.filter(content_type=content_type, object_id=po.pk)
|
||||||
|
|
||||||
class InventoryJobTemplateList(SubListAPIView):
|
class InventoryJobTemplateList(SubListAPIView):
|
||||||
|
|
||||||
@@ -1831,7 +1843,7 @@ class GroupRolesList(SubListAPIView):
|
|||||||
def get_queryset(self):
|
def get_queryset(self):
|
||||||
po = self.get_parent_object()
|
po = self.get_parent_object()
|
||||||
content_type = ContentType.objects.get_for_model(self.parent_model)
|
content_type = ContentType.objects.get_for_model(self.parent_model)
|
||||||
return Role.objects.filter(content_type=content_type, object_id=po.pk).all()
|
return Role.objects.filter(content_type=content_type, object_id=po.pk)
|
||||||
|
|
||||||
|
|
||||||
class InventoryGroupsList(SubListCreateAttachDetachAPIView):
|
class InventoryGroupsList(SubListCreateAttachDetachAPIView):
|
||||||
@@ -2561,7 +2573,7 @@ class JobTemplateRolesList(SubListAPIView):
|
|||||||
def get_queryset(self):
|
def get_queryset(self):
|
||||||
po = self.get_parent_object()
|
po = self.get_parent_object()
|
||||||
content_type = ContentType.objects.get_for_model(self.parent_model)
|
content_type = ContentType.objects.get_for_model(self.parent_model)
|
||||||
return Role.objects.filter(content_type=content_type, object_id=po.pk).all()
|
return Role.objects.filter(content_type=content_type, object_id=po.pk)
|
||||||
|
|
||||||
class SystemJobTemplateList(ListAPIView):
|
class SystemJobTemplateList(ListAPIView):
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user