Module vhosts - tlr-cli
Objectif
Fournir un outil de gestion des vhosts Apache :
- inventaire rapide des vhosts (activés / désactivés) ;
- information sur le document root ;
- création de vhosts à partir de templates ;
- bascule "maintenance" / "prod" via une action dédiée.
Définition d'un module (rappel)
Un module est un bloc fonctionnel autonome avec :
- une entrée CLI (
tlr vhosts <action>) ; - ses templates et fixtures ;
- ses tests idempotents.
Actions prévues
info: liste des vhosts + état + docroot.status: résumé (nombre activés, nombre désactivés, anomalies).check: valide la cohérence (docroot existant, confs valides).apply: applique les templates si demandé.switch: bascule entre un vhost "maintenance" et un vhost applicatif.
Inventaire attendu
Affichage par vhost :
- nom du fichier (
*.conf) ; - statut :
enabled/disabled; - docroot (Directory / DocumentRoot) ;
- éventuel port ou ServerName (si utile).
Templates Ă fournir
Deux templates de base, issus de la configuration actuelle du VPS :
html: page statique de maintenance.symfony: application Symfony.
Structure cible des sites
- Maintenance :
/var/www/telaria-html- projet
telaria-html(page par défaut commune).
- projet
- Symfony :
/var/www/<app_symfony>
Nommage des vhosts (proposition)
telaria.fr.conf: vhost applicatif.telaria-maintenance.fr.conf: vhost de maintenance.
Note : si un autre nom anglais est préféré (ex. :
telaria-holding.fr.conf), le choix doit être validé avant l'implémentation.
Bascule maintenance / prod
L'action switch doit :
- désactiver le vhost courant (a2dissite),
- activer l'autre (a2ensite),
- recharger Apache,
- exposer les commandes exécutées.
Exemple d'usage :
tlr vhosts switch --from telaria.fr.conf --to telaria-maintenance.fr.conf
Sources
La référence historique est inputs/legacy/telaria-fr-setup.md (lecture seule).