Refactorización completa: modularización, setup automático y mejoras de configuración

- Reemplaza zxdb.py por main.py + paquete zxdb/ (database, organizer, downloader, filesystem)
- Añade zxdb/setup/: orquestador Docker, descarga e import de ZXDB automáticos
- main.py integra el setup al arrancar y detiene el contenedor al salir (try/finally)
- Elimina DB_HOST de config.py: la conexión usa siempre 127.0.0.1 (port mapping Docker)
- Actualiza requirements.txt a versiones más recientes y elimina logging (stdlib)
- Actualiza README con el nuevo flujo de uso

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-06 12:54:03 +01:00
parent a54d741c92
commit f967af541c
17 changed files with 1019 additions and 690 deletions
+6 -1
View File
@@ -1,7 +1,6 @@
# Configuración de base de datos
DB_USER = 'root'
DB_PASSWORD = 'unJEPimbJddHP8'
DB_HOST = '172.18.0.2'
DB_PORT = 3306
DB_NAME = 'zxdb'
@@ -24,3 +23,9 @@ MAX_WAIT = 4 # Cantidad de segundos máxima a esperar entre descargas
# Año usado para la separación entre juegos clásicos y modernos
LAST_CLASSIC_YEAR = 1993
# Ruta donde se deposita ZXDB_mysql.sql tras la descarga desde GitHub
ZXDB_SQL_PATH = '/tmp/ZXDB_mysql.sql'
# Fichero de estado del setup de ZXDB (registro del último import)
ZXDB_STATE_FILE = '/tmp/zxdb_state.json'