Skip to content

chore(infra): eliminar SQL Server del despliegue; estandarizar en PostgreSQL (fase 1)#12

Merged
beyondnetPeru merged 1 commit into
mainfrom
chore/remove-sqlserver
Jul 26, 2026
Merged

chore(infra): eliminar SQL Server del despliegue; estandarizar en PostgreSQL (fase 1)#12
beyondnetPeru merged 1 commit into
mainfrom
chore/remove-sqlserver

Conversation

@beyondnetPeru

Copy link
Copy Markdown
Contributor

Estandariza el despliegue local en PostgreSQL y elimina SQL Server de la infra/config. Fase 1 (despliegue + config); el código de repos/provider queda para una fase 2 planificada.

Contexto

El chart infra/local/kubernetes/helm/ums desplegaba SQL Server como BD del cluster evolith-ums-cluster, inconsistente con el producto (que corre sobre PostgreSQL: appsettings Dev/UAT, evolith.yaml, y la fuente unimar-ums).

Cambios

  • Chart ums: eliminado templates/sqlserver.yaml; añadido templates/postgres.yaml (postgres:15-alpine, svc postgres, PVC pgdata). api.yamlHost=postgres, Persistence__Provider=PostgreSql + UsePostgreSql*Stores. values.yaml: bloque sqlserver → postgres.
  • appsettings.Production.json: Provider SqlServer → PostgreSql (era el único entorno con SQL Server activo).
  • Docs infra: accesos_local.md (port-forward svc/postgres:5432), plan_es.md (puerto 5432).
  • Eliminados scripts one-off sin referencias (patch_compose.py, patch_di.py).

Validación

helm template renderiza el chart en Postgres; JSON válido. No se toca el código .NET (los SqlServer*Repository son los repos relacionales activos de Postgres — su renombrado/limpieza es la fase 2, documentada).

Pendiente (fase 2, código — mayor riesgo)

Renombrar/consolidar los 20 SqlServer*Repository (activos, usados por Postgres), retirar el set PostgreSql*Repository muerto, el enum PersistenceProvider.SqlServer, la rama UseSqlServer del DbContext, migraciones .sql, paquetes NuGet y SqlServerSchemaBootstrapper/SqlServerDistributedLockProvider, con validación contra Postgres real.

🤖 Generated with Claude Code

… en PostgreSQL

Fase 1 (despliegue + config; el código de repos/provider queda para fase 2):

- Chart infra/local/kubernetes/helm/ums: el `ums` desplegaba SQL Server como BD.
  Se elimina templates/sqlserver.yaml, se añade templates/postgres.yaml
  (postgres:15-alpine, svc `postgres`, PVC pgdata) y el api apunta a Postgres
  (ConnectionStrings Host=postgres;…; Persistence__Provider=PostgreSql +
  UsePostgreSql*Stores). values.yaml: bloque sqlserver → postgres.
- appsettings.Production.json: Provider SqlServer → PostgreSql (era el único
  entorno con SQL Server activo; Development/UAT/base ya eran Postgres).
- infra/accesos_local.md: port-forward svc/sqlserver-lite:1433 → svc/postgres:5432.
- infra/plan_es.md: puerto DB interno 5432/1433 → 5432 (PostgreSQL).
- Eliminados scripts one-off sin referencias infra/patch_compose.py y patch_di.py.

Validado: `helm template` renderiza el chart en Postgres; JSON válido. El código
.NET no se toca en esta fase (los repos SqlServer* siguen siendo los relacionales
activos de Postgres; su renombrado/limpieza es la fase 2).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@beyondnetPeru
beyondnetPeru merged commit 0b3789c into main Jul 26, 2026
13 of 18 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant