summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarc Abramowitz <marc@marc-abramowitz.com>2015-05-26 09:15:04 -0700
committerMarc Abramowitz <marc@marc-abramowitz.com>2015-05-26 09:25:12 -0700
commitd0a154c446f637c2b041dc28bc1ccbb891b48fac (patch)
treef612d4cf17c66b292390f42c677192f1e2cc0015
parent6000db7e5d6da1ac61bc40eb6788466a1005f3a7 (diff)
downloadansible-d0a154c446f637c2b041dc28bc1ccbb891b48fac.tar.gz
Include more info when a task fails
Adds "playbook", "role", and "task" fields to the output when a task fails. This makes it easier to pinpoint where the problem is, especially when you have a lot of roles and playbooks. e.g.: failed: [vagrant] => {..."playbook": "/Users/marca/dev/ansible/vagrant.yml", ..."role": "pythonapp", ..."task": "pip install -r /opt/src/{{ sm_app_role }}/requirements.txt"...}
-rw-r--r--lib/ansible/callbacks.py4
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/ansible/callbacks.py b/lib/ansible/callbacks.py
index 39d3a8d442..a7d2283cf0 100644
--- a/lib/ansible/callbacks.py
+++ b/lib/ansible/callbacks.py
@@ -487,6 +487,10 @@ class PlaybookRunnerCallbacks(DefaultRunnerCallbacks):
stdout = results2.pop('stdout', None)
returned_msg = results2.pop('msg', None)
+ results2['task'] = self.task.name
+ results2['role'] = self.task.role_name
+ results2['playbook'] = self.playbook.filename
+
if item:
msg = "failed: [%s] => (item=%s) => %s" % (host, item, utils.jsonify(results2))
else: