60 lines
1.6 KiB
YAML
60 lines
1.6 KiB
YAML
---
|
|
|
|
# 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: yes
|
|
|
|
- name: "release_version"
|
|
prompt: "Product release version"
|
|
default: "my_default_version"
|
|
private: no
|
|
|
|
- name: "my_password2"
|
|
prompt: "Enter password2"
|
|
private: yes
|
|
encrypt: "md5_crypt"
|
|
confirm: yes
|
|
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}}
|
|
|
|
|
|
|
|
|