Handle debug tasks more robust in zuul_stream

We currently rely on detecting debug tasks by checking if there is
only a single variable other than variables starting with
'_ansible'. This doesn't work anymore with ansible 2.4. Detecting them
by the action should work better and more reliably.

Further also strip the 'changed' variable in this case as this has no
meaning for a debug task.

Change-Id: I562329ce68c279965afc32ba5fda6615423de43a
This commit is contained in:
Tobias Henkel 2018-02-08 14:40:51 +01:00
parent bdcd29b8fe
commit 36924466e9
No known key found for this signature in database
GPG Key ID: 03750DEC158E5FA2
1 changed files with 3 additions and 2 deletions

View File

@ -367,12 +367,13 @@ class CallbackModule(default.CallbackModule):
self._log_message(
result, status='MODULE FAILURE',
msg=result_dict['module_stderr'])
elif (len([key for key in result_dict.keys()
if not key.startswith('_ansible')]) == 1):
elif result._task.action == 'debug':
# this is a debug statement, handle it special
for key in [k for k in result_dict.keys()
if k.startswith('_ansible')]:
del result_dict[key]
if 'changed' in result_dict.keys():
del result_dict['changed']
keyname = next(iter(result_dict.keys()))
# If it has msg, that means it was like:
#