9. Utilisation de CVS avec FAI

9.1. Utiliser le contrôle de révision pour la configuration de FAI

Si c'est une équipe d'administrateurs qui est impliquée, un système de management de code source et de contrôle de révision comme CVS peut simplifier la coordination : plusieurs personnes peuvent travailler simultanément sur les fichiers de configuration, tandis que ce système aide à éviter les conflits (et s'il s'en produit, il aide à les résoudre). Un autre avantage se trouve dans la gestion des branches : pendant que l'administrateur prépare une nouvelle configuration et réalise les essais en utilisant une configuration de test, les autres clients ne subissent aucune perturbation, car ils utilisent une autre branche de la configuration.

9.1.1. Paramétrer FAI pour une configuration basée sur CVS

Vous devez d'abord initialiser un dépôt CVS et dans celui-ci, un module pour stocker les fichiers de configuration de FAI. Dans cet exemple, un serveur CVS « pserver » sera utilisé pour les accès en lecture seule aux fichiers de configuration par les clients, tandis que ssh est utilisé pour les accès des développeurs (rw)[16].

Les variables correspondantes à CVS dans /etc/fai/fai.conf et /etc/fai/make-fai-nfsroot.conf sont :

FAI_LOCATION

Cette variable ne doit pas être positionnée si vous voulez utiliser CVS.

FAI_CVSROOT

contient le « cvsroot » où est stockée la configuration.

FAI_CVSROOT=":pserver:client@cvs.local.net:/var/lib/cvs"
FAI_CVSMODULE

contient le module où est stockée la configuration dans le « cvsroot ».

FAI_CVSMODULE="config"
FAI_CVSTAG

contient le « tag » de la branche CVS qui sera extraite par le client[17].

FAI_CVSTAG="STABLE"

Si vous utilisez un serveur « pserver » pour stocker les fichiers de configuration, le fichier /root/.cvspass doit exister et être valide dans la « nfsroot ». CVS utilise ce fichier pour obtenir le mot de passe pour le « pserver ». Vous pouvez le créer très facilement si vous exécutez

cvs -d$FAI_CVSROOT login

et que vous copiez ensuite la ligne générée de votre ~/.cvspass dans /root/.cvspass sur la « nfsroot ».

[16][17]



[16] CVS est très flexible et peut être utilisé avec plusieurs méthodes d'accès, c'est pourquoi je vous recommande de lire plus de documentation sur le sujet pour trouver la solution optimale dans votre environnement.

[17] Ceci n'est pas obligatoire : si la variable n'est pas définie, HEAD sera utilisé, ce qui correspond à la version la plus récente de la configuration.