Merge pull request #4709 from AlanCoding/workflow_code_tweaks

Minor workflow code cleanup & performance
This commit is contained in:
Alan Rominger
2017-01-13 14:55:58 -05:00
committed by GitHub
3 changed files with 4 additions and 2 deletions

View File

@@ -2370,7 +2370,7 @@ class WorkflowJobTemplateNodeSerializer(WorkflowNodeBaseSerializer):
if view and view.request: if view and view.request:
request_method = view.request.method request_method = view.request.method
if request_method in ['PATCH']: if request_method in ['PATCH']:
obj = view.get_object() obj = self.instance
char_prompts = copy.copy(obj.char_prompts) char_prompts = copy.copy(obj.char_prompts)
char_prompts.update(self.extract_char_prompts(data)) char_prompts.update(self.extract_char_prompts(data))
else: else:

View File

@@ -1395,7 +1395,8 @@ class WorkflowJobTemplateNodeAccess(BaseAccess):
qs = self.model.objects.filter( qs = self.model.objects.filter(
workflow_job_template__in=WorkflowJobTemplate.accessible_objects( workflow_job_template__in=WorkflowJobTemplate.accessible_objects(
self.user, 'read_role')) self.user, 'read_role'))
qs = qs.prefetch_related('success_nodes', 'failure_nodes', 'always_nodes') qs = qs.prefetch_related('success_nodes', 'failure_nodes', 'always_nodes',
'unified_job_template')
return qs return qs
def can_use_prompted_resources(self, data): def can_use_prompted_resources(self, data):

View File

@@ -125,6 +125,7 @@ class TestWorkflowJobTemplateNodeSerializerCharPrompts():
serializer = WorkflowJobTemplateNodeSerializer() serializer = WorkflowJobTemplateNodeSerializer()
node = WorkflowJobTemplateNode(pk=1) node = WorkflowJobTemplateNode(pk=1)
node.char_prompts = {'limit': 'webservers'} node.char_prompts = {'limit': 'webservers'}
serializer.instance = node
view = FakeView(node) view = FakeView(node)
view.request = FakeRequest() view.request = FakeRequest()
view.request.method = "PATCH" view.request.method = "PATCH"