clarified inventory_dir changes for 2.4 (#31484)
* clarified inventory_dir changes for 2.4 added example on how to restore (mostly) old behaviour for add_hosts fixes #30901
This commit is contained in:
parent
74107ff7cc
commit
dc69af50dc
2 changed files with 13 additions and 3 deletions
|
@ -26,7 +26,10 @@ Inventory
|
|||
|
||||
Inventory has been refactored to be implemented via plugins and now allows for multiple sources. This change is mostly transparent to users.
|
||||
|
||||
One exception is the ``inventory_dir``, which is now a host variable; previously it could only have one value so it was set globally. This means you cannot use it early in plays anymore to determine ``hosts:`` or similar keywords.
|
||||
One exception is the ``inventory_dir``, which is now a host variable; previously it could only have one value so it was set globally.
|
||||
This means you can no longer use it early in plays to determine ``hosts:`` or similar keywords.
|
||||
This also changes the behaviour of ``add_hosts`` and the implicit localhost;
|
||||
because they no longer automatically inherit the global value, they default to ``None``. See the module documentation for more information.
|
||||
|
||||
The ``inventory_file`` remains unchanged, as it was always host specific.
|
||||
|
||||
|
|
|
@ -35,8 +35,10 @@ options:
|
|||
notes:
|
||||
- This module bypasses the play host loop and only runs once for all the hosts in the play, if you need it
|
||||
to iterate use a with\_ directive.
|
||||
- This module is also supported for Windows targets.
|
||||
- Windows targets are supported by this module.
|
||||
- The alias 'host' of the parameter 'name' is only available on >=2.4
|
||||
- Since Ansible version 2.4, the ``inventory_dir`` variable is now set to ``None`` instead of the 'global inventory source',
|
||||
because you can now have multiple sources. An example was added that shows how to partially restore the previous behaviour.
|
||||
author:
|
||||
- "Ansible Core Team"
|
||||
- "Seth Vidal"
|
||||
|
@ -71,4 +73,9 @@ EXAMPLES = '''
|
|||
hostname: "{{ new_ip }}"
|
||||
ansible_host: "{{ inventory_hostname }}"
|
||||
ansible_port: "{{ new_port }}"
|
||||
|
||||
- name: Ensure inventory vars are set to the same value as the inventory_hostname has (close to pre 2.4 behaviour)
|
||||
add_host:
|
||||
hostname: charlie
|
||||
inventory_dir: "{{inventory_dir}}"
|
||||
'''
|
||||
|
|
Loading…
Reference in a new issue