mirror of
https://github.com/ansible-collections/community.general.git
synced 2024-09-14 20:13:21 +02:00
Fix saving of tracebacks on module failure
This commit is contained in:
parent
6b1b4e03b0
commit
fe278202f2
2 changed files with 7 additions and 8 deletions
|
@ -506,13 +506,12 @@ class ActionBase(with_metaclass(ABCMeta, object)):
|
|||
except ValueError:
|
||||
# not valid json, lets try to capture error
|
||||
data = dict(failed=True, parsed=False)
|
||||
if 'stderr' in res and res['stderr'].startswith(u'Traceback'):
|
||||
data['exception'] = res['stderr']
|
||||
else:
|
||||
data['msg'] = "MODULE FAILURE"
|
||||
data['module_stdout'] = res.get('stdout', u'')
|
||||
if 'stderr' in res:
|
||||
data['module_stderr'] = res['stderr']
|
||||
data['msg'] = "MODULE FAILURE"
|
||||
data['module_stdout'] = res.get('stdout', u'')
|
||||
if 'stderr' in res:
|
||||
data['module_stderr'] = res['stderr']
|
||||
if res['stderr'].startswith(u'Traceback'):
|
||||
data['exception'] = res['stderr']
|
||||
|
||||
# pre-split stdout into lines, if stdout is in the data and there
|
||||
# isn't already a stdout_lines value there
|
||||
|
|
|
@ -327,6 +327,6 @@ class ActionModule(ActionBase):
|
|||
if 'SyntaxError' in result.get('exception', result.get('msg', '')):
|
||||
# Emit a warning about using python3 because synchronize is
|
||||
# somewhat unique in running on localhost
|
||||
result['traceback'] = result['msg']
|
||||
result['exception'] = result['msg']
|
||||
result['msg'] = 'SyntaxError parsing module. Perhaps invoking "python" on your local (or delegate_to) machine invokes python3. You can set ansible_python_interpreter for localhost (or the delegate_to machine) to the location of python2 to fix this'
|
||||
return result
|
||||
|
|
Loading…
Reference in a new issue