Bonjour à tous,

Ne trouvant pas chaussure exact pour mon pied <https://forum.chatons.org/t/chercher-outil-versionning-config-serveur/1508> j’'ai fini par m’en faire un : David / sysgit · GitLab <https://framagit.org/kepon/sysgit> Si vous cherchez un outil type |etckeeper| mais qui ne se limite pas à |/etc|…

voici un mini-tuto pour découvrir *sysgit*.

C’est quoi ?

 * Un wrapper Git qui versionne /plusieurs/ chemins du système dans un
   *seul dépôt*.
 * Pas besoin de déplacer vos fichiers : le work-tree est |/| et on ne
   suit que ce qu’on ajoute explicitement.
 * Objectif : garder un historique clair des configs sensibles, sans
   outil de
   gestion de config complet.


     Comment ça marche ?

|# Initialiser le dépôt "système" sysgit init # Choisir ce qu'on versionne sysgit add /etc /opt/monapp/config /srv/monapp/config.yml sysgit add /root/.bashrc sysgit add /root/.bash_aliases sysgit add /var/backups/dpkg-get-selections.list sysgit add /var/spool/cron/crontabs # Vérifier et committer sysgit status sysgit diff sysgit commit -m "État initial" |

Ensuite, c’est du Git normal : |sysgit log|, |sysgit show|, |sysgit checkout|, etc. (les commandes sysgit passent juste les bons |--git-dir|/|--work-tree|).


     Pourquoi plutôt que etckeeper ?

 *

   *Scope plus large* : etckeeper ne suit que |/etc|, sysgit peut
   suivre |/etc|, |/opt|, |/srv|, etc.

 *

   *Un seul dépôt* : pas besoin de plusieurs repos ou de symlinks.

 *

   *Sélection fine* : on ajoute uniquement les chemins utiles.

 *

   *Intégrations utiles* :

     o profils d’auteurs Git multiples pour un serveur multi-admin (via
       sudo ou en root simple)
     o *Migration possible* : script fourni pour importer l’historique
       etckeeper.
     o autocommit via timer systemd toutes les nuits possibles
     o hook APT/dpkg (quand on installe quelque chose, on commit les
       changements
     o rappel au logout (si on a oublier de commit au logout on le rappel)


     En résumé

Si vous aimez etckeeper mais que vous voulez versionner /tout/ ce qui compte sur un serveur (pas juste |/etc|), sysgit est une alternative légère et pratique.

C’est par ici : David / sysgit · GitLab <https://framagit.org/kepon/sysgit>

David

--
🌍https://david.mercereau.info
_______________________________________________
Liste de diffusion du French Sysadmin Group
https://www.frsag.org/

Répondre à