On 15.05.2019 09:47, Tran Khang wrote:
Hi all,
Please see my playbook below. I call 2 executions on different hosts in
1
playbook.
Just to get the terminology correct, it's 2 plays in 1 playbook.
The first execution changes some variables in a vars file which would
be
used in next execution (create new backup folder and update its name to
another vars file)
The second execution try to use 2 vars file to do backup tasks (using
roles). The issue I met here is the vars file value were loaded with
old
value not the updated. Seem all defined vars files were loaded before
tasks
executed on all hosts, and update during running task doesn't effect.
I can separate this playbook into 2 playbooks and all work well as
expected
but I'm trying to combine 1 playbook. Do anyone can show me how to
reload
vars file in correctly executing tasks/roles ? I exactly want the
second
execution load the updated vars file before running roles.
Instead of using vars_files use the module include_vars, inlude_vars
load the file dynamically
https://docs.ansible.com/ansible/latest/modules/include_vars_module.html
Add the include_vars in the pre_tasks: so it runs before roles is run.
--
Kai Stian Olstad
--
You received this message because you are subscribed to the Google Groups "Ansible
Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/ansible-project/9f80355706d32732b648c902b613b94a%40olstad.com.
For more options, visit https://groups.google.com/d/optout.