Skip to content

Commit

Permalink
ansible: capture stderr stream of async tasks. Closes #540.
Browse files Browse the repository at this point in the history
  • Loading branch information
dw committed Feb 13, 2019
1 parent 4be4b08 commit 1c955a9
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 5 deletions.
2 changes: 1 addition & 1 deletion ansible_mitogen/target.py
Original file line number Diff line number Diff line change
Expand Up @@ -502,7 +502,7 @@ def _parse_result(self, dct):
)
result = json.loads(filtered)
result.setdefault('warnings', []).extend(warnings)
result['stderr'] = dct['stderr']
result['stderr'] = dct['stderr'] or result.get('stderr', '')
self._update(result)

def _run(self):
Expand Down
3 changes: 3 additions & 0 deletions docs/changelog.rst
Original file line number Diff line number Diff line change
Expand Up @@ -144,6 +144,9 @@ Fixes
* `#538 <https://github.com/dw/mitogen/issues/538>`_: the Mitogen source
distribution includes a requisite ``LICENSE`` file.

* `#540 <https://github.com/dw/mitogen/issues/540>`_: the ``stderr`` stream of
async module invocations was previously discarded.

* `748f5f67 <https://github.com/dw/mitogen/commit/748f5f67>`_: the
``ansible_ssh_host`` variable is respected when ``mitogen_via=`` is active.

Expand Down
8 changes: 4 additions & 4 deletions tests/ansible/integration/async/result_shell_echo_hi.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
any_errors_fatal: true
tasks:

- shell: echo hi
- shell: echo hi; echo there >&2
async: 100
poll: 0
register: job
Expand All @@ -21,10 +21,10 @@
- assert:
that:
- async_out.changed == True
- async_out.cmd == "echo hi"
- async_out.cmd == "echo hi; echo there >&2"
- 'async_out.delta.startswith("0:00:")'
- async_out.end.startswith("20")
- async_out.invocation.module_args._raw_params == "echo hi"
- async_out.invocation.module_args._raw_params == "echo hi; echo there >&2"
- async_out.invocation.module_args._uses_shell == True
- async_out.invocation.module_args.chdir == None
- async_out.invocation.module_args.creates == None
Expand All @@ -33,7 +33,7 @@
- async_out.invocation.module_args.warn == True
- async_out.rc == 0
- async_out.start.startswith("20")
- async_out.stderr == ""
- async_out.stderr == "there"
- async_out.stdout == "hi"
vars:
async_out: "{{result.content|b64decode|from_json}}"
Expand Down

0 comments on commit 1c955a9

Please sign in to comment.