---
- name: enable overcommit in sysctl
  sysctl:
    name: vm.overcommit_memory
    value: 1
    state: present
    reload: yes
    ignoreerrors: yes
  when: redis_travis_ci is not defined

- name: compile redis
  command: make -j{{ ansible_processor_cores + 1 }}{{ ' 32bit' if redis_make_32bit|bool else '' }}
  args:
    chdir: /usr/local/src/redis-{{ redis_version }}
    creates: /usr/local/src/redis-{{ redis_version }}/src/redis-server

- name: create redis install directory
  file:
    path: "{{ redis_install_dir }}"
    state: directory

- name: create /etc/redis
  file:
    path: /etc/redis
    state: directory

- name: check if redis user exists (ignore errors)
  command: id {{ redis_user }}
  ignore_errors: yes
  changed_when: false
  register: user_exists

- name: add redis user
  user:
    name: "{{ redis_user }}"
    comment: "Redis"
    home: "{{ redis_install_dir }}"
    shell: /bin/false
    system: yes
  when: user_exists|failed


- name: create /var/run/redis
  file:
    path: /var/run/redis
    state: directory
    owner: "{{ redis_user }}"

- name: install redis
  command: make PREFIX={{ redis_install_dir }} install
  args:
    chdir: /usr/local/src/redis-{{ redis_version }}
    creates: "{{ redis_install_dir }}/bin/redis-server"
