#!/usr/bin/env python3 """ Script de prueba local para Osorno Runners Ejecuta este script para probar la aplicación antes de subirla a HuggingFace """ import subprocess import sys import os print("=" * 60) print("🏃 OSORNO RUNNERS - PRUEBA LOCAL") print("=" * 60) # Verificar que estamos en el directorio correcto required_files = ['app.py', 'index.html', 'requirements.txt'] missing_files = [f for f in required_files if not os.path.exists(f)] if missing_files: print("\n❌ ERROR: Archivos faltantes:") for f in missing_files: print(f" - {f}") print("\nAsegúrate de estar en el directorio correcto") sys.exit(1) print("\n✅ Todos los archivos necesarios están presentes") # Verificar Python python_version = sys.version_info print(f"\n🐍 Python {python_version.major}.{python_version.minor}.{python_version.micro}") if python_version.major < 3 or (python_version.major == 3 and python_version.minor < 8): print("❌ Se requiere Python 3.8 o superior") sys.exit(1) # Instalar dependencias print("\n📦 Instalando dependencias...") try: subprocess.check_call([sys.executable, "-m", "pip", "install", "-q", "-r", "requirements.txt"]) print("✅ Dependencias instaladas correctamente") except subprocess.CalledProcessError: print("❌ Error al instalar dependencias") sys.exit(1) # Iniciar aplicación print("\n" + "=" * 60) print("🚀 INICIANDO APLICACIÓN") print("=" * 60) print("\nLa aplicación se abrirá en tu navegador automáticamente") print("URL: http://localhost:7860") print("\nCredenciales de prueba:") print(" Usuario: USER / Contraseña: 123") print(" Admin: ADMIN / Contraseña: 123") print("\nPresiona Ctrl+C para detener el servidor") print("=" * 60) print() try: subprocess.call([sys.executable, "app.py"]) except KeyboardInterrupt: print("\n\n✅ Servidor detenido correctamente") print("¡Gracias por usar Osorno Runners!")