From cdb8213dccbc8b997ca942d121aa4ce47c3e680b Mon Sep 17 00:00:00 2001 From: Jeroen Hoekx Date: Thu, 19 Apr 2012 08:49:09 +0200 Subject: [PATCH] Supported 'listed' vars in playbooks. --- lib/ansible/playbook.py | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/lib/ansible/playbook.py b/lib/ansible/playbook.py index 3e8a79d364e..0f08a18e2d8 100755 --- a/lib/ansible/playbook.py +++ b/lib/ansible/playbook.py @@ -118,8 +118,18 @@ class PlayBook(object): if play.get('vars') is None: play['vars'] = {} vars = play['vars'] - if type(vars) != dict: + if type(vars) not in [dict, list]: raise errors.AnsibleError("'vars' section must contain only key/value pairs") + + # translate a list of vars into a dict + if type(vars) == list: + varlist = vars + vars = {} + for item in varlist: + k, v = item.items()[0] + vars[k] = v + play['vars'] = vars + vars_prompt = play.get('vars_prompt', {}) if type(vars_prompt) != dict: raise errors.AnsibleError("'vars_prompt' section must contain only key/value pairs")