diff --git a/lib/ansible/constants.py b/lib/ansible/constants.py index 5b7c901415..c95cb34b45 100644 --- a/lib/ansible/constants.py +++ b/lib/ansible/constants.py @@ -235,4 +235,4 @@ DEFAULT_SUBSET = None DEFAULT_SU_PASS = None VAULT_VERSION_MIN = 1.0 VAULT_VERSION_MAX = 1.0 -RESULT_SANITIZE = frozenset(['invocation','warnings']) +RESULT_SANITIZE = frozenset(['warnings']) diff --git a/lib/ansible/plugins/action/__init__.py b/lib/ansible/plugins/action/__init__.py index 02f30d4b59..80dd43099c 100644 --- a/lib/ansible/plugins/action/__init__.py +++ b/lib/ansible/plugins/action/__init__.py @@ -23,7 +23,7 @@ from six.moves import StringIO import json import os import random -import sys # FIXME: probably not needed +import sys import tempfile import time @@ -404,10 +404,11 @@ class ActionBase: data['stdout_lines'] = data.get('stdout', '').splitlines() # store the module invocation details back into the result - data['invocation'] = dict( - module_args = module_args, - module_name = module_name, - ) + if self._task.async is not None: + data['invocation'] = dict( + module_args = module_args, + module_name = module_name, + ) debug("done with _execute_module (%s, %s)" % (module_name, module_args)) return data diff --git a/lib/ansible/plugins/callback/__init__.py b/lib/ansible/plugins/callback/__init__.py index d39af7e092..a13811b954 100644 --- a/lib/ansible/plugins/callback/__init__.py +++ b/lib/ansible/plugins/callback/__init__.py @@ -49,7 +49,7 @@ class CallbackBase: if sanitize: res = self._sanitize_result(result) else: - res = results + res = result return json.dumps(res, indent=indent, ensure_ascii=False, sort_keys=sort_keys) def _sanitize_result(self, result): diff --git a/test/integration/roles/test_command_shell/tasks/main.yml b/test/integration/roles/test_command_shell/tasks/main.yml index 325e76cffe..976843e369 100644 --- a/test/integration/roles/test_command_shell/tasks/main.yml +++ b/test/integration/roles/test_command_shell/tasks/main.yml @@ -127,7 +127,6 @@ - "shell_result0.rc == 0" - "shell_result0.stderr == ''" - "shell_result0.stdout == 'win'" - - "not shell_result0.warnings" # executable @@ -156,7 +155,6 @@ - "shell_result2.rc == 0" - "shell_result2.stderr == ''" - "shell_result2.stdout == 'win'" - - "not shell_result2.warnings" # creates @@ -169,28 +167,11 @@ - name: verify that afile.txt is present file: path={{output_dir_test}}/afile.txt state=file -# removes - -- name: remove afile.txt using rm - shell: rm {{output_dir_test | expanduser}}/afile.txt removes={{output_dir_test | expanduser}}/afile.txt - register: shell_result3 - -- name: assert that using rm under shell causes a warning - assert: - that: - - "shell_result3.warnings" - -- name: verify that afile.txt is absent - file: path={{output_dir_test}}/afile.txt state=absent - register: shell_result4 - -- name: assert that the file was removed by the shell - assert: - that: - - "shell_result4.changed == False" - # multiline +- name: remove test file previously created + file: path={{output_dir_test | expanduser}}/afile.txt state=absent + - name: execute a shell command using a literal multiline block args: executable: /bin/bash