sourcejedi.etckeeper
sourcejedi.etckeeper
Installez etckeeper. Suivez le contenu de /etc en utilisant un système de contrôle de version.
Le contenu actuel de /etc
est enregistré dans un dépôt Git. Etckeeper crée de nouveaux commits dans le dépôt à des intervalles quotidiens, ainsi que lorsque des fichiers sont créés ou modifiés par le gestionnaire de paquets (si pris en charge).
État
Ce rôle particulier a été écrit pour fonctionner sur un système existant. Il a été testé pour fonctionner, que :
- etckeeper soit déjà installé ou non
- le dépôt etckeeper existe ou non
- le dépôt etckeeper existe mais sans aucun commit
Le mode --check
d'Ansible est pris en charge.
Si vous exécutez le mode de vérification lorsque etckeeper n'est pas complètement installé, la tâche échouera. Ce comportement est attendu, car c'est un rôle complexe où certaines tâches dépendent d'autres. Nous veillons à produire ce comportement, en nous assurant que le mode de vérification ne saute pas certains types de tâches et ne donne pas un rapport trompeur de "changed=0".
Exigences
Utilisé avec succès sur Fedora, CentOS, Debian et Ubuntu 16.04+. J'imagine que la plupart des distributions Linux fourniront un paquet etckeeper qui fonctionne bien avec ce rôle.
Sur CentOS, le dépôt EPEL sera ajouté pour fournir le paquet etckeeper.
Certaines anciennes versions d'Ubuntu ne fonctionneront pas, car leur emballage a changé le backend par défaut en bzr
, au lieu de git
. Etckeeper le déconseille - le backend devrait être git
, sauf si l'utilisateur a une forte préférence pour autre chose. Ce rôle est implémenté spécifiquement pour git
(voir ci-dessous). Je pourrais accepter des demandes de tirage minimales pour d'autres alternatives.
Dépendances
user.email
est défini automatiquement pour le dépôt git. Ceci est requis par git, et les anciennes versions d'etckeeper ne parviennent pas, dans certains cas, à fournir une valeur pour cela dans certains cas. Je n'ai pas inclus de variable de rôle pour changer exactement quelle valeur est utilisée. Cependant, si user.email
est déjà défini (par exemple, dans /root/.gitconfig
), cette étape est sautée. Donc, si vous vous souciez de la valeur utilisée, assurez-vous que votre /root/.gitconfig
est configuré à l'avance. (Ou envoyez-moi un problème / une demande de tirage, pour expliquer pourquoi vous souhaitez une variable de rôle).
License
Ce rôle est sous licence GPLv3, veuillez ouvrir un problème si cela crée un quelconque problème.
Install etckeeper. Track the contents of /etc using a version control system.
ansible-galaxy install sourcejedi.etckeeper