From 389c4a318035cdb02a972ba8200391765f522169 Mon Sep 17 00:00:00 2001 From: John Westcott IV <32551173+john-westcott-iv@users.noreply.github.com> Date: Mon, 18 Jul 2022 10:53:49 -0400 Subject: [PATCH] Adding fields to job_metadata for workflows and approval nodes (#12255) --- awx/main/models/notifications.py | 1 + awx/main/models/workflow.py | 16 ++++++++++++++++ 2 files changed, 17 insertions(+) diff --git a/awx/main/models/notifications.py b/awx/main/models/notifications.py index 266203528f..331586e76a 100644 --- a/awx/main/models/notifications.py +++ b/awx/main/models/notifications.py @@ -408,6 +408,7 @@ class JobNotificationMixin(object): 'inventory': 'Stub Inventory', 'id': 42, 'hosts': {}, + 'extra_vars': {}, 'friendly_name': 'Job', 'finished': False, 'credential': 'Stub credential', diff --git a/awx/main/models/workflow.py b/awx/main/models/workflow.py index b5479a5be9..38896ae827 100644 --- a/awx/main/models/workflow.py +++ b/awx/main/models/workflow.py @@ -659,6 +659,13 @@ class WorkflowJob(UnifiedJob, WorkflowJobOptions, SurveyJobMixin, JobNotificatio node_job_description = 'job #{0}, "{1}", which finished with status {2}.'.format(node.job.id, node.job.name, node.job.status) str_arr.append("- node #{0} spawns {1}".format(node.id, node_job_description)) result['body'] = '\n'.join(str_arr) + result.update( + dict( + inventory=self.inventory.name if self.inventory else None, + limit=self.limit, + extra_vars=self.display_extra_vars(), + ) + ) return result @property @@ -906,3 +913,12 @@ class WorkflowApproval(UnifiedJob, JobNotificationMixin): @property def workflow_job(self): return self.unified_job_node.workflow_job + + def notification_data(self): + result = super(WorkflowApproval, self).notification_data() + result.update( + dict( + extra_vars=self.workflow_job.display_extra_vars(), + ) + ) + return result