OK, I got it, although I'm sure there is a more elegant and simpler way to achieve the same result: - name: Removing a <nic_id> from the dictionary matching the <net_id> vars: vpc: provider: - net_type: 'db' net_ipv4_subnet: '10.0.0.0/16' net_ipv6_subnet: 'FD00::/64' net_id: '0' nic_ids: - 1111111111 - 2222222222 - net_type: 'dns' net_ipv4_subnet: '10.1.0.0/16' net_ipv6_subnet: 'FD01::/64' net_id: '1' nic_ids: - 3333333333 - 4444444444 - net_type: 'ns' net_ipv4_subnet: '10.2.0.0/16' net_ipv6_subnet: 'FD02::/64' net_id: '2' nic_ids: - 5555555555 - 6666666666 nic_ids_: - 4444444444 new_nic_ids: "{{ vpc.provider | selectattr('net_id', 'eq', '1') | map(attribute= 'nic_ids') | first | difference(nic_ids_) }}" seed_vpc: provider: - net_id: '1' nic_ids: "{{ new_nic_ids }}" new_vpc: provider: "{{ [vpc.provider, seed_vpc.provider] | community.general.lists_mergeby('net_id', recursive=True, list_merge='replace') }}" debug: msg: "{{ new_vpc }}"
-- 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 view this discussion on the web visit https://groups.google.com/d/msgid/ansible-project/9242158f-7d17-4135-be26-a0b52aacb94bn%40googlegroups.com.