feat: plantilla base workspace SaaS
Some checks failed
Build Producción & Push a Harbor / test (push) Failing after 2s
Build Producción & Push a Harbor / build (push) Has been skipped

Convierte el repositorio de Anexo76 en una plantilla limpia y reutilizable
para nuevos proyectos del ecosistema Workspace de Aduanasoft.

Cambios principales:
- Elimina módulos específicos de Anexo76: a76, a24, sitar, public
- Agrega módulo example/ con patrón CRUD de referencia (models/dto/service/routes)
- Limpia migraciones Alembic: solo quedan las 6 de core (users, tenants, permissions)
- Reemplaza todas las rutas del dashboard con stubs genéricos
- Elimina lógica de negocio aduanera: shortcuts, CSV imports, permisos, catálogos
- Simplifica variables de entorno: una sola WORKSPACE_URL deriva Hub y Keycloak
- Agrega scripts/auth-mode.sh para alternar entre auth local y workspace
- Configura docker-compose con nombres genéricos (app-*)
- Corrige flujo SSO: elimina system-gate SCAF/SCAII que bloqueaba el login
- Modo DEV_LOCAL_AUTH para desarrollo sin Keycloak ni Hub

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-06-04 10:55:17 -05:00
parent 9fae110c11
commit 880999b03a
1979 changed files with 1085 additions and 359149 deletions

View File

@@ -15,17 +15,17 @@
# E2E_FRONTEND_IMAGE — imagen temporal del frontend con VITE_API_URL=localhost
services:
postgres-a76:
postgres-app:
image: postgres:18-alpine
environment:
POSTGRES_DB: anexo76_core
POSTGRES_DB: app_core
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_INITDB_ARGS: "--encoding=UTF8"
networks:
- e2e-net
healthcheck:
test: ["CMD-SHELL", "pg_isready -U postgres -d anexo76_core || exit 1"]
test: ["CMD-SHELL", "pg_isready -U postgres -d app_core || exit 1"]
interval: 5s
timeout: 3s
retries: 10
@@ -65,9 +65,9 @@ services:
- ENVIRONMENT=e2e
- PYTHONUNBUFFERED=1
- PYTHONDONTWRITEBYTECODE=1
- CORE_DB_HOST=postgres-a76
- CORE_DB_HOST=postgres-app
- CORE_DB_PORT=5432
- CORE_DB_NAME=anexo76_core
- CORE_DB_NAME=app_core
- CORE_DB_USER=postgres
- CORE_DB_PASSWORD=postgres
# Keycloak — apunta a Workspace real; el cliente anexo76-frontend ya
@@ -97,7 +97,7 @@ services:
ports:
- "8000:8000"
depends_on:
postgres-a76:
postgres-app:
condition: service_healthy
minio:
condition: service_healthy