--- # .. vim: foldmarker=[[[,]]]:foldmethod=marker # # tasks file for ipr.ansible.xymon - name: Load specific OS vars for xymon include_vars: "{{ item }}" with_first_found: - "{{ ansible_distribution|lower }}-{{ ansible_distribution_version }}.yml" - "{{ ansible_distribution|lower }}.yml" - "{{ ansible_os_family|lower }}.yml" # Manage required client packages [[[1 - name: client package package: name: '{{ item }}' state: '{{ xymon_cli_pkg_state }}' with_items: - '{{ xymon_cli_pkg_list | to_nice_json }}' register: cli_result until: cli_result is success when: xymon_cli_manage|bool # Manage client configuration [[[1 - name: CONFIG xymon-client service template: src: '{{ xymon_cli_default_conf_tpl }}' dest: '{{ xymon_cli_default_conf_path }}' owner: root group: root mode: 0644 backup: true when: xymon_cli_manage|bool notify: restart xymon-client service - name: CONFIG xymon user's groups user: name: xymon groups: '{{ xymon_user_groups }}' append: true when: xymon_cli_manage|bool notify: restart xymon-client service # Manage service [[[1 - name: SERVICE manage '{{ xymon_cli_service_name }}' service: name: '{{ xymon_cli_service_name }}' state: started enabled: '{{ xymon_cli_service_enabled }}' when: (xymon_cli_manage|bool and xymon_cli_service_manage|bool) # Manage apt plugin [[[1 - name: PLUGIN apt packages package: name: '{{ item }}' state: 'present' with_items: - '{{ xymon_plug_apt_package | to_nice_json }}' when: (xymon_cli_manage|bool and xymon_plug_manage|bool and xymon_plug_apt_state|bool) register: apt_plug_result until: apt_plug_result is success notify: restart xymon-client service - name: PLUGIN apt template: src: '{{ xymon_plug_apt_tpl }}' dest: '{{ xymon_plug_apt_path }}' owner: root group: root mode: 0644 when: (xymon_cli_manage|bool and xymon_plug_manage|bool) notify: restart xymon-client service - name: PLUGIN apt no_repo_accept whitelist template: src: 'etc/xymon/apt_no_repo_accept.j2' dest: '/etc/xymon/apt_no_repo_accept' owner: root group: root mode: 0644 when: (xymon_cli_manage|bool and xymon_plug_manage|bool) notify: restart xymon-client service # Manage ipmi plugin [[[1 - name: PLUGIN ipmi packages package: name: '{{ item }}' state: 'present' with_items: - '{{ xymon_cli__plug_ipmi_package | to_nice_json }}' register: ipmi_plug_result until: ipmi_plug_result is success when: (xymon_cli_manage|bool and xymon_plug_manage|bool and xymon_cli__plug_ipmi_state|bool) notify: restart xymon-client service - name: PLUGIN ipmi template: src: '{{ xymon_cli__plug_ipmi_tpl }}' dest: '{{ xymon_cli__plug_ipmi_path }}' owner: root group: root mode: 0644 when: (xymon_cli_manage|bool and xymon_plug_manage|bool) notify: restart xymon-client service # Manage libs plugin [[[1 - name: PLUGIN libs packages package: name: '{{ item }}' state: 'present' with_items: - '{{ xymon_plug_libs_package | to_nice_json }}' register: libs_plug_result until: libs_plug_result is success when: (xymon_cli_manage|bool and xymon_plug_manage|bool and xymon_plug_libs_state|bool) notify: restart xymon-client service - name: PLUGIN libs template: src: '{{ xymon_plug_libs_tpl }}' dest: '{{ xymon_plug_libs_path }}' owner: root group: root mode: 0644 when: (xymon_cli_manage|bool and xymon_plug_manage|bool) notify: restart xymon-client service - name: PLUGIN libs whitelist template: src: 'etc/xymon/libs.local.yaml.j2' dest: '/etc/xymon/libs.local.yaml' owner: root group: root mode: 0644 when: (xymon_cli_manage|bool and xymon_plug_manage|bool) notify: restart xymon-client service # Manage mq plugin [[[1 - name: PLUGIN mq packages package: name: '{{ item }}' state: 'present' with_items: - '{{ xymon_plug_mq_package | to_nice_json }}' register: mq_plug_result until: mq_plug_result is success when: (xymon_cli_manage|bool and xymon_plug_manage|bool and xymon_plug_mq_state|bool) notify: restart xymon-client service - name: PLUGIN mq template: src: '{{ xymon_plug_mq_tpl }}' dest: '{{ xymon_plug_mq_path }}' owner: root group: root mode: 0644 when: (xymon_cli_manage|bool and xymon_plug_manage|bool) notify: restart xymon-client service # Manage netstats plugin [[[1 - name: PLUGIN netstats packages package: name: '{{ item }}' state: 'present' with_items: - '{{ xymon_cli__plug_netstats_package | to_nice_json }}' register: netstats_plug_result until: netstats_plug_result is success when: (xymon_cli_manage|bool and xymon_plug_manage|bool and xymon_cli__plug_netstats_state|bool) notify: restart xymon-client service - name: PLUGIN netstats config template: src: '{{ xymon_cli__plug_netstats_tpl }}' dest: '{{ xymon_cli__plug_netstats_path }}' owner: root group: root mode: 0644 when: (xymon_cli_manage|bool and xymon_plug_manage|bool) notify: restart xymon-client service # Manage smartoverall plugin [[[1 - name: PLUGIN smartoverall packages package: name: '{{ item }}' state: 'present' with_items: - '{{ xymon_cli__plug_smartoverall_package | to_nice_json }}' register: smartoverall_plug_result until: smartoverall_plug_result is success when: (xymon_cli_manage|bool and xymon_plug_manage|bool and xymon_cli__plug_smartoverall_state|bool) notify: restart xymon-client service - name: PLUGIN smartoverall config template: src: '{{ xymon_cli__plug_smartoverall_tpl }}' dest: '{{ xymon_cli__plug_smartoverall_path }}' owner: root group: root mode: 0644 when: (xymon_cli_manage|bool and xymon_plug_manage|bool) notify: restart xymon-client service - name: PLUGIN smartoverall script file from template template: src: '{{ xymon_cli__plug_smartoverall_script_tpl }}' dest: '{{ xymon_cli__plug_smartoverall_script_path }}' owner: root group: xymon mode: 0755 when: (xymon_cli_manage|bool and xymon_plug_manage|bool and xymon_cli__plug_smartoverall_script_url|length == 0 ) notify: restart xymon-client service - name: PLUGIN smartoverall script file from URL get_url: url: '{{ xymon_cli__plug_smartoverall_script_url }}' dest: '{{ xymon_cli__plug_smartoverall_script_path }}' owner: root group: xymon mode: 0755 when: (xymon_cli_manage|bool and xymon_plug_manage|bool and xymon_cli__plug_smartoverall_script_url|length > 0 ) notify: restart xymon-client service # Manage smart plugin [[[1 - name: PLUGIN smart packages package: name: '{{ item }}' state: 'present' with_items: - '{{ xymon_cli__plug_smart_package | to_nice_json }}' register: smart_plug_result until: smart_plug_result is success when: (xymon_cli_manage|bool and xymon_plug_manage|bool and xymon_cli__plug_smart_state|bool) notify: restart xymon-client service - name: PLUGIN smart config template: src: '{{ xymon_cli__plug_smart_tpl }}' dest: '{{ xymon_cli__plug_smart_path }}' owner: root group: root mode: 0644 when: (xymon_cli_manage|bool and xymon_plug_manage|bool) notify: restart xymon-client service - name: PLUGIN smart script file from template template: src: '{{ xymon_cli__plug_smart_script_tpl }}' dest: '{{ xymon_cli__plug_smart_script_path }}' owner: root group: xymon mode: 0755 when: (xymon_cli_manage|bool and xymon_plug_manage|bool and xymon_cli__plug_smart_script_url|length == 0 ) notify: restart xymon-client service - name: PLUGIN smart script file from URL get_url: url: '{{ xymon_cli__plug_smart_script_url }}' dest: '{{ xymon_cli__plug_smart_script_path }}' owner: root group: xymon mode: 0755 when: (xymon_cli_manage|bool and xymon_plug_manage|bool and xymon_cli__plug_smart_script_url|length > 0 ) notify: restart xymon-client service # Manage zfs plugin [[[1 - name: PLUGIN zfs config file template: src: '{{ xymon_cli__plug_zfs_tpl }}' dest: '{{ xymon_cli__plug_zfs_path }}' owner: root group: root mode: 0644 when: (xymon_cli_manage|bool and xymon_plug_manage|bool) notify: restart xymon-client service - name: PLUGIN zfs script file template: src: '{{ xymon_cli__plug_zfs_script_tpl }}' dest: '{{ xymon_cli__plug_zfs_script_path }}' owner: root group: xymon mode: 0755 when: (xymon_cli_manage|bool and xymon_plug_manage|bool) notify: restart xymon-client service