diff --git a/docsite/rst/playbooks2.rst b/docsite/rst/playbooks2.rst index b4a9eac448..b80a97d354 100644 --- a/docsite/rst/playbooks2.rst +++ b/docsite/rst/playbooks2.rst @@ -777,11 +777,11 @@ to determine which place sets the value of the variable. 1. Variables loaded from YAML files mentioned in 'vars_files' in a playbook. -2. 'vars' as defined in the playbook. +2. facts, whether built in or custom, or variables assigned from the 'register' keyword. -3. facts, whether built in or custom, or variables assigned from the 'register' keyword. +3. variables passed to parameterized task include statements. -4. variables passed to parameterized task include statements. +4. 'vars' as defined in the playbook. 5. Host variables from inventory. diff --git a/lib/ansible/playbook/play.py b/lib/ansible/playbook/play.py index f678a15bb7..608691c712 100644 --- a/lib/ansible/playbook/play.py +++ b/lib/ansible/playbook/play.py @@ -261,8 +261,9 @@ class Play(object): self.vars_files = [ self.vars_files ] if host is not None: - inject = self.playbook.SETUP_CACHE[host].copy() + inject = {} inject.update(self.playbook.inventory.get_variables(host)) + inject.update(self.playbook.SETUP_CACHE[host]) for filename in self.vars_files: