From a1dd5a4e19e02d1bf64f17c23d799fd36cd9a91f Mon Sep 17 00:00:00 2001 From: beeankha Date: Tue, 19 Mar 2019 11:29:19 -0400 Subject: [PATCH] WIP WFJT Node Activity Stream Bug Fix --- awx/api/serializers.py | 14 +++++++++++++- .../factories/build-anchor.factory.js | 3 +++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/awx/api/serializers.py b/awx/api/serializers.py index ca454a0b1e..1ab91d630b 100644 --- a/awx/api/serializers.py +++ b/awx/api/serializers.py @@ -4021,7 +4021,7 @@ class WorkflowJobTemplateNodeDetailSerializer(WorkflowJobTemplateNodeSerializer) Influence the api browser sample data to not include workflow_job_template when editing a WorkflowNode. - Note: I was not able to accomplish this trough the use of extra_kwargs. + Note: I was not able to accomplish this through the use of extra_kwargs. Maybe something to do with workflow_job_template being a relational field? ''' def build_relational_field(self, field_name, relation_info): @@ -5070,6 +5070,18 @@ class ActivityStreamSerializer(BaseSerializer): if fval is not None: job_template_item[field] = fval summary_fields['job_template'].append(job_template_item) + if fk == 'workflow_job_template_node': + summary_fields['workflow_job_template'] = [] + workflow_job_template_item = {} + workflow_job_template_fields = SUMMARIZABLE_FK_FIELDS['workflow_job_template'] + workflow_job_template = getattr(thisItem, 'workflow_job_template', None) + if workflow_job_template is not None: + for field in workflow_job_template_fields: + fval = getattr(workflow_job_template, field, None) + if fval is not None: + workflow_job_template_item[field] = fval + summary_fields['workflow_job_template'].append(workflow_job_template_item) +# to adhere to DRY principles, the above can eventually be combined into a helper method if fk == 'schedule': unified_job_template = getattr(thisItem, 'unified_job_template', None) if unified_job_template is not None: diff --git a/awx/ui/client/src/activity-stream/factories/build-anchor.factory.js b/awx/ui/client/src/activity-stream/factories/build-anchor.factory.js index e25607e2ae..cb913fb96e 100644 --- a/awx/ui/client/src/activity-stream/factories/build-anchor.factory.js +++ b/awx/ui/client/src/activity-stream/factories/build-anchor.factory.js @@ -75,6 +75,9 @@ export default function BuildAnchor($log, $filter) { case 'workflow_job_template': url += `templates/workflow_job_template/${obj.id}`; break; + case 'workflow_job_template_node': + url += `templates/workflow_job_template/${obj.summary_fields.workflow_job_template.id}`; + break; case 'workflow_job': url += `workflows/${obj.id}`; break;