From 12030779b21216c1d357209ec98344ead6c993e4 Mon Sep 17 00:00:00 2001 From: Arthur BOUDREAULT <arthur@lydra.fr> Date: Tue, 26 Jul 2022 10:21:44 +0200 Subject: [PATCH] --wip-- [skip ci] --- roles/ynh_backup/defaults/main.yml | 27 +++++++++++++++++++++ roles/ynh_backup/tasks/restic.yml | 39 ++++++++++++++++++++++++++++++ 2 files changed, 66 insertions(+) diff --git a/roles/ynh_backup/defaults/main.yml b/roles/ynh_backup/defaults/main.yml index 7b616ac..c887dd4 100644 --- a/roles/ynh_backup/defaults/main.yml +++ b/roles/ynh_backup/defaults/main.yml @@ -30,3 +30,30 @@ borg_repository: "/data/backup/live" borg_init_command: "borgmatic init -c /etc/borgmatic/{{ borgmatic_config_name }} -e repokey --syslog-verbosity 1" borg_archive_name_format: "'{hostname}-yunohost-live-data-{now:%Y-%m-%d-%H%M%S}'" ynh_borg_backup_remote_repo: False + +# Variables for YunoHost Restic S3 +# https://github.com/roles-ansible/ansible_role_restic +restic_version: '0.12.1' +restic_create_schedule: true +restic_schedule_type: cronjob + +# example: 1 year, 2 month, 0 day, 0 hours = 1y2m0d0h +restic_keep_time: 1y0m0d0h + +restic_repos: + local_ynh_restic_repo: + location: "/data/backup/restic" + password: "Pa$$w0rdT0Change" + init: true + +restic_backups: + YunoHost_local: + name: "local_ynh_restic" + repo: "local_ynh_restic_repo" + src: "/data/yunohost" + tags: + - yunohost + keep-within: "{{ restic_keep_time }}" + scheduled: true + schedule_hour: 5 + schedule_minute: 0 diff --git a/roles/ynh_backup/tasks/restic.yml b/roles/ynh_backup/tasks/restic.yml index e69de29..58cd5c7 100644 --- a/roles/ynh_backup/tasks/restic.yml +++ b/roles/ynh_backup/tasks/restic.yml @@ -0,0 +1,39 @@ +--- +#-----------------------------------------------------------------------------# +# 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: Download Restic role on localhost + ansible.builtin.command: ansible-galaxy install do1jlr.restic,v0.7.1 -p ~/.ansible/roles + delegate_to: localhost + become: False + tags: + - backup + - restic + +- name: Gather facts for Restic role + ansible.builtin.setup: + tags: + - backup + - restic + +- name: run Restic role + ansible.builtin.import_role: + name: do1jlr.restic + tags: + - backup + - restic -- GitLab