Hi,
You would need to write extra code to filter for groups.
Use as source the inventory with the groups you want to filter.
i.e. ---
plugin: constructed
# true means if any of the checks return 'false' the whole sync fails
strict: false
# might not be necessary
use_extra_vars: true
# check if Linux OS
compose:
# general check if any of the group name contain certain keywords
linux_group: (group_names | regex_findall('.*ubuntu.*|.*redhat.*|.*rhel.*|.*debian.*|.*centos.*|.*sles.*|.*suse.*|.*oraclelinux.*|.*azure_os_linux.*')) | length >= 1
groups:
# create the "filter/limit" group[s] 'azure_loc_westus2' comes from the source inventory
az_linux_eastwestus2_patchwave2: ((group_names | intersect(['azure_loc_westus2', 'azure_loc_eastus2', 'tag_patchwave_2'])) | length >= 2) and linux_group
You can then limit for 'az_linux_eastwestus2_patchwave2'
Disadvantage with constructed inventories, at the moment it will duplicate every host that matches, by creating a new host in this new constructed inventory. Even in the same organisation.
Cheers,
Marcus