From d5e63332fede8dc50cd7bf7a34f58daef4121fbf Mon Sep 17 00:00:00 2001 From: Daniel Hokka Zakrisson Date: Wed, 6 Feb 2013 16:41:34 +0100 Subject: [PATCH] Raise an error if an action doesn't have a string type Happens with e.g. "command: true" that YAML helpfully converts to a bool. --- lib/ansible/playbook/task.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/ansible/playbook/task.py b/lib/ansible/playbook/task.py index 79b05e364a6..3387c244103 100644 --- a/lib/ansible/playbook/task.py +++ b/lib/ansible/playbook/task.py @@ -47,6 +47,8 @@ class Task(object): if x in utils.plugins.module_finder: if 'action' in ds: raise errors.AnsibleError("multiple actions specified in task %s" % (ds.get('name', ds['action']))) + if not isinstance(ds[x], basestring): + raise errors.AnsibleError("action specified for task %s has invalid type %s" % (ds.get('name', "%s: %s" % (x, ds[x])), type(ds[x]))) ds['action'] = x + " " + ds[x] ds.pop(x)