--- - hosts: localhost gather_facts: no vars: g_zserver: http://localhost/zabbix/api_jsonrpc.php g_zuser: Admin g_zpassword: zabbix roles: - ../../../roles/os_zabbix post_tasks: - zbx_template: server: "{{ g_zserver }}" user: "{{ g_zuser }}" password: "{{ g_zpassword }}" state: list name: 'Template Heartbeat' register: templ_heartbeat - zbx_template: server: "{{ g_zserver }}" user: "{{ g_zuser }}" password: "{{ g_zpassword }}" state: list name: 'Template App Zabbix Server' register: templ_zabbix_server - zbx_template: server: "{{ g_zserver }}" user: "{{ g_zuser }}" password: "{{ g_zpassword }}" state: list name: 'Template App Zabbix Agent' register: templ_zabbix_agent - zbx_template: server: "{{ g_zserver }}" user: "{{ g_zuser }}" password: "{{ g_zpassword }}" state: list register: templates - debug: var=templ_heartbeat.results - zbx_template: server: "{{ g_zserver }}" user: "{{ g_zuser }}" password: "{{ g_zpassword }}" state: absent with_items: "{{ templates.results | difference(templ_zabbix_agent.results) | difference(templ_zabbix_server.results) | oo_collect('host') }}" when: templ_heartbeat.results | length == 0