From e09497108e1883dc07ecb03463b657e3bbf6934f Mon Sep 17 00:00:00 2001 From: Chris Meyers Date: Tue, 28 Feb 2017 12:56:55 -0500 Subject: [PATCH] all job status change websockets events should happen after the job hits the database --- awx/main/models/unified_jobs.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/awx/main/models/unified_jobs.py b/awx/main/models/unified_jobs.py index f17b2b4c55..2ccae7fdaf 100644 --- a/awx/main/models/unified_jobs.py +++ b/awx/main/models/unified_jobs.py @@ -880,7 +880,7 @@ class UnifiedJob(PolymorphicModel, PasswordFieldsModel, CommonModelNameNotUnique workflow_node_id=self.workflow_node_id)) return websocket_data - def websocket_emit_status(self, status): + def _websocket_emit_status(self, status): status_data = dict(unified_job_id=self.id, status=status) status_data.update(self.websocket_emit_data()) status_data['group_name'] = 'jobs' @@ -890,6 +890,9 @@ class UnifiedJob(PolymorphicModel, PasswordFieldsModel, CommonModelNameNotUnique status_data['group_name'] = "workflow_events" emit_channel_notification('workflow_events-' + str(self.workflow_job_id), status_data) + def websocket_emit_status(self, status): + connection.on_commit(lambda: self._websocket_emit_status(status)) + def notification_data(self): return dict(id=self.id, name=self.name,