v1.0 - Version stable: multi-PC, détection UI-DETR-1, 3 modes exécution
- Frontend v4 accessible sur réseau local (192.168.1.40) - Ports ouverts: 3002 (frontend), 5001 (backend), 5004 (dashboard) - Ollama GPU fonctionnel - Self-healing interactif - Dashboard confiance Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
129
visual_workflow_builder/start_simple.py
Executable file
129
visual_workflow_builder/start_simple.py
Executable file
@@ -0,0 +1,129 @@
|
||||
#!/usr/bin/env python3
|
||||
"""
|
||||
Script de démarrage simple pour Visual Workflow Builder
|
||||
Auteur : Dom, Alice, Kiro - 8 janvier 2026
|
||||
"""
|
||||
|
||||
import os
|
||||
import sys
|
||||
import subprocess
|
||||
import time
|
||||
import requests
|
||||
from pathlib import Path
|
||||
|
||||
def verifier_environnement():
|
||||
"""Vérifie que l'environnement virtuel est activé"""
|
||||
print("🔍 Vérification de l'environnement...")
|
||||
|
||||
# Vérifier Python
|
||||
python_path = sys.executable
|
||||
print(f"Python utilisé : {python_path}")
|
||||
|
||||
if "venv_v3" not in python_path:
|
||||
print("⚠️ ATTENTION : Environnement virtuel venv_v3 non détecté")
|
||||
return False
|
||||
|
||||
# Vérifier les dépendances critiques
|
||||
try:
|
||||
import flask
|
||||
import mss
|
||||
print(f"✅ Flask : {flask.__version__}")
|
||||
print("✅ MSS : Disponible")
|
||||
return True
|
||||
except ImportError as e:
|
||||
print(f"❌ Dépendance manquante : {e}")
|
||||
return False
|
||||
|
||||
def tester_backend():
|
||||
"""Teste la connectivité du backend"""
|
||||
print("\n🔍 Test du backend...")
|
||||
|
||||
try:
|
||||
response = requests.get("http://localhost:5003/api/real-demo/capture/status", timeout=5)
|
||||
if response.status_code == 200:
|
||||
print("✅ Backend accessible sur le port 5003")
|
||||
data = response.json()
|
||||
print(f" - Moniteurs détectés : {data['status']['monitors_count']}")
|
||||
print(f" - Capture active : {data['status']['is_capturing']}")
|
||||
return True
|
||||
else:
|
||||
print(f"❌ Backend répond avec le code : {response.status_code}")
|
||||
return False
|
||||
except requests.exceptions.RequestException as e:
|
||||
print(f"❌ Backend inaccessible : {e}")
|
||||
return False
|
||||
|
||||
def tester_frontend():
|
||||
"""Teste la connectivité du frontend"""
|
||||
print("\n🔍 Test du frontend...")
|
||||
|
||||
try:
|
||||
response = requests.get("http://localhost:3000", timeout=5)
|
||||
if response.status_code == 200:
|
||||
print("✅ Frontend accessible sur le port 3000")
|
||||
return True
|
||||
else:
|
||||
print(f"❌ Frontend répond avec le code : {response.status_code}")
|
||||
return False
|
||||
except requests.exceptions.RequestException as e:
|
||||
print(f"❌ Frontend inaccessible : {e}")
|
||||
return False
|
||||
|
||||
def demarrer_services():
|
||||
"""Démarre les services si nécessaire"""
|
||||
print("\n🚀 Démarrage des services...")
|
||||
|
||||
# Changer vers le répertoire du projet
|
||||
os.chdir(Path(__file__).parent)
|
||||
|
||||
# Démarrer le backend si nécessaire
|
||||
if not tester_backend():
|
||||
print("Démarrage du backend...")
|
||||
backend_cmd = [sys.executable, "backend/app.py"]
|
||||
subprocess.Popen(backend_cmd, env={**os.environ, "PORT": "5003"})
|
||||
time.sleep(3)
|
||||
|
||||
# Démarrer le frontend si nécessaire
|
||||
if not tester_frontend():
|
||||
print("Démarrage du frontend...")
|
||||
frontend_cmd = ["npm", "start"]
|
||||
subprocess.Popen(frontend_cmd, cwd="frontend")
|
||||
time.sleep(5)
|
||||
|
||||
def main():
|
||||
"""Fonction principale"""
|
||||
print("🎯 Visual Workflow Builder - Diagnostic et Démarrage")
|
||||
print("=" * 50)
|
||||
|
||||
# Vérifications
|
||||
if not verifier_environnement():
|
||||
print("\n❌ Environnement non conforme")
|
||||
sys.exit(1)
|
||||
|
||||
# Tests de connectivité
|
||||
backend_ok = tester_backend()
|
||||
frontend_ok = tester_frontend()
|
||||
|
||||
if backend_ok and frontend_ok:
|
||||
print("\n✅ Tous les services sont opérationnels !")
|
||||
print("\n🌐 Accès utilisateur :")
|
||||
print(" Frontend : http://localhost:3000")
|
||||
print(" Backend : http://localhost:5003")
|
||||
print("\n📋 Navigation :")
|
||||
print(" 1. Ouvrir http://localhost:3000")
|
||||
print(" 2. Naviguer vers 'Démonstration Réelle'")
|
||||
print(" 3. Sélectionner 'Capture d'Écran Réelle'")
|
||||
else:
|
||||
print("\n⚠️ Certains services ne répondent pas")
|
||||
demarrer_services()
|
||||
|
||||
# Re-test après démarrage
|
||||
time.sleep(5)
|
||||
if tester_backend() and tester_frontend():
|
||||
print("\n✅ Services démarrés avec succès !")
|
||||
else:
|
||||
print("\n❌ Échec du démarrage des services")
|
||||
sys.exit(1)
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
Reference in New Issue
Block a user