#!/bin/bash # ======================================== # SEO Generator Server - Setup Checker # Vérifie que tout est prêt avant lancement # ======================================== # Couleurs RED='\033[0;31m' GREEN='\033[0;32m' YELLOW='\033[1;33m' BLUE='\033[0;34m' NC='\033[0m' echo "" echo "========================================" echo " SEO Generator - Vérification Setup" echo "========================================" echo "" ERRORS=0 WARNINGS=0 # 1. Vérifier Node.js echo -n "🔍 Node.js... " if command -v node &> /dev/null; then VERSION=$(node --version) echo -e "${GREEN}OK${NC} ($VERSION)" else echo -e "${RED}MANQUANT${NC}" ERRORS=$((ERRORS + 1)) fi # 2. Vérifier npm echo -n "🔍 npm... " if command -v npm &> /dev/null; then VERSION=$(npm --version) echo -e "${GREEN}OK${NC} ($VERSION)" else echo -e "${RED}MANQUANT${NC}" ERRORS=$((ERRORS + 1)) fi # 3. Vérifier package.json echo -n "🔍 package.json... " if [ -f "package.json" ]; then echo -e "${GREEN}OK${NC}" else echo -e "${RED}MANQUANT${NC}" ERRORS=$((ERRORS + 1)) fi # 4. Vérifier node_modules echo -n "🔍 node_modules... " if [ -d "node_modules" ]; then COUNT=$(find node_modules -maxdepth 1 -type d | wc -l) echo -e "${GREEN}OK${NC} ($COUNT packages)" else echo -e "${YELLOW}MANQUANT${NC} (lancez: npm install)" WARNINGS=$((WARNINGS + 1)) fi # 5. Vérifier .env echo -n "🔍 .env... " if [ -f ".env" ]; then echo -e "${GREEN}OK${NC}" # Vérifier variables critiques echo "" echo " Variables d'environnement:" if grep -q "GOOGLE_SERVICE_ACCOUNT_EMAIL" .env; then echo -e " ✓ GOOGLE_SERVICE_ACCOUNT_EMAIL" else echo -e " ${YELLOW}✗ GOOGLE_SERVICE_ACCOUNT_EMAIL manquante${NC}" WARNINGS=$((WARNINGS + 1)) fi if grep -q "GOOGLE_PRIVATE_KEY" .env; then echo -e " ✓ GOOGLE_PRIVATE_KEY" else echo -e " ${YELLOW}✗ GOOGLE_PRIVATE_KEY manquante${NC}" WARNINGS=$((WARNINGS + 1)) fi if grep -q "GOOGLE_SHEETS_ID" .env; then echo -e " ✓ GOOGLE_SHEETS_ID" else echo -e " ${YELLOW}✗ GOOGLE_SHEETS_ID manquante${NC}" WARNINGS=$((WARNINGS + 1)) fi if grep -q "ANTHROPIC_API_KEY" .env; then echo -e " ✓ ANTHROPIC_API_KEY" else echo -e " ${YELLOW}✗ ANTHROPIC_API_KEY manquante${NC}" WARNINGS=$((WARNINGS + 1)) fi else echo -e "${RED}MANQUANT${NC}" ERRORS=$((ERRORS + 1)) fi echo "" # 6. Vérifier dossiers requis echo -n "🔍 Dossier configs/... " if [ -d "configs" ]; then echo -e "${GREEN}OK${NC}" else echo -e "${YELLOW}MANQUANT${NC} (sera créé automatiquement)" WARNINGS=$((WARNINGS + 1)) fi echo -n "🔍 Dossier public/... " if [ -d "public" ]; then echo -e "${GREEN}OK${NC}" else echo -e "${RED}MANQUANT${NC}" ERRORS=$((ERRORS + 1)) fi echo -n "🔍 Dossier lib/... " if [ -d "lib" ]; then echo -e "${GREEN}OK${NC}" else echo -e "${RED}MANQUANT${NC}" ERRORS=$((ERRORS + 1)) fi echo "" # 7. Vérifier fichiers critiques echo -n "🔍 lib/ConfigManager.js... " if [ -f "lib/ConfigManager.js" ]; then echo -e "${GREEN}OK${NC}" else echo -e "${RED}MANQUANT${NC}" ERRORS=$((ERRORS + 1)) fi echo -n "🔍 public/index.html... " if [ -f "public/index.html" ]; then echo -e "${GREEN}OK${NC}" else echo -e "${RED}MANQUANT${NC}" ERRORS=$((ERRORS + 1)) fi echo -n "🔍 public/config-editor.html... " if [ -f "public/config-editor.html" ]; then echo -e "${GREEN}OK${NC}" else echo -e "${RED}MANQUANT${NC}" ERRORS=$((ERRORS + 1)) fi echo -n "🔍 public/production-runner.html... " if [ -f "public/production-runner.html" ]; then echo -e "${GREEN}OK${NC}" else echo -e "${RED}MANQUANT${NC}" ERRORS=$((ERRORS + 1)) fi echo "" echo "========================================" echo " Résumé" echo "========================================" echo "" if [ $ERRORS -eq 0 ] && [ $WARNINGS -eq 0 ]; then echo -e "${GREEN}✅ Tout est prêt !${NC}" echo "" echo "Vous pouvez lancer le serveur avec :" echo " ./start-server.sh" echo " OU" echo " npm start" exit 0 elif [ $ERRORS -eq 0 ]; then echo -e "${YELLOW}⚠️ $WARNINGS avertissement(s)${NC}" echo "" echo "Le serveur peut démarrer mais certaines fonctionnalités" echo "pourraient ne pas fonctionner correctement." echo "" echo "Recommandation :" echo " - Vérifiez le fichier .env" echo " - Lancez: npm install" exit 0 else echo -e "${RED}❌ $ERRORS erreur(s) détectée(s)${NC}" if [ $WARNINGS -gt 0 ]; then echo -e "${YELLOW}⚠️ $WARNINGS avertissement(s)${NC}" fi echo "" echo "Corrigez les erreurs avant de lancer le serveur." exit 1 fi