From 612a1a64f07e8724c08f8b438d5297b58fd8821d Mon Sep 17 00:00:00 2001 From: James Cammarata Date: Mon, 31 Mar 2014 15:31:10 -0500 Subject: [PATCH] Apply extra vars after all other vars have been merged in a play Fixes #6677 --- lib/ansible/playbook/play.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/lib/ansible/playbook/play.py b/lib/ansible/playbook/play.py index 53f097f5c86..155994ef19c 100644 --- a/lib/ansible/playbook/play.py +++ b/lib/ansible/playbook/play.py @@ -93,6 +93,10 @@ class Play(object): 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 # tasks/handlers as they may have inventory scope overrides _tasks = ds.pop('tasks', []) @@ -684,9 +688,6 @@ class Play(object): else: 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 # *************************************************