mirror of https://github.com/ansible/ansible.git
Recognize module tracebacks on stdout and stderr.
Module tracebacks may be reported on stdout instead of stderr when using some connection plugins. For example, the ssh connection plugin will report tracebacks on stdout due to use of the -tt option. This change results in tracebacks being recognized on both stdout and stderr, instead of the previous behavior of just stderr. ci_completepull/58446/head
parent
11e2ac3abf
commit
f109184753
@ -0,0 +1,2 @@
|
|||||||
|
bugfixes:
|
||||||
|
- Module tracebacks are now recognized on stdout and stderr, intead of just on stderr.
|
@ -0,0 +1,2 @@
|
|||||||
|
shippable/posix/group4
|
||||||
|
needs/ssh
|
@ -0,0 +1,5 @@
|
|||||||
|
testhost_local ansible_connection=local
|
||||||
|
testhost_ssh ansible_connection=ssh ansible_host=localhost
|
||||||
|
|
||||||
|
[all:vars]
|
||||||
|
ansible_python_interpreter="{{ ansible_playbook_python }}"
|
@ -0,0 +1,5 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
set -eux
|
||||||
|
|
||||||
|
ansible-playbook traceback.yml -i inventory "$@"
|
@ -0,0 +1,21 @@
|
|||||||
|
- hosts: all
|
||||||
|
gather_facts: no
|
||||||
|
tasks:
|
||||||
|
- name: intentionally fail module execution
|
||||||
|
ping:
|
||||||
|
data: crash
|
||||||
|
ignore_errors: yes
|
||||||
|
register: ping
|
||||||
|
|
||||||
|
- hosts: localhost
|
||||||
|
gather_facts: no
|
||||||
|
tasks:
|
||||||
|
- name: verify exceptions were properly captured
|
||||||
|
assert:
|
||||||
|
that:
|
||||||
|
- hostvars.testhost_local.ping is failed
|
||||||
|
- "'boom' in hostvars.testhost_local.ping.exception"
|
||||||
|
- "'boom' in hostvars.testhost_local.ping.module_stderr"
|
||||||
|
- hostvars.testhost_ssh.ping is failed
|
||||||
|
- "'boom' in hostvars.testhost_ssh.ping.exception"
|
||||||
|
- "'boom' in hostvars.testhost_ssh.ping.module_stdout"
|
Loading…
Reference in New Issue