--- # it is possible to ask for variables from the user at the start # of a playbook run, for example, as part of a release script. - hosts: all user: root # regular variables are a dictionary of keys and values vars: this_is_a_regular_var: 'moo' so_is_this: 'quack' # alternatively, they can ALSO be passed in from the outside: # ansible-playbook foo.yml --extra-vars="foo=100 bar=101" # or through external inventory scripts (see online API docs) # here's basic mode prompting. Specify a hash of variable names and a prompt for # each. # # vars_prompt: # release_version: "product release version" # prompts can also be specified like this, allowing for hiding the prompt as # entered. In the future, this may also be used to support crypted variables vars_prompt: - name: "some_password" prompt: "Enter password" private: True - name: "release_version" prompt: "Product release version" private: False - name: "my_password2" prompt: "Enter password2" private: True encrypt: "md5_crypt" confirm: True salt_size: 7 salt: "foo" # this is just a simple example to show that vars_prompt works, but # you might ask for a tag to use with the git module or perhaps # a package version to use with the yum module. tasks: - name: imagine this did something interesting with $release_version action: shell echo foo >> /tmp/$release_version-$alpha - name: look we crypted a password action: shell echo my password is $my_password2