# SPDX-FileCopyrightText: 2023 Aravinth Manivannan # # SPDX-License-Identifier: AGPL-3.0-or-later --- - name: Create mCaptcha systemd user become: true ansible.builtin.user: name: mcaptcha state: present system: true comment: mCaptcha systemd user - name: Create download dir ansible.builtin.file: path: /tmp/mcaptcha-dl state: directory mode: "0755" - name: Download binary ansible.builtin.get_url: url: https://dl.mcaptcha.org/mcaptcha/mCaptcha/master/mcaptcha-master-linux-amd64.tar.gz dest: /tmp/mcaptcha-dl checksum: sha256:https://dl.mcaptcha.org/mcaptcha/mCaptcha/master/mcaptcha-master-linux-amd64.tar.gz.sha256 - name: Extract mcaptcha-master-linux-amd64.tar.gz into /var/lib/foo ansible.builtin.unarchive: src: /tmp/mcaptcha-dl/mcaptcha-master-linux-amd64.tar.gz remote_src: true dest: /tmp/mcaptcha-dl/ - name: Install binary become: true notify: restart mcaptcha ansible.builtin.copy: src: /tmp/mcaptcha-dl/mcaptcha-master-linux-amd64/mcaptcha remote_src: true dest: /usr/local/bin/mcaptcha owner: root group: root force: true mode: "0755" - name: Copy mCaptcha systemd servicefile become: true ansible.builtin.copy: src: ./artifacts/mcaptcha/mcaptcha.service dest: /etc/systemd/system/ owner: root group: root force: true mode: "0777" - name: Create mCaptcha config dir become: true ansible.builtin.file: path: /etc/mcaptcha state: directory mode: "0755" - name: Copy mCaptcha systemd servicefile become: true notify: restart mcaptcha ansible.builtin.template: src: ./templates/mcaptcha/config.toml.j2 dest: /etc/mcaptcha/config.toml owner: root group: root force: true mode: "0644" - name: Run mCaptcha as a systemd service become: true ansible.builtin.systemd_service: name: mcaptcha daemon_reload: true state: started enabled: true - name: Delete download dir ansible.builtin.file: path: /tmp/mcaptcha-dl state: absent