On this page
yaml - Uses a specific YAML file as an inventory source.
New in version 2.4.
Synopsis
- YAML based inventory, starts with the ‘all’ group and has hosts/vars/children entries.
- Host entries can have sub-entries defined, which will be treated as variables.
- Vars entries are normal group vars.
- Children are ‘child groups’, which can also have their own vars/hosts/children and so on.
- File MUST have a valid extension, defined in configuration
Parameters
Parameter | Choices/Defaults | Configuration | Comments |
---|---|---|---|
yaml_extensions
list
|
Default:
[".yaml", ".yml", ".json"]
|
ini entries:
[defaults ] [inventory_plugin_yaml ]
env:ANSIBLE_YAML_FILENAME_EXT
env:ANSIBLE_INVENTORY_PLUGIN_EXTS
|
list of 'valid' extensions for files containing YAML
|
Notes
Note
- It takes the place of the previously hardcoded YAML inventory.
- To function it requires being whitelisted in configuration.
Examples
all: # keys must be unique, i.e. only one 'hosts' per group
hosts:
test1:
test2:
var1: value1
vars:
group_var1: value2
children: # key order does not matter, indentation does
other_group:
children:
group_x:
hosts:
test5
vars:
g2_var2: value3
hosts:
test4:
ansible_host: 127.0.0.1
last_group:
hosts:
test1 # same host as above, additional group membership
vars:
last_var: MYVALUE
Status
Author
- UNKNOWN
Hint
If you notice any issues in this documentation you can edit this document to improve it.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.6/plugins/inventory/yaml.html