From 83c5b3323f3c66d8e3ddd664abde1c6e5728dfbd Mon Sep 17 00:00:00 2001 From: Chris Meyers Date: Fri, 2 Sep 2016 09:04:49 -0400 Subject: [PATCH] add workflow to unified endpoints --- awx/api/serializers.py | 10 +++++++--- awx/main/access.py | 8 ++++++-- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/awx/api/serializers.py b/awx/api/serializers.py index 7ef6efb74a..59912c3468 100644 --- a/awx/api/serializers.py +++ b/awx/api/serializers.py @@ -513,7 +513,7 @@ class UnifiedJobTemplateSerializer(BaseSerializer): def get_types(self): if type(self) is UnifiedJobTemplateSerializer: - return ['project', 'inventory_source', 'job_template', 'system_job_template'] + return ['project', 'inventory_source', 'job_template', 'system_job_template', 'workflow_job_template',] else: return super(UnifiedJobTemplateSerializer, self).get_types() @@ -528,7 +528,7 @@ class UnifiedJobTemplateSerializer(BaseSerializer): serializer_class = JobTemplateSerializer elif isinstance(obj, SystemJobTemplate): serializer_class = SystemJobTemplateSerializer - elif isinstance(obj, WorkflowJobTemplateSerializer): + elif isinstance(obj, WorkflowJobTemplate): serializer_class = WorkflowJobTemplateSerializer if serializer_class: serializer = serializer_class(instance=obj, context=self.context) @@ -560,7 +560,7 @@ class UnifiedJobSerializer(BaseSerializer): def get_types(self): if type(self) is UnifiedJobSerializer: - return ['project_update', 'inventory_update', 'job', 'ad_hoc_command', 'system_job'] + return ['project_update', 'inventory_update', 'job', 'ad_hoc_command', 'system_job', 'workflow_job',] else: return super(UnifiedJobSerializer, self).get_types() @@ -593,6 +593,8 @@ class UnifiedJobSerializer(BaseSerializer): serializer_class = AdHocCommandSerializer elif isinstance(obj, SystemJob): serializer_class = SystemJobSerializer + elif isinstance(obj, WorkflowJob): + serializer_class = WorkflowJobSerializer if serializer_class: serializer = serializer_class(instance=obj, context=self.context) ret = serializer.to_representation(obj) @@ -640,6 +642,8 @@ class UnifiedJobListSerializer(UnifiedJobSerializer): serializer_class = AdHocCommandListSerializer elif isinstance(obj, SystemJob): serializer_class = SystemJobListSerializer + elif isinstance(obj, WorkflowJob): + serializer_class = WorkflowJobSerializer if serializer_class: serializer = serializer_class(instance=obj, context=self.context) ret = serializer.to_representation(obj) diff --git a/awx/main/access.py b/awx/main/access.py index e6597797da..8ac2fe8377 100644 --- a/awx/main/access.py +++ b/awx/main/access.py @@ -1431,10 +1431,12 @@ class UnifiedJobTemplateAccess(BaseAccess): inventory_source_qs = self.user.get_queryset(InventorySource).filter(source__in=CLOUD_INVENTORY_SOURCES) job_template_qs = self.user.get_queryset(JobTemplate) system_job_template_qs = self.user.get_queryset(SystemJobTemplate) + workflow_job_template_qs = self.user.get_queryset(WorkflowJobTemplate) qs = qs.filter(Q(Project___in=project_qs) | Q(InventorySource___in=inventory_source_qs) | Q(JobTemplate___in=job_template_qs) | - Q(systemjobtemplate__in=system_job_template_qs)) + Q(systemjobtemplate__in=system_job_template_qs) | + Q(workflowjobtemplate__in=workflow_job_template_qs)) qs = qs.select_related( 'created_by', 'modified_by', @@ -1470,11 +1472,13 @@ class UnifiedJobAccess(BaseAccess): job_qs = self.user.get_queryset(Job) ad_hoc_command_qs = self.user.get_queryset(AdHocCommand) system_job_qs = self.user.get_queryset(SystemJob) + workflow_job_qs = self.user.get_queryset(WorkflowJob) qs = qs.filter(Q(ProjectUpdate___in=project_update_qs) | Q(InventoryUpdate___in=inventory_update_qs) | Q(Job___in=job_qs) | Q(AdHocCommand___in=ad_hoc_command_qs) | - Q(SystemJob___in=system_job_qs)) + Q(SystemJob___in=system_job_qs) | + Q(WorkflowJob___in=workflow_job_qs)) qs = qs.select_related( 'created_by', 'modified_by',