#!/bin/bash # Script de validation des templates Nginx générés # Généré automatiquement le $(date) set -euo pipefail # Couleurs pour les messages RED='\033[0;31m' GREEN='\033[0;32m' YELLOW='\033[1;33m' BLUE='\033[0;34m' NC='\033[0m' # Fonctions d'affichage print_error() { echo -e "${RED}❌ ERREUR${NC}: $1"; } print_success() { echo -e "${GREEN}✅ SUCCÈS${NC}: $1"; } print_info() { echo -e "${BLUE}ℹ️ INFO${NC}: $1"; } print_warning() { echo -e "${YELLOW}⚠️ ATTENTION${NC}: $1"; } # Charger les variables d'environnement if [ -f ".env" ]; then # Charger .env en mode silencieux pour éviter les erreurs de syntaxe source .env 2>/dev/null || true fi # Vérifier que HOST est défini if [ -z "${HOST:-}" ]; then print_warning "Variable HOST non définie, utilisation de la valeur par défaut" export HOST="dev4._4NKweb.com" fi print_info "Validation des templates Nginx pour $HOST" # Vérifier que les fichiers existent missing_files=0 if [ ! -f "nginx/upstreams.conf" ]; then print_error "Template nginx/upstreams.conf non trouvé" missing_files=$((missing_files + 1)) fi if [ ! -f "nginx/app-internal-ports.conf" ]; then print_error "Template nginx/app-internal-ports.conf non trouvé" missing_files=$((missing_files + 1)) fi if [ ! -f "nginx/proxy_headers.conf" ]; then print_error "Template nginx/proxy_headers.conf non trouvé" missing_files=$((missing_files + 1)) fi if [ ! -f "nginx/nginx_$HOST-https.conf" ]; then print_error "Template nginx/nginx_$HOST-https.conf non trouvé" missing_files=$((missing_files + 1)) fi if [ $missing_files -eq 0 ]; then print_success "Tous les templates de configuration sont présents" print_info "Templates générés:" echo " • nginx/upstreams.conf" echo " • nginx/app-internal-ports.conf" echo " • nginx/proxy_headers.conf" echo " • nginx/*_https.conf (configurations HTTPS individuelles)" echo " • nginx/nginx_$HOST-https.conf" print_info "Ces templates sont prêts à être utilisés dans votre infrastructure" print_warning "Adaptez les chemins et configurations selon vos besoins spécifiques" else print_error "$missing_files template(s) manquant(s)" exit 1 fi