oopen-server/roles/common/tasks/redis-server.yml
2022-11-25 01:07:36 +01:00

112 lines
2.9 KiB
YAML

---
- name: (redis-server.yml) update
apt:
update_cache: true
cache_valid_time: "{{ 0 if apt_config_updated is defined and apt_config_updated.changed else apt_update_cache_valid_time }}"
when: apt_update|bool
tags:
- redis-server
- name: (redis-server.yml) dpkg --configure
command: >
dpkg --configure -a
args:
warn: false
changed_when: _dpkg_configure.stdout_lines | length
register: _dpkg_configure
when: apt_dpkg_configure|bool
tags:
- redis-server
- name: (redis-server.yml) upgrade
apt:
upgrade: "{{ apt_upgrade_type }}"
update_cache: true
dpkg_options: "{{ apt_upgrade_dpkg_options | join(',') }}"
when: apt_upgrade|bool
tags:
- redis-server
- name: (redis-server.yml) Install redis-server packages
apt:
name: redis-server
state: present
tags:
- redis-server
- name: (redis-server.yml) Determine available users
getent:
database: passwd
tags:
- redis-server
- name: (redis-server.yml) Determine available groups
getent:
database: group
tags:
- redis-server
- name: (redis-server.yml) Add user 'www-data' to group 'redis'
user:
name: www-data
groups: redis
append: yes
when:
- "'www-data' in my_users"
- "'redis' in my_groups"
vars:
my_users: "{{ getent_passwd.keys()|list }}"
my_groups: "{{ getent_group.keys()|list }}"
tags:
- redis-server
- name: (redis-server.yml) Add user 'webadmin' to group 'redis'
user:
name: webadmin
groups: redis
append: yes
when:
- "'webadmin' in my_users"
- "'redis' in my_groups"
vars:
my_users: "{{ getent_passwd.keys()|list }}"
my_groups: "{{ getent_group.keys()|list }}"
tags:
- redis-server
- name: (redis-server.yml) Check if file '/etc/redis/redis.conf.ORIG' exists
stat:
path: /etc/redis/redis.conf.ORIG
register: redis_conf_exists
tags:
- redis-server
- name: (redis-server.yml) Backup existing file /etc/redis/redis.conf.
command: cp -a /etc/redis/redis.conf /etc/redis/redis.conf.ORIG
when:
- redis_conf_exists.stat.exists == False
tags:
- redis-server
- name: (redis-server.yml) adjust configuration '/etc/redis/redis.conf'
lineinfile:
dest: /etc/redis/redis.conf
regexp: "{{ item.regexp }}"
insertafter: "{{ item.insertafter }}"
line: "{{ item.key }} {{ item.val }}"
state: present
loop:
- { regexp: '^bind\s+', key: 'bind', val: '127.0.0.1 ::1', insertafter: '^#\s*bind\s+' }
- { regexp: '^port\s+', key: 'port', val: '6379', insertafter: '^#\s*port\s+' }
- { regexp: '^unixsocket\s+', key: 'unixsocket', val: '/run/redis/redis-server.sock', insertafter: '^#\s*unixsocketperm' }
- { regexp: '^unixsocketperm', key: 'unixsocketperm', val: '770', insertafter: '^unixsocket\s+' }
- { regexp: '^logfile', key: 'logfile', val: '/var/log/redis/redis-server.log', insertafter: '^#\s+logfile\s+' }
notify: "Restart redis-server"
tags:
- redis-server