hadret.restic

Rôle Ansible : Restic

CI

Un rôle Ansible qui installe restic sur Linux et FreeBSD.

Exigences

Aucune.

Variables du Rôle

Les variables disponibles sont listées ci-dessous avec les valeurs par défaut (voir defaults/main.yml) :

restic_version: '0.15.1'
restic_install_path: '/usr/local/bin'
restic_password_file_path: '/root'
restic_discard_cron_stdout: false

restic_user: root
restic_group: "{{ restic_user }}"
  • restic_version spécifie la version du binaire restic à installer, correspond à le dépôt GitHub où les versions sont annoncées pour téléchargement.
  • restic_install_path fournit le chemin où le binaire restic doit être disponible (/usr/local/bin est exporté par défaut dans le $PATH). C'est aussi le même chemin qui est utilisé par le script d'encapsulation qui exécute réellement la sauvegarde, dont le nom est construit comme $restic_install_path/restic-$job_name (plus de détails ci-dessous).
  • restic_password_file_path fournit le chemin du dossier où les fichiers de mot de passe pour les dépôts restic doivent être stockés. Chaque fichier est construit comme $restic_password_file_path/.restic-@job_name. Ces fichiers sont cachés (d'où le . devant le fichier) par défaut et sont restreints à l'utilisateur restic et au groupe restic pour un accès en lecture seule. Par défaut, ces derniers sont root, mais cela peut être remplacé et tout utilisateur valide/déjà présent peut être utilisé. Dans ce cas, les bonnes capacités seront assurées pour cet utilisateur.
restic_discard_cron_stdout: false

Définit si la sortie du cronjob doit être dirigée vers /dev/null ou non (elle enverra un e-mail à chaque exécution si cela est réglé sur false).

restic_prometheus_exporter: true
restic_prometheus_output_path: /var/lib/node_exporter/textfile_collector

Cela active une très simple intégration avec Prometheus qui va écrire trois valeurs dans l'emplacement par défaut du collecteur de fichiers texte. Veuillez noter qu'activer ce support nécessitera l'installation de deux dépendances supplémentaires : jq et moreutils (pour sponge).

restic_repos: []

Cela définit un tableau de tâches restic. Chaque tâche définie créera un script d'encapsulation séparé et un fichier de mot de passe. Des exemples peuvent être trouvés dans defaults/main.yml.

Dépendances

Aucune.

Exemple de Playbook

- hosts: all
  roles:
     - hadret.restic

Crédits

Ce rôle s'appuie sur le travail de donat-b/ansible-restic et paulfantom/ansible-restic. Tous les tests molecule et la configuration CI sont basés sur le travail de geerlingguy. De nombreuses parties de l'intégration avec Prometheus ont été prises directement de ce fil de discussion sur le forum Restic.

Licence

MIT

Informations sur l'Auteur

Ce rôle a été développé en 2018 par Filip Chabik.

À propos du projet

Restic installation for Linux & FreeBSD.

Installer
ansible-galaxy install hadret.restic
Licence
mit
Téléchargements
3.1k
Propriétaire
Vegetarian, skeptic & Linux SysAdmin (: