Fixed error dropped on floor - save receptor detail when it applies

This commit is contained in:
Alan Rominger
2021-11-10 08:50:16 +08:00
committed by Shane McDonald
parent 4cfa4eaf8e
commit 3a3fffb2dd
+8 -1
View File
@@ -3151,8 +3151,15 @@ class AWXReceptorJob:
try:
resultsock = receptor_ctl.get_work_results(self.unit_id, return_sockfile=True)
lines = resultsock.readlines()
self.task.instance.result_traceback = b"".join(lines).decode()
receptor_output = b"".join(lines).decode()
if receptor_output:
self.task.instance.result_traceback = receptor_output
self.task.instance.save(update_fields=['result_traceback'])
elif detail:
self.task.instance.result_traceback = detail
self.task.instance.save(update_fields=['result_traceback'])
else:
logger.warn(f'No result details or output from {self.task.instance.log_format}, status:\n{unit_status}')
except Exception:
raise RuntimeError(detail)