ansible.builtin.group_by – Create Ansible groups based on facts
Note
This module is part of ansible-core
and included in all Ansible
installations. In most cases, you can use the short
module name
group_by
even without specifying the collections:
keyword.
However, we recommend you use the FQCN for easy linking to the
module documentation and to avoid conflicting with other collections that may have
the same module name.
New in version 0.9: of ansible.builtin
Synopsis
Use facts to create ad-hoc groups that can be used later in a playbook.
This module is also supported for Windows targets.
Note
This module has a corresponding action plugin.
Parameters
Parameter |
Comments |
---|---|
The variables whose values will be used as groups. |
|
The list of the parent groups. Default: “all” |
Notes
Note
Spaces in group names are converted to dashes ‘-‘.
This module is also supported for Windows targets.
Though this module does not change the remote host, we do provide ‘changed’ status as it can be useful for those trying to track inventory changes.
See Also
See also
- ansible.builtin.add_host
The official documentation on the ansible.builtin.add_host module.
Examples
- name: Create groups based on the machine architecture
ansible.builtin.group_by:
key: machine_{{ ansible_machine }}
- name: Create groups like 'virt_kvm_host'
ansible.builtin.group_by:
key: virt_{{ ansible_virtualization_type }}_{{ ansible_virtualization_role }}
- name: Create nested groups
ansible.builtin.group_by:
key: el{{ ansible_distribution_major_version }}-{{ ansible_architecture }}
parents:
- el{{ ansible_distribution_major_version }}
- name: Add all active hosts to a static group
ansible.builtin.group_by:
key: done
Authors
Jeroen Hoekx (@jhoekx)