1
0
Fork 0

feat: add m3nu_ansible_role_borgbackup_version to change version as we wish

This commit is contained in:
Arthur BOUDREAULT 2022-09-06 11:00:56 +02:00
parent d18f3590ee
commit 5073d9bf70
5 changed files with 48 additions and 34 deletions

View file

@ -8,6 +8,15 @@ and the commits message folow the [Conventional Commits](https://www.conventiona
## [[1.1.1] - 2022-09-05](https://lab.frogg.it/lydra/yunohost/ansible-yunohost/-/releases/1.1.1) ## [[1.1.1] - 2022-09-05](https://lab.frogg.it/lydra/yunohost/ansible-yunohost/-/releases/1.1.1)
### Added
- In role `ynh_backup`:
- Added Ansible variable `m3nu_ansible_role_borgbackup_version`. The default version of the role is v0.9.3, but it can easily be changed by overriding the default value. You can check the releases of the role [here](https://github.com/borgbase/ansible-role-borgbackup).
- Updated the readme files.
- In general readme:
- Added restic tag.
### Fixed ### Fixed
- In role `ynh_backup`: - In role `ynh_backup`:

View file

@ -47,21 +47,23 @@ ynh_backup:
- Les sauvegardes avec [BorgBackup](https://borgbackup.readthedocs.io/en/stable/) et [Borgmatic](https://github.com/witten/borgmatic) : Grâce au rôle Ansible `m3nu.ansible_role_borgbackup`, nous pouvons automatiser le processus d'installation et de configuration de BorgBackup sur un serveur YunoHost. Les sauvegardes Borg sont accessibles sur un dépôt Borg local ou distant. Plus d'info sur ce rôle [ici](https://github.com/borgbase/ansible-role-borgbackup) - Les sauvegardes avec [BorgBackup](https://borgbackup.readthedocs.io/en/stable/) et [Borgmatic](https://github.com/witten/borgmatic) : Grâce au rôle Ansible `m3nu.ansible_role_borgbackup`, nous pouvons automatiser le processus d'installation et de configuration de BorgBackup sur un serveur YunoHost. Les sauvegardes Borg sont accessibles sur un dépôt Borg local ou distant. Plus d'info sur ce rôle [ici](https://github.com/borgbase/ansible-role-borgbackup)
```yml ```yml
ynh_borg_backup_scheduled: True ynh_borg_backup_scheduled: True
borg_source_directories: "{{ ynh_backup.directory }}" m3nu_ansible_role_borgbackup_version: "v0.9.3"
borg_repository: "/data/backup/borg_repository" borg_source_directories: "{{ ynh_backup.directory }}"
borg_encryption_passphrase: "PLEASECHANGEME" borg_repository: "/data/backup/borg_repository"
borgmatic_config_name: "borgmatic_ynh_config" borg_encryption_passphrase: "PLEASECHANGEME"
borgmatic_cron_name: "borgmatic_ynh_cron" borgmatic_config_name: "borgmatic_ynh_config"
borgmatic_cron_name: "borgmatic_ynh_cron"
borg_retention_policy: borg_retention_policy:
keep_daily: "4" keep_daily: "4"
ynh_borg_backup_remote_repo: True ynh_borg_backup_remote_repo: True
borg_ssh_keys_src: "files/prd/ssh_keys/ynh_ed25519.vault" borg_ssh_keys_src: "files/prd/ssh_keys/ynh_ed25519.vault"
borg_ssh_keys_dest: "/home/debian/.ssh/ynh_ed25519" borg_ssh_keys_dest: "/home/debian/.ssh/ynh_ed25519"
ynh_ssh_borg_command: "ssh_command: ssh -p 7410 -o StrictHostKeychecking=no -i {{ borg_ssh_keys_dest }}" ynh_ssh_borg_command: "ssh_command: ssh -p 7410 -o StrictHostKeychecking=no -i {{ borg_ssh_keys_dest }}"
``` ```
- `ynh_borg_backup_scheduled` : Active / désactive la fonctionnalité de sauvegarde avec BorgBackup. - `ynh_borg_backup_scheduled` : Active / désactive la fonctionnalité de sauvegarde avec BorgBackup.
- `m3nu_ansible_role_borgbackup_version` : Vous permet de spécifier la version du rôle Ansible Borg Backup que vous souhaitez utiliser. La version par défaut du rôle est v0.9.3 mais vous pouvez vérifier les versions du rôle [ici](https://github.com/borgbase/ansible-role-borgbackup).
- `ynh_borg_backup_remote_repo` : Active / désactive la fonctionnalité de sauvegarde sur un dépôt distant BorgBackup (tâches liées à la mise en place des clés SSH). Si vous activez cette fonctionnalité, vous aurez besoin d'utiliser les variables `borg_ssh_keys_src` et `borg_ssh_keys_dest`. - `ynh_borg_backup_remote_repo` : Active / désactive la fonctionnalité de sauvegarde sur un dépôt distant BorgBackup (tâches liées à la mise en place des clés SSH). Si vous activez cette fonctionnalité, vous aurez besoin d'utiliser les variables `borg_ssh_keys_src` et `borg_ssh_keys_dest`.
- `borg_source_directories` : Liste des dossiers source à sauvegarder. Par défaut, il s'agit du dossier qui contient les sauvegardes faites par YunoHost. - `borg_source_directories` : Liste des dossiers source à sauvegarder. Par défaut, il s'agit du dossier qui contient les sauvegardes faites par YunoHost.
- `borg_repository` : Chemin complet vers le dépôt Borg. Possibilité de donner une liste de dépôts pour sauvegarder les données dans plusieurs endroits. - `borg_repository` : Chemin complet vers le dépôt Borg. Possibilité de donner une liste de dépôts pour sauvegarder les données dans plusieurs endroits.

View file

@ -47,21 +47,23 @@ ynh_backup:
- Backups with [BorgBackup](https://borgbackup.readthedocs.io/en/stable/) and [Borgmatic](https://github.com/witten/borgmatic): Thanks to the Ansible role `m3nu.ansible_role_borgbackup` we can 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 about this role [here](https://github.com/borgbase/ansible-role-borgbackup). - Backups with [BorgBackup](https://borgbackup.readthedocs.io/en/stable/) and [Borgmatic](https://github.com/witten/borgmatic): Thanks to the Ansible role `m3nu.ansible_role_borgbackup` we can 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 about this role [here](https://github.com/borgbase/ansible-role-borgbackup).
```yml ```yml
ynh_borg_backup_scheduled: True ynh_borg_backup_scheduled: True
borg_source_directories: "{{ ynh_backup.directory }}" m3nu_ansible_role_borgbackup_version: "v0.9.3"
borg_repository: "/data/backup/borg_repository" borg_source_directories: "{{ ynh_backup.directory }}"
borg_encryption_passphrase: "PLEASECHANGEME" borg_repository: "/data/backup/borg_repository"
borgmatic_config_name: "borgmatic_ynh_config" borg_encryption_passphrase: "PLEASECHANGEME"
borgmatic_cron_name: "borgmatic_ynh_cron" borgmatic_config_name: "borgmatic_ynh_config"
borgmatic_cron_name: "borgmatic_ynh_cron"
borg_retention_policy: borg_retention_policy:
keep_daily: "4" keep_daily: "4"
ynh_borg_backup_remote_repo: True ynh_borg_backup_remote_repo: True
borg_ssh_keys_src: "files/prd/ssh_keys/ynh_ed25519.vault" borg_ssh_keys_src: "files/prd/ssh_keys/ynh_ed25519.vault"
borg_ssh_keys_dest: "/home/debian/.ssh/ynh_ed25519" borg_ssh_keys_dest: "/home/debian/.ssh/ynh_ed25519"
ynh_ssh_borg_command: "ssh_command: ssh -p 7410 -o StrictHostKeychecking=no -i {{ borg_ssh_keys_dest }}" ynh_ssh_borg_command: "ssh_command: ssh -p 7410 -o StrictHostKeychecking=no -i {{ borg_ssh_keys_dest }}"
``` ```
- `ynh_borg_backup_scheduled`: Enable / disable the backup feature with BorgBackup. - `ynh_borg_backup_scheduled`: Enable / disable the backup feature with BorgBackup.
- `m3nu_ansible_role_borgbackup_version`: Allows you to specify which version of the Borg Backup Ansible role you want to use. The default version of the role is v0.9.3 but you can check the releases of the role [here](https://github.com/borgbase/ansible-role-borgbackup).
- `ynh_borg_backup_remote_repo`: Enable / disable the backup functionality on a BorgBackup remote repository (tasks related to SSH keys setup). If you enable this feature, then you will need to use `borg_ssh_keys_src` and `borg_ssh_keys_dest` variables. - `ynh_borg_backup_remote_repo`: Enable / disable the backup functionality on a BorgBackup remote repository (tasks related to SSH keys setup). If you enable this feature, then you will need to use `borg_ssh_keys_src` and `borg_ssh_keys_dest` variables.
- `borg_source_directories`: List of source folders to back up. By default, this is the folder in which YunoHost local backups are located. - `borg_source_directories`: List of source folders to back up. By default, this is the folder in which YunoHost local backups are located.
- `borg_repository`: Full path to the Borg repository. Possibility to give a list of repositories to save data in several places. - `borg_repository`: Full path to the Borg repository. Possibility to give a list of repositories to save data in several places.

View file

@ -20,21 +20,22 @@
# Variables for local YunoHost backups # Variables for local YunoHost backups
ynh_backup: ynh_backup:
scheduled: False scheduled: False
# Variables for YunoHost BorgBackup # Variables for YunoHost BorgBackup
ynh_borg_backup_scheduled: False ynh_borg_backup_scheduled: False
m3nu_ansible_role_borgbackup_version: "v0.9.3"
borg_source_directories: borg_source_directories:
- "/home/yunohost.backup" - "/home/yunohost.backup"
borg_repository: "/data/backup/borg_repository" borg_repository: "/data/backup/borg_repository"
borg_init_command: "borgmatic init -c /etc/borgmatic/{{ borgmatic_config_name }} -e repokey --syslog-verbosity 1" 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}'" borg_archive_name_format: "'{hostname}-yunohost-live-data-{now:%Y-%m-%d-%H%M%S}'"
ynh_borg_backup_remote_repo: False ynh_borg_backup_remote_repo: False
# Variables for YunoHost Restic # Variables for YunoHost Restic
# https://github.com/roles-ansible/ansible_role_restic # https://github.com/roles-ansible/ansible_role_restic
ynh_restic_backup_scheduled: False ynh_restic_backup_scheduled: False
do1jlr_restic_version: "v0.7.1" do1jlr_restic_version: "v0.7.1"
restic_version: "0.12.1" restic_version: "0.12.1"
restic_schedule_type: "cronjob" restic_schedule_type: "cronjob"
restic_keep_time: "0y1m0d0h" restic_keep_time: "0y1m0d0h"

View file

@ -18,7 +18,7 @@
# # # #
#-----------------------------------------------------------------------------# #-----------------------------------------------------------------------------#
- name: Download BorgBackup role on localhost - name: Download BorgBackup role on localhost
ansible.builtin.command: ansible-galaxy install m3nu.ansible_role_borgbackup,v0.9.3 -p "{{ _ansible_role_directory }}" ansible.builtin.command: ansible-galaxy install m3nu.ansible_role_borgbackup,"{{ m3nu_ansible_role_borgbackup_version }}" -p "{{ _ansible_role_directory }}"
delegate_to: localhost delegate_to: localhost
become: False become: False
tags: tags: