--- # find current zabbix version - name: "check for old zabbix-release" ansible.builtin.shell: cmd: "zabbix_agent2 --version | head -n 1" changed_when: false failed_when: false ignore_errors: true register: "zabbix_current_version" # install zabbix-agent2 - name: "install zabbix-agent2" when: "zabbix_major_version not in zabbix_current_version.stdout" block: # install repository - debian - name: "install repository" when: 'ansible_os_family == "Debian"' block: # remove old agent - name: "remove old agent" ansible.builtin.apt: name: "zabbix-agent*" state: "absent" # install agent - name: "install agent" ansible.builtin.apt: name: "{{ item }}" state: "present" update_cache: true when: 'ansible_os_family == "Debian"' loop: - "zabbix-agent2" - "zabbix-agent2-plugin-*" # install repository - suse - name: "install repository" when: 'ansible_os_family == "Suse"' block: # remove old agent - name: "remove old agent" ansible.builtin.zypper: name: "zabbix-agent*" state: "absent" # install agent - name: "install agent" ansible.builtin.zypper: name: "{{ item }}" disable_recommends: false state: "present" when: 'ansible_os_family == "Suse"' loop: - "zabbix-agent2" - "zabbix-agent2-plugin-*" # install sudoers file - name: "install sudoers file" ansible.builtin.template: src: "templates/sudoers.d/zabbix.j2" dest: "/etc/sudoers.d/zabbix" owner: "root" group: "root" mode: "0440" when: "zabbix_sudo_user"