Apply extra vars after all other vars have been merged in a play

Fixes #6677
This commit is contained in:
James Cammarata 2014-03-31 15:31:10 -05:00
parent b9c044b8c9
commit 612a1a64f0

View file

@ -93,6 +93,10 @@ class Play(object):
self._update_vars_files_for_host(None) self._update_vars_files_for_host(None)
# apply any extra_vars specified on the command line now
if type(self.playbook.extra_vars) == dict:
self.vars = utils.combine_vars(self.vars, self.playbook.extra_vars)
# template everything to be efficient, but do not pre-mature template # template everything to be efficient, but do not pre-mature template
# tasks/handlers as they may have inventory scope overrides # tasks/handlers as they may have inventory scope overrides
_tasks = ds.pop('tasks', []) _tasks = ds.pop('tasks', [])
@ -684,9 +688,6 @@ class Play(object):
else: else:
raise errors.AnsibleError("'vars_prompt' section is malformed, see docs") raise errors.AnsibleError("'vars_prompt' section is malformed, see docs")
if type(self.playbook.extra_vars) == dict:
vars = utils.combine_vars(vars, self.playbook.extra_vars)
return vars return vars
# ************************************************* # *************************************************