--- #-----------------------------------------------------------------------------# # ansible-yunohost allows to deploy Yunohost using Ansible # # Copyright 2021-present Lydra https://www.lydra.fr/ # # # # this program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # # the Free Software Foundation, either version 3 of the License, or # # (at your option) any later version. # # # # this program is distributed in the hope that it will be useful, # # but WITHOUT ANY WARRANTY; without even the implied warranty of # # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # # GNU General Public License for more details. # # # # You should have received a copy of the GNU General Public License # # along with this program. If not, see <http://www.gnu.org/licenses/>. # # # #-----------------------------------------------------------------------------# - name: Configure host for Borg Remote repository block: - name: deploy ssh public key for BorgBackup ansible.builtin.copy: src: "{{ borg_ssh_keys_src }}.pub" dest: "{{ borg_ssh_keys_dest }}.pub" owner: "{{ admin_user }}" group: "{{ admin_user }}" mode: 0600 - name: deploy ssh private key for BorgBackup ansible.builtin.copy: src: "{{ borg_ssh_keys_src }}" dest: "{{ borg_ssh_keys_dest }}" owner: "{{ admin_user }}" group: "{{ admin_user }}" mode: 0600 - name: change ssh command in "/etc/borgmatic/{{ borgmatic_config_name }}" ansible.builtin.lineinfile: path: "/etc/borgmatic/{{ borgmatic_config_name }}" regexp: "# ssh_command: ssh -i ~/.ssh/id_ed25519" line: " ssh_command: ssh -p 7410 -o StrictHostKeychecking=no -i {{ borg_ssh_keys_dest }}" state: present - name: change archive name in "/etc/borgmatic/{{ borgmatic_config_name }}" ansible.builtin.lineinfile: path: "/etc/borgmatic/{{ borgmatic_config_name }}" regexp: "archive_name_format:" line: " archive_name_format: {{ borg_archive_name_format }}" state: present - name: Create borg command in /usr/local/bin ansible.builtin.copy: content: | #!/bin/bash . /opt/borgmatic/bin/activate borg "$@" dest: /usr/local/bin/borg owner: root group: root mode: "0755" - name: Initialize a new Borg remote repository ansible.builtin.command: "{{ borg_init_command }}"