---
# file: roles/serverdensity/tasks/main.yml

- name: "ServerDensity | Check for old version 1"
  shell: ls /etc/sd-agent/conf.d/disk.yaml.default
  register: sd_v2_available
  ignore_errors: yes
  changed_when: False

- include: uninstallv1.yml
  when: sd_v2_available.stdout != '/etc/sd-agent/conf.d/disk.yaml.default'

- name: "ServerDensity | Init SD plugin"
  local_action:
    serverdensity
    api_token={{ sd_api_token }}
    cleanup={{ sd_alert_cleanup }}
    force={{ sd_force_update }}
    cache={{ sd_api_cache_file }}
  when: sd_update_remote

- name: "ServerDensity | Install Public Repo Key"
  apt_key:
    url={{ sd_repo_public_key_uri }}
    state=present

- name: "ServerDensity | Add ServerDensity Repository To Apt"
  copy:
    content='deb http://archive.serverdensity.com/ubuntu/ all main'
    dest=/etc/apt/sources.list.d/sd-agent.list
    mode=644

- name: "ServerDensity | Install The Agent"
  apt:
    pkg=sd-agent
    state=installed
    update_cache=yes
  notify: "ServerDensity | Restart Agent"

- name: "ServerDensity | Create Plugins Directory"
  file:
    dest={{ sd_agent_plugins_dir }}
    state=directory
    mode=755

- name: "ServerDensity | Copy Plugins"
  copy:
    src={{ sd_plugins_files_dir }}/{{ item.1 }}
    dest={{ sd_agent_plugins_dir }}/{{ item.1 }}
  with_items: sd_plugins|dictsort
  when: sd_plugins|length > 0
  notify: "ServerDensity | Restart Agent"

- name: "ServerDensity | Configure The Agent"
  template:
    src={{ item }}
    dest=/etc/sd-agent/{{ item }}
    owner=root
    group=root
    mode=0644
  with_items:
    - 'config.cfg'
    - 'plugins.cfg'
    #- 'supervisor.conf'
  when: sd_agent_key != ''
  notify: "ServerDensity | Restart Agent"

- include: apache.yml
  when: sd_groups.apache != 'none' and inventory_hostname in groups[sd_groups.apache]

- include: mysql.yml
  when: sd_groups.mysql != 'none' and inventory_hostname in groups[sd_groups.mysql]
