Sometimes, it is important to set and get variables in a playbook.
Very often, you'll need to automate multiple similar operations. In those cases, you'll want to create a single playbook that can be called with different variables to ensure code reusability.
Another case where variables are very important is when you have more than one data center, and some values will be data center-specific. A common example are the DNS servers. Let's analyze the following simple code that will introduce us to the Ansible way to set and get variables:
- hosts: all remote_user: vagrant tasks: - name: Set variable 'name' set_fact: name: Test machine - name: Print variable 'name' debug: msg: '{{ name }}'
Let's run it in the usual way:
$ ansible-playbook -i test01.fale.io, variables...