Jérémy Lecour
ee21973371
All checks were successful
Ansible Lint |Total|New|Outstanding|Fixed|Trend
|:-:|:-:|:-:|:-:|:-:
|2777|524|2253|2462|:+1:
Reference build: <a href="https://jenkins.evolix.org/job/gitea/job/ansible-roles/job/unstable/223//ansiblelint">Evolix » ansible-roles » unstable #223</a>
gitea/ansible-roles/pipeline/head This commit looks good
Fully Qualified Collection Name
163 lines
4.3 KiB
YAML
163 lines
4.3 KiB
YAML
---
|
|
|
|
- ansible.builtin.set_fact:
|
|
redis_restart_handler_name: "{{ redis_restart_if_needed | bool | ternary('restart redis', 'restart redis (noop)') }}"
|
|
|
|
- name: Linux kernel overcommit memory setting is enabled
|
|
ansible.posix.sysctl:
|
|
name: "vm.overcommit_memory"
|
|
value: "1"
|
|
sysctl_file: "/etc/sysctl.d/evolinux-redis.conf"
|
|
state: present
|
|
reload: yes
|
|
|
|
- name: Customize Kernel Transparent Huge Page
|
|
ansible.builtin.include: thp.yml
|
|
when: redis_sysctl_transparent_hugepage_enabled is not none
|
|
|
|
- name: Redis is installed
|
|
ansible.builtin.apt:
|
|
name:
|
|
- redis-server
|
|
- redis-tools
|
|
state: present
|
|
tags:
|
|
- redis
|
|
- packages
|
|
|
|
- name: Redis Sentinel is installed
|
|
ansible.builtin.apt:
|
|
name: "redis-sentinel"
|
|
state: present
|
|
tags:
|
|
- redis
|
|
- packages
|
|
when: redis_sentinel_install | bool
|
|
|
|
- name: Get Redis version
|
|
ansible.builtin.shell:
|
|
cmd: "redis-server -v | grep -Eo '(v=\\S+)' | cut -d'=' -f 2 | grep -E '^([0-9]|\\.)+$'"
|
|
changed_when: False
|
|
check_mode: no
|
|
register: _redis_installed_version
|
|
tags:
|
|
- redis
|
|
|
|
- ansible.builtin.set_fact:
|
|
redis_installed_version: "{{ _redis_installed_version.stdout }}"
|
|
check_mode: no
|
|
tags:
|
|
- redis
|
|
|
|
- name: set variables for default mode
|
|
ansible.builtin.set_fact:
|
|
redis_conf_dir: "{{ redis_conf_dir_prefix }}"
|
|
redis_socket_dir: "{{ redis_socket_dir_prefix }}"
|
|
redis_pid_dir: "{{ redis_pid_dir_prefix }}"
|
|
redis_log_dir: "{{ redis_log_dir_prefix }}"
|
|
redis_data_dir: "{{ redis_data_dir_prefix }}"
|
|
when: redis_instance_name is not defined
|
|
|
|
- name: set variables for instance mode
|
|
ansible.builtin.set_fact:
|
|
redis_systemd_name: "redis-server@{{ redis_instance_name }}"
|
|
redis_conf_dir: "{{ redis_conf_dir_prefix }}-{{ redis_instance_name }}"
|
|
redis_socket_dir: "{{ redis_socket_dir_prefix }}-{{ redis_instance_name }}"
|
|
redis_pid_dir: "{{ redis_pid_dir_prefix }}-{{ redis_instance_name }}"
|
|
redis_log_dir: "{{ redis_log_dir_prefix }}-{{ redis_instance_name }}"
|
|
redis_data_dir: "{{ redis_data_dir_prefix }}-{{ redis_instance_name }}"
|
|
when: redis_instance_name is defined
|
|
|
|
- name: Fail if redis_bind_interface is set
|
|
ansible.builtin.fail:
|
|
msg: "Please change 'redis_bind_interface' (String) to 'redis_bind_interfaces' (List)"
|
|
when:
|
|
- redis_bind_interface is defined
|
|
- redis_bind_interface is not none
|
|
- redis_bind_interface | length > 0
|
|
|
|
- name: configure Redis for default mode
|
|
ansible.builtin.include: default-server.yml
|
|
when: redis_instance_name is not defined
|
|
|
|
- name: configure Redis for instance mode
|
|
ansible.builtin.include: instance-server.yml
|
|
when: redis_instance_name is defined
|
|
|
|
- name: Is Munin installed
|
|
ansible.builtin.stat:
|
|
path: /etc/munin/plugins
|
|
register: _munin_installed
|
|
tags:
|
|
- redis
|
|
- munin
|
|
|
|
- name: configure Munin for default mode
|
|
ansible.builtin.include: default-munin.yml
|
|
when:
|
|
- _munin_installed.stat.exists
|
|
- _munin_installed.stat.isdir
|
|
- redis_instance_name is undefined
|
|
tags:
|
|
- redis
|
|
- munin
|
|
|
|
- name: configure Munin for instance mode
|
|
ansible.builtin.include: instance-munin.yml
|
|
when:
|
|
- _munin_installed.stat.exists
|
|
- _munin_installed.stat.isdir
|
|
- redis_instance_name is defined
|
|
tags:
|
|
- redis
|
|
- munin
|
|
|
|
- name: Is log2mail installed
|
|
ansible.builtin.stat:
|
|
path: /etc/log2mail/config
|
|
register: _log2mail_installed
|
|
tags:
|
|
- redis
|
|
- log2mail
|
|
|
|
- name: configure log2mail for default mode
|
|
ansible.builtin.include: default-log2mail.yml
|
|
when:
|
|
- _log2mail_installed.stat.exists
|
|
- _log2mail_installed.stat.isdir
|
|
- redis_instance_name is undefined
|
|
tags:
|
|
- redis
|
|
- log2mail
|
|
|
|
- name: configure log2mail for instance mode
|
|
ansible.builtin.include: instance-log2mail.yml
|
|
when:
|
|
- _log2mail_installed.stat.exists
|
|
- _log2mail_installed.stat.isdir
|
|
- redis_instance_name is defined
|
|
tags:
|
|
- redis
|
|
- log2mail
|
|
|
|
- name: is NRPE present ?
|
|
ansible.builtin.stat:
|
|
path: /etc/nagios/nrpe.d/evolix.cfg
|
|
check_mode: no
|
|
register: nrpe_evolix_config
|
|
tags:
|
|
- redis
|
|
- nrpe
|
|
|
|
- ansible.builtin.include: nrpe.yml
|
|
when: nrpe_evolix_config.stat.exists
|
|
tags:
|
|
- redis
|
|
- nrpe
|
|
|
|
- name: Force restart redis
|
|
ansible.builtin.command:
|
|
cmd: /bin/true
|
|
notify: restart redis
|
|
when: redis_restart_force | bool
|