Hi, I have an inventory file: [dev] dev_server1
[uat] uat_server1 [prod] prod_server1 variables file: env_lists: - env_list: env_list1 envs: - dev - uat - prod - env_list: env_list2 envs: - prod - env_list: env_list3 envs: - dev - prod I'm trying to run a task on each env_list. Eg - hosts: env_list2* tasks: - include: a_task_that_will_run_on_prod_server1_only.yml My best guess is to construct new groups using group_by: - hosts: all tasks: group_by: key={{item.0.env_list}}_{{item.1}} with_subelements: - "{{ env_lists }}" - envs - debug: var=group_names This correctly outputs the right group names, eg: env_list2_prod But env_list2_prod contains all servers instead of just prod_server1. In other words, when I run a task on hosts: env_list2*, it runs on all the servers. I know I could use a Dynamic Inventory Script, but would be a fair amount of work. Hoping there's a group_by way. Any ideas? Many thanks. -- You received this message because you are subscribed to the Google Groups "Ansible Project" group. To unsubscribe from this group and stop receiving emails from it, send an email to ansible-project+unsubscr...@googlegroups.com. To post to this group, send email to ansible-project@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/8f1acf79-b0b9-4db3-a3e7-00f9fbe0e7a6%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.