mirror of
https://github.com/ansible/awx.git
synced 2026-03-25 12:55:04 -02:30
emit job status over socket after database commit
* Wait until the newly created job record hits the database before telling the websocket clients that the job's status is "pending"
This commit is contained in:
@@ -964,10 +964,13 @@ class UnifiedJob(PolymorphicModel, PasswordFieldsModel, CommonModelNameNotUnique
|
|||||||
|
|
||||||
# Save the pending status, and inform the SocketIO listener.
|
# Save the pending status, and inform the SocketIO listener.
|
||||||
self.update_fields(start_args=json.dumps(kwargs), status='pending')
|
self.update_fields(start_args=json.dumps(kwargs), status='pending')
|
||||||
self.websocket_emit_status("pending")
|
|
||||||
|
|
||||||
from awx.main.scheduler.tasks import run_job_launch
|
def post_commit():
|
||||||
connection.on_commit(lambda: run_job_launch.delay(self.id))
|
from awx.main.scheduler.tasks import run_job_launch
|
||||||
|
self.websocket_emit_status("pending")
|
||||||
|
run_job_launch.delay(self.id)
|
||||||
|
|
||||||
|
connection.on_commit(post_commit)
|
||||||
|
|
||||||
# Each type of unified job has a different Task class; get the
|
# Each type of unified job has a different Task class; get the
|
||||||
# appropirate one.
|
# appropirate one.
|
||||||
|
|||||||
Reference in New Issue
Block a user