Pour tout problème contactez-nous par mail : support@froggit.fr | La FAQ :grey_question: | Rejoignez-nous sur le Chat :speech_balloon:

Skip to content
Snippets Groups Projects
Commit 8779dd5c authored by Arthur BOUDREAULT's avatar Arthur BOUDREAULT
Browse files

docs(ynh_backup): add info about borg backup setup and configuration

parent 793fd7de
No related branches found
No related tags found
No related merge requests found
Pipeline #6962 failed
# Rôle Ansible : Yunohost Backup
# Rôle Ansible : YunoHost Backup
[🇬🇧 English version](README.md)
Sauvegardez [Yunohost](https://yunohost.org/#/) avec Ansible !
Sauvegardez [YunoHost](https://yunohost.org/#/) avec Ansible !
## Prérequis
Yunohost doit déjà être installé sur votre serveur.
YunoHost doit déjà être installé sur votre serveur.
## Variables du rôle
Les variables par défaut sont disponibles dans `default/main.yml` cependant il est possible de les surcharger selon vos besoins en ...
Les variables par défaut sont disponibles dans `default/main.yml` cependant il est possible de les surcharger selon vos besoins.
Nous avons intégré deux systèmes de sauvegardes différents à ce rôle YunoHost :
### Gestion des sauvegardes
- Les backups locaux natifs à YunoHost : YunoHost propose son propre système de sauvegardes natif. Il est capable de sauvegarder la configuration YunoHost, les mails (si YunoHost est utilisé en tant que serveur de mails) et les applications installées sur YunoHost. Il est possible de créer et restaurer les sauvegardes depuis l'interface d'administration web ainsi que la ligne de commande en SSH (`yunohost backup`). Les sauvegardes sont disponibles en local et nous avons automatisé le déclenchement de ces sauvegardes. Plus d'infos [ici](https://yunohost.org/fr/backup).
- Les sauvegardes avec Borg Backup : Nous avons également intégré le rôle Ansible `m3nu.ansible_role_borgbackup` qui permet d'automatiser le processus d'installation et de configuration de Borg Backup sur un serveur YunoHost. Les sauvegardes Borg sont accessibles sur un dépôt Borg local ou distant.
### Gestion des sauvegardes : sauvegardes natives YunoHost
```yml
ynh_backup:
......@@ -28,23 +33,25 @@ ynh_backup:
dest_script: "/usr/bin"
```
La tâche _backup_ va permettre de sauvegarder les applications Yunohost ainsi que leurs données grâce à la mise en place d'une tâche cron. Cette sauvegarde utilise celle fournie par [Yunohost](https://yunohost.org/fr/backup) et elle est locale au serveur.
La tâche _backup_ va permettre de sauvegarder les applications YunoHost ainsi que leurs données grâce à la mise en place d'une tâche cron. Cette sauvegarde utilise celle fournie par [Yunohost](https://yunohost.org/fr/backup) et elle est locale au serveur.
- `ynh_backup.scheduled` : active la fonctionnalité de sauvegarde des applications YunoHost, mettez la valeur à `True`.
- `ynh_backup.directory` : le dossier de sauvegarde par défaut est `/home/yunohost.backup/archives` cependant vous pouvez tout à fait choisir de sauvegarder les backups dans un autre dossier grâce à cette variable. Dans ce cas, de manière à pouvoir restaurer les backups depuis l'interface web, YunoHost créé automatiquement un lien symbolique de l'archive créée vers son dossier par défaut.
- `ynh_backup.scheduled_[hour|minute|weekday|month]`: modifie la planification de la tâche cron. Par défaut, elle se déclenchera tous les jours de l'année à 1 heure du matin. Pour plus d'informations concernant les réglages horaires cron, cet outil peut être utile : <https://crontab.guru/>.
- `ynh_backup.system` : est obligatoire. Activez la sauvegarde du système YunoHost en mettant la valeur à `True`.
- `ynh_backup.apps` : est obligatoire. Activez la sauvegarde des applications YunoHost en mettant la valeur à `True`.
- `ynh_backup.scheduled` : active la fonctionnalité de sauvegarde des applications Yunohost, mettez la valeur à `True`.
- `ynh_backup.directory` : le dossier de sauvegarde par défaut est `/home/yunohost.backup/archives` cependant vous pouvez tout à fait choisir de sauvegarder les backups dans un autre dossier grâce à cette variable. Dans ce cas, de manière à pouvoir restaurer les backups depuis l'interface web, Yunohost créé automatiquement un lien symbolique de l'archive créée vers son dossier par défaut.
- `ynh_backup.scheduled_[hour|minute|weekday|month]`: modifie la planification de la tâche cron. Par défaut elle se déclenchera tous les jours de l'année à 1 heure du matin. Pour plus d'informations concernant les réglages horaires cron, cet outil peut être utile : <https://crontab.guru/>.
- `ynh_backup.system` : est obligatoire. Activez la sauvegarde du système Yunohost en mettant la valeur à `True`.
- `ynh_backup.apps` : est obligatoire. Activez la sauvegarde des applications Yunohost en mettant la valeur à `True`.
### Gestion des sauvegardes : Sauvegardes Borg Backup
## Dépendances
Aucune.
**Optionnel** : Le rôle `m3nu.ansible_role_borgbackup` doit être installé sur la machine exécutant Ansible pour que les tâches liées à Borg fonctionnent. Un fichier `requirements.yml` est à la racine du rôle et va télécharger le rôle (par défaut vers `~/.ansible/roles`).
## Exemple de Playbook
```yml
---
- name: Configure Yunohost backups
- name: Configure YunoHost backups
hosts: all
become: True
......
# Ansible Role: Yunohost
# Ansible Role: YunoHost
[🇫🇷 French version](README-FR.md)
Deploy [Yunohost](https://yunohost.org/#/) with Ansible!
Deploy [YunoHost](https://yunohost.org/#/) with Ansible!
## Requirements
Yunohost needs to be installed on your server.
YunoHost needs to be installed on your server.
## Role Variables
Default variables are available in `default/main.yml` however it is necessary to override them according to your needs for ...
The default variables are available in `default/main.yml` however it is possible to override them according to your needs.
We have integrated two different backup systems to this YunoHost role:
- YunoHost native local backups: YunoHost provides its own native backup system. It is able to back up YunoHost configuration, mails (if YunoHost is used as a mail server) and applications installed on YunoHost. It is possible to create and restore backups from the web administration interface as well as from the command line in SSH (`yunohost backup`). Backups are available locally, and we have automated the triggering of these backups. More info [here](https://yunohost.org/fr/backup).
- Backups with Borg Backup: We have also integrated the Ansible role `m3nu.ansible_role_borgbackup` which allows to automate the installation and configuration process of Borg Backup on a YunoHost server. Borg backups are accessible on a local or a remote Borg repository. More info [here](https://github.com/borgbase/ansible-role-borgbackup).
### Backups management
......@@ -28,23 +33,23 @@ ynh_backup:
dest_script: "/usr/bin"
```
The _backup_ task will allow to backup Yunohost applications and their data by setting up a cron job. This backup uses the one provided by [Yunohost](https://yunohost.org/fr/backup) and it is local to the server.
The _backup_ task will allow to back up YunoHost applications and their data by setting up a cron job. This backup uses the one provided by [YunoHost](https://yunohost.org/fr/backup) and it is local to the server.
- `ynh_backup.scheduled`: to enable the Yunohost applications backup feature, set the value to `True`.
- `ynh_backup.directory`: the default backup folder is `/home/yunohost.backup/archives` however you can choose to save the backups in another folder with this variable. In this case, in order to be able to restore the backups from the web interface, Yunohost automatically creates a symbolic link from the created archive to its default folder.
- `ynh_backup.scheduled`: to enable the YunoHost applications backup feature, set the value to `True`.
- `ynh_backup.directory`: the default backup folder is `/home/yunohost.backup/archives` however you can choose to save the backups in another folder with this variable. In this case, in order to be able to restore the backups from the web interface, YunoHost automatically creates a symbolic link from the created archive to its default folder.
- `ynh_backup.scheduled_[hour|minute|weekday|month]`: modifies the scheduling of the cron task. By default it will run every day of the year at 1am. For more information about cron time settings, this tool can be useful: <https://crontab.guru/>.
- `ynh_backup.system` : is mandatory. Enables automatic backup of the Yunohost system by setting the value to `True`.
- `ynh_backup.apps` : is mandatory. Enables automatic backup of Yunohost applications by setting the value to `True`.
- `ynh_backup.system`: is mandatory. Enables automatic backup of the YunoHost system by setting the value to `True`.
- `ynh_backup.apps`: is mandatory. Enables automatic backup of YunoHost applications by setting the value to `True`.
## Dependencies
None.
**Optional**: The `m3nu.ansible_role_borgbackup` role must be installed on the machine running Ansible for Borg-related tasks to work. A `requirements.yml` file is in the root of the role and will download the role (by default to `~/.ansible/roles`).
## Example Playbook
```yml
---
- name: Configure Yunohost backups
- name: Configure YunoHost backups
hosts: all
become: True
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment