--- #-----------------------------------------------------------------------------# # 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 . # # # #-----------------------------------------------------------------------------# - name: Fail if variables are not used correctly ansible.builtin.fail: msg: You need to define variable ynh_backup.apps and / or ynh_backup.system to True when: ynh_backup.apps | default(True) is false and ynh_backup.system | default(True) is false tags: backup - name: Create backup folder if doesn't already exist ansible.builtin.file: path: "{{ ynh_backup.directory }}" state: directory mode: '0750' when: ynh_backup.directory is defined tags: backup - name: Create backup script ansible.builtin.template: src: "{{ ynh_backup_src_script }}" dest: "{{ ynh_backup_dest_script }}" owner: root group: root mode: '0740' tags: backup - name: Create cron task to schedule YNH backup script ansible.builtin.cron: name: "auto-backup to {{ ynh_backup.directory | default(_ynh_backup_directory) }}" month: "{{ ynh_backup.scheduled_month | default('*') }}" weekday: "{{ ynh_backup.scheduled_weekday | default('*') }}" hour: "{{ ynh_backup.scheduled_hour | default('1') }}" minute: "{{ ynh_backup.scheduled_minute | default('0') }}" user: root job: "{{ ynh_backup_dest_script }}" cron_file: ynh_backup_cron tags: backup