workspace/core/orchestration/inventarios/DEVENV-PORTS-INVENTORY.yml
2025-12-08 21:15:39 -06:00

478 lines
12 KiB
YAML

# =============================================================================
# DEVENV-PORTS-INVENTORY.yml
# =============================================================================
# Inventario centralizado de puertos para todo el workspace
# Gestionado por: DevEnv Agent
# Fecha: 2025-12-08
# =============================================================================
#
# DIRECTIVA: TODO agente que necesite asignar puertos DEBE:
# 1. Consultar este inventario primero
# 2. Solicitar asignacion al agente DevEnv
# 3. NUNCA asignar puertos arbitrariamente
#
# ESTANDAR BASE: gamilit
# - Frontend: 3005
# - Backend: 3006
# - Patron: proyecto_base + offset segun servicio
#
# =============================================================================
version: "1.0.0"
updated: "2025-12-08"
maintainer: "DevEnv Agent"
workspace: "/home/isem/workspace"
# =============================================================================
# RANGOS ASIGNADOS POR PROYECTO
# =============================================================================
# Cada proyecto tiene un bloque de puertos reservado
# Evita conflictos entre proyectos
ranges:
gamilit:
start: 3000
end: 3099
description: "Plataforma educativa gamificada"
erp-suite:
start: 3100
end: 3199
description: "Suite ERP con verticales"
sub_ranges:
erp-core:
start: 3100
end: 3119
construccion:
start: 3120
end: 3139
vidrio-templado:
start: 3140
end: 3159
mecanicas-diesel:
start: 3160
end: 3179
retail:
start: 3180
end: 3199
clinicas:
start: 3200
end: 3219 # Extiende el rango
trading-platform:
start: 3300
end: 3399
description: "Plataforma de trading IA"
extended_ranges:
backend: "4000-4099"
python_services: "5000-5099"
betting-analytics:
start: 3400
end: 3499
description: "Analytics de apuestas deportivas"
inmobiliaria-analytics:
start: 3500
end: 3599
description: "Analytics inmobiliario"
platform_marketing_content:
start: 3600
end: 3699
description: "Plataforma de marketing de contenidos"
# =============================================================================
# PROYECTOS - DETALLE DE PUERTOS ASIGNADOS
# =============================================================================
projects:
# ---------------------------------------------------------------------------
# GAMILIT - Plataforma Educativa Gamificada
# ---------------------------------------------------------------------------
gamilit:
status: "active"
base_path: "projects/gamilit"
range: "3000-3099"
services:
frontend:
port: 3005
protocol: "http"
framework: "React + Vite"
description: "Aplicacion web principal"
config_file: "apps/frontend/.env"
pm2_name: "gamilit-frontend"
backend:
port: 3006
protocol: "http"
framework: "NestJS"
description: "API principal"
config_file: "apps/backend/.env"
pm2_name: "gamilit-backend"
databases:
postgresql:
port: 5432
description: "Base de datos principal"
redis:
port: 6379
description: "Cache y sessions"
production:
server: "74.208.126.102"
pm2_config: "ecosystem.config.js"
# ---------------------------------------------------------------------------
# ERP-SUITE - Suite ERP Multi-Vertical
# ---------------------------------------------------------------------------
erp-suite:
status: "active"
base_path: "projects/erp-suite"
range: "3100-3219"
# ERP Core
erp-core:
services:
backend:
port: 3100
protocol: "http"
framework: "Express/NestJS"
description: "Core API compartido"
databases:
postgresql:
port: 5432
description: "BD compartida core"
# Verticales
verticales:
construccion:
services:
backend:
port: 3120
protocol: "http"
description: "API vertical construccion"
databases:
postgresql:
port: 5433
description: "BD construccion"
redis:
port: 6380
vidrio-templado:
services:
backend:
port: 3140
protocol: "http"
description: "API vertical vidrio templado"
frontend:
port: 5175
protocol: "http"
description: "UI vidrio templado"
databases:
postgresql:
port: 5434
description: "BD vidrio templado"
redis:
port: 6381
mecanicas-diesel:
services:
backend:
port: 3160
protocol: "http"
description: "API vertical mecanicas"
databases:
postgresql:
port: 5432
description: "BD mecanicas (compartida)"
redis:
port: 6379
retail:
services:
backend:
port: 3180
protocol: "http"
description: "API vertical retail"
frontend:
port: 5177
protocol: "http"
description: "UI retail"
databases:
postgresql:
port: 5436
description: "BD retail"
redis:
port: 6383
clinicas:
services:
backend:
port: 3200
protocol: "http"
description: "API vertical clinicas"
frontend:
port: 5178
protocol: "http"
description: "UI clinicas"
dicom_server:
port: 4242
protocol: "dicom"
description: "Servidor DICOM imagenologia"
databases:
postgresql:
port: 5437
description: "BD clinicas"
redis:
port: 6384
# Productos
products:
pos-micro:
services:
backend:
port: 3190
protocol: "http"
description: "API POS micro"
databases:
postgresql:
port: 5432
description: "BD POS (compartida)"
# ---------------------------------------------------------------------------
# TRADING-PLATFORM - Plataforma de Trading IA
# ---------------------------------------------------------------------------
trading-platform:
status: "active"
base_path: "projects/trading-platform"
range: "3300-3399, 4000-4099, 5000-5099"
env_ports_file: ".env.ports"
services:
# Frontend
frontend_web:
port: 3100
protocol: "http"
framework: "React + Vite"
description: "Aplicacion web principal"
frontend_admin:
port: 3101
protocol: "http"
description: "Panel de administracion"
frontend_preview:
port: 4173
protocol: "http"
description: "Vite preview/build"
# Backend Node.js
backend_api:
port: 4000
protocol: "http"
framework: "Express"
description: "API principal"
backend_ws:
port: 4001
protocol: "ws"
description: "WebSocket server real-time"
backend_webhooks:
port: 4002
protocol: "http"
description: "API webhooks"
# Python Services
ml_engine:
port: 5000
protocol: "http"
framework: "FastAPI"
description: "ML predicciones y senales"
data_service:
port: 5001
protocol: "http"
framework: "Python asyncio"
description: "Sincronizacion datos mercado"
llm_agent:
port: 5002
protocol: "http"
framework: "FastAPI"
description: "Asistente IA"
portfolio_manager:
port: 5003
protocol: "http"
framework: "FastAPI"
description: "Gestion de portafolios"
databases:
postgresql:
port: 5432
description: "BD principal"
postgresql_test:
port: 5433
description: "BD testing"
redis:
port: 6379
description: "Cache y queues"
mysql:
port: 3306
description: "Legacy migracion"
monitoring:
jenkins:
port: 8080
description: "CI/CD pipeline"
jenkins_agent:
port: 50000
description: "Jenkins agent"
prometheus:
port: 9090
description: "Metricas"
grafana:
port: 3200
description: "Dashboards"
development:
mailhog_smtp:
port: 1025
description: "Testing emails"
mailhog_web:
port: 8025
description: "Mailhog UI"
pgadmin:
port: 5050
description: "Admin PostgreSQL"
# ---------------------------------------------------------------------------
# BETTING-ANALYTICS
# ---------------------------------------------------------------------------
betting-analytics:
status: "planned"
base_path: "projects/betting-analytics"
range: "3400-3499"
services:
frontend:
port: 3405
protocol: "http"
description: "Dashboard analytics"
assigned: false
backend:
port: 3406
protocol: "http"
description: "API analytics"
assigned: false
databases:
postgresql:
port: 5438
description: "BD analytics"
# ---------------------------------------------------------------------------
# INMOBILIARIA-ANALYTICS
# ---------------------------------------------------------------------------
inmobiliaria-analytics:
status: "planned"
base_path: "projects/inmobiliaria-analytics"
range: "3500-3599"
services:
frontend:
port: 3505
protocol: "http"
description: "Dashboard inmobiliario"
assigned: false
backend:
port: 3506
protocol: "http"
description: "API inmobiliario"
assigned: false
databases:
postgresql:
port: 5439
description: "BD inmobiliario"
# ---------------------------------------------------------------------------
# PLATFORM MARKETING CONTENT
# ---------------------------------------------------------------------------
platform_marketing_content:
status: "active"
base_path: "projects/platform_marketing_content"
range: "3600-3699"
services:
frontend:
port: 3605
protocol: "http"
description: "Dashboard marketing"
assigned: true
backend:
port: 3606
protocol: "http"
description: "API marketing"
assigned: true
databases:
postgresql:
port: 5440
description: "BD marketing"
# =============================================================================
# SERVICIOS DE INFRAESTRUCTURA GLOBALES
# =============================================================================
infrastructure:
postgresql:
default_port: 5432
range: "5432-5449"
note: "Cada proyecto puede tener su BD en puerto unico"
redis:
default_port: 6379
range: "6379-6389"
note: "Cache distribuido, sessions, queues"
mysql:
default_port: 3306
note: "Solo para migraciones legacy"
mongodb:
default_port: 27017
note: "Reservado si se necesita"
# =============================================================================
# REGLAS DE ASIGNACION
# =============================================================================
rules:
offset_standard:
frontend_web: 5 # proyecto_base + 5 (ej: 3005, 3105, 3205)
frontend_admin: 7 # proyecto_base + 7
backend_api: 6 # proyecto_base + 6 (ej: 3006, 3106, 3206)
backend_ws: 8 # proyecto_base + 8
backend_workers: 9 # proyecto_base + 9
reserved_ports:
- 22 # SSH
- 80 # HTTP
- 443 # HTTPS
- 3000 # Comun desarrollo (evitar)
- 8080 # Comun desarrollo (evitar)
guidelines:
- "Siempre consultar este inventario antes de asignar"
- "Seguir patron: proyecto_base + offset_standard"
- "Documentar en este archivo cualquier nuevo puerto"
- "Verificar conflictos con: lsof -i :PUERTO"
# =============================================================================
# HISTORIAL DE CAMBIOS
# =============================================================================
changelog:
- date: "2025-12-08"
action: "Creacion inicial"
author: "DevEnv Agent"
details: "Inventario completo de todos los proyectos del workspace"