#!/bin/bash # 🎵 Veza Platform - Validation Finale # ==================================== echo "🎵 Validation finale de Veza Platform" echo "====================================" echo "" # Couleurs GREEN='\033[0;32m' RED='\033[0;31m' YELLOW='\033[1;33m' BLUE='\033[0;34m' NC='\033[0m' print_success() { echo -e "${GREEN}✅ $1${NC}" } print_error() { echo -e "${RED}❌ $1${NC}" } print_info() { echo -e "${BLUE}ℹ️ $1${NC}" } print_warning() { echo -e "${YELLOW}⚠️ $1${NC}" } # Validation 1: Services de base echo "🔧 Validation des services de base..." echo "------------------------------------" # Backend API if curl -s http://localhost:8080/api/health | grep -q "healthy"; then print_success "Backend API opérationnel" else print_error "Backend API non accessible" fi # Frontend Web if curl -s http://localhost:5176/ > /dev/null; then print_success "Frontend Web accessible" else print_error "Frontend Web non accessible" fi # PostgreSQL if pg_isready -h localhost -p 5432 > /dev/null 2>&1; then print_success "PostgreSQL opérationnel" else print_error "PostgreSQL non accessible" fi # Redis if redis-cli ping | grep -q "PONG"; then print_success "Redis opérationnel" else print_error "Redis non accessible" fi echo "" # Validation 2: Fonctionnalités principales echo "🎵 Validation des fonctionnalités principales..." echo "---------------------------------------------" # Test de l'API backend HEALTH_RESPONSE=$(curl -s http://localhost:8080/api/health) if echo "$HEALTH_RESPONSE" | grep -q "healthy"; then print_success "API Backend fonctionnelle" VERSION=$(echo "$HEALTH_RESPONSE" | jq -r '.version' 2>/dev/null || echo "N/A") print_info "Version Backend: $VERSION" else print_error "API Backend non fonctionnelle" fi # Test de l'interface web WEB_RESPONSE=$(curl -s http://localhost:5176/) if echo "$WEB_RESPONSE" | grep -q "react"; then print_success "Interface React chargée" else print_error "Interface React non chargée" fi echo "" # Validation 3: Architecture et fichiers echo "🏗️ Validation de l'architecture..." echo "--------------------------------" # Vérifier la structure des dossiers DIRECTORIES=("veza-frontend" "veza-backend-api" "veza-desktop" "veza-chat-server") for dir in "${DIRECTORIES[@]}"; do if [ -d "$dir" ]; then print_success "Dossier $dir présent" else print_error "Dossier $dir manquant" fi done # Vérifier les fichiers de configuration FILES=("docker-compose.production.yml" "start-veza.sh" "stop-veza.sh") for file in "${FILES[@]}"; do if [ -f "$file" ]; then print_success "Fichier $file présent" else print_error "Fichier $file manquant" fi done echo "" # Validation 4: Ports et processus echo "🔌 Validation des ports et processus..." echo "-------------------------------------" # Vérifier les ports essentiels PORTS=( "5176:Frontend" "8080:Backend" "5432:PostgreSQL" "6379:Redis" ) for port_info in "${PORTS[@]}"; do port=$(echo $port_info | cut -d: -f1) service=$(echo $port_info | cut -d: -f2) if netstat -tuln 2>/dev/null | grep -q ":$port "; then print_success "Port $port ($service) ouvert" else print_warning "Port $port ($service) fermé ou non détecté" fi done echo "" # Validation 5: Résumé et recommandations echo "📊 Résumé de la validation" echo "==========================" # Compter les succès SUCCESS_COUNT=$(grep -c "✅" <<< "$(tail -n +50 $0)") ERROR_COUNT=$(grep -c "❌" <<< "$(tail -n +50 $0)") WARNING_COUNT=$(grep -c "⚠️" <<< "$(tail -n +50 $0)") echo "Tests réussis: $SUCCESS_COUNT" echo "Tests échoués: $ERROR_COUNT" echo "Avertissements: $WARNING_COUNT" echo "" if [ $ERROR_COUNT -eq 0 ]; then echo -e "${GREEN}🎉 Veza Platform est complètement fonctionnel !${NC}" echo "" echo "📱 Accès aux applications :" echo " 🌐 Web App: http://localhost:5176" echo " 🖥️ Desktop: ./start-desktop.sh" echo "" echo "🔧 Services actifs :" echo " ✅ Backend API: http://localhost:8080" echo " ✅ Frontend: http://localhost:5176" echo " ✅ PostgreSQL: localhost:5432" echo " ✅ Redis: localhost:6379" echo "" echo "🚀 Commandes utiles :" echo " - Démarrage complet: ./start-veza.sh" echo " - Arrêt: ./stop-veza.sh" echo " - Test complet: ./test-veza-complete.sh" echo " - Desktop: ./start-desktop.sh" echo "" echo -e "${GREEN}✅ L'application Veza est prête à être utilisée !${NC}" else echo -e "${YELLOW}⚠️ Veza Platform est partiellement fonctionnel.${NC}" echo "" echo "🔧 Actions recommandées :" echo " - Redémarrer les services: ./start-veza.sh" echo " - Vérifier les logs: tail -f logs/*.log" echo " - Tester manuellement: http://localhost:5176" fi echo "" echo "🎵 Validation terminée"