# SPDX-FileCopyrightText: 2023 Aravinth Manivannan # # SPDX-License-Identifier: AGPL-3.0-or-later --- - name: Install redis-server become: true ansible.builtin.apt: update_cache: true cache_valid_time: 3600 pkg: - redis-server - name: Create Redis plugins dir become: true notify: restart redis ansible.builtin.file: path: /usr/lib/redis/modules owner: redis group: redis state: directory mode: "0755" - name: Load mCaptcha module become: true notify: restart redis ansible.builtin.lineinfile: dest: /etc/redis/redis.conf line: "{{ item }}" loop: - "loadmodule /usr/lib/redis/modules/libcache.so" - "bind 0.0.0.0" - name: Copy custom Redis configuration become: true notify: restart redis ansible.builtin.file: path: "{{ item }}" owner: redis group: redis force: true loop: - /etc/redis/redis.conf - /etc/redis/ - name: Create download dir ansible.builtin.file: path: /tmp/cache-lib state: directory mode: "0755" - name: Download plugin ansible.builtin.get_url: url: https://dl.mcaptcha.org/mcaptcha/cache/master/cache-master-linux-amd64.tar.gz dest: /tmp/cache-lib/ checksum: sha256:https://dl.mcaptcha.org/mcaptcha/cache/master/cache-master-linux-amd64.tar.gz.sha256 - name: Extract cache-master-linux-amd64.tar.gz into /var/lib/foo ansible.builtin.unarchive: src: /tmp/cache-lib/cache-master-linux-amd64.tar.gz remote_src: true dest: /tmp/cache-lib/ - name: Copy custom Redis configuration become: true notify: restart redis ansible.builtin.copy: src: /tmp/cache-lib/cache-master-linux-amd64/libcache.so remote_src: true dest: /usr/lib/redis/modules/ owner: redis group: redis force: true mode: "0755" # - name: Delete download dir # ansible.builtin.file: # path: /tmp/cache-lib # state: absent - name: Allow port 6379 for redis become: true community.general.ufw: state: enabled rule: allow proto: tcp port: "6379"