mirror of
https://github.com/ansible/awx.git
synced 2026-05-07 01:17:37 -02:30
Force handle playbook_on_play_start messages early
Fixes issue AC-1277 where event parents were getting associated incorrectly
This commit is contained in:
@@ -34,6 +34,11 @@ def run_subscriber(consumer_port, queue_port, use_workers=True):
|
|||||||
signal.signal(signum, signal.SIG_DFL)
|
signal.signal(signum, signal.SIG_DFL)
|
||||||
os.kill(os.getpid(), signum) # Rethrow signal, this time without catching it
|
os.kill(os.getpid(), signum) # Rethrow signal, this time without catching it
|
||||||
return _handler
|
return _handler
|
||||||
|
def check_pre_handle(data):
|
||||||
|
event = data.get('event', '')
|
||||||
|
if event == 'playbook_on_play_start':
|
||||||
|
return True
|
||||||
|
return False
|
||||||
|
|
||||||
consumer_context = zmq.Context()
|
consumer_context = zmq.Context()
|
||||||
consumer_subscriber = consumer_context.socket(zmq.REP)
|
consumer_subscriber = consumer_context.socket(zmq.REP)
|
||||||
@@ -59,10 +64,10 @@ def run_subscriber(consumer_port, queue_port, use_workers=True):
|
|||||||
|
|
||||||
while True: # Handle signal
|
while True: # Handle signal
|
||||||
message = consumer_subscriber.recv_json()
|
message = consumer_subscriber.recv_json()
|
||||||
if use_workers:
|
if check_pre_handle(message) or not use_workers:
|
||||||
queue_publisher.send_json(message)
|
|
||||||
else:
|
|
||||||
process_job_event(message)
|
process_job_event(message)
|
||||||
|
else:
|
||||||
|
queue_publisher.send_json(message)
|
||||||
consumer_subscriber.send("1")
|
consumer_subscriber.send("1")
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user