Commit c5469f63 by Aleksej Romanov

Vars specified via CLI have the highest priority.

parent 036f853d
...@@ -528,17 +528,19 @@ You have already learned about inventory host and group variables, 'vars', and ' ...@@ -528,17 +528,19 @@ You have already learned about inventory host and group variables, 'vars', and '
If a variable name is defined in more than one place with the same name, priority is as follows If a variable name is defined in more than one place with the same name, priority is as follows
to determine which place sets the value of the variable. to determine which place sets the value of the variable.
1. Variables loaded from YAML files mentioned in 'vars_files' in a playbook. 1. Variables specified via command line with --extra-vars.
2. 'vars' as defined in the playbook. 2. Variables loaded from YAML files mentioned in 'vars_files' in a playbook.
3. facts, whether built in or custom, or variables assigned from the 'register' keyword. 3. 'vars' as defined in the playbook.
4. variables passed to parameterized task include statements. 4. facts, whether built in or custom, or variables assigned from the 'register' keyword.
5. Host variables from inventory. 5. variables passed to parameterized task include statements.
6. Group variables from inventory, in order of least specific group to most specific. 6. Host variables from inventory.
7. Group variables from inventory, in order of least specific group to most specific.
Therefore, if you want to set a default value for something you wish to override somewhere else, the best Therefore, if you want to set a default value for something you wish to override somewhere else, the best
place to set such a default is in a group variable. place to set such a default is in a group variable.
......
...@@ -189,9 +189,8 @@ class Play(object): ...@@ -189,9 +189,8 @@ 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")
results = self.playbook.extra_vars.copy() vars.update(self.playbook.extra_vars)
results.update(vars) return vars
return results
# ************************************************* # *************************************************
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment