Skip to content

[DB-02] Integrate and validate team migrations before shared deployment #43

Description

@Krisor1986

Objetivo

Integrar y validar conjuntamente las migraciones aportadas por el equipo cuando estén disponibles los cambios de modelos de los módulos. Según la orientación del profesor comunicada por el equipo, la integración de migraciones se pospone para permitir que ahora se avance con los endpoints.

Relación con DB-01

Tareas

  • Inventariar las migraciones y cambios de modelos de los PRs del equipo que vayan a integrarse en esta entrega, incluyendo Aplicar migración inicial de base de datos #42.
  • Acordar la revisión base compartida y documentar qué migraciones están aplicadas en los entornos del equipo.
  • Revisar revision y down_revision, detectar múltiples heads, operaciones duplicadas y conflictos entre tablas, columnas, índices, restricciones y tipos PostgreSQL.
  • Resolver el orden y las dependencias de las revisiones. Usar una revisión de unión cuando corresponda; unir heads no resuelve por sí solo operaciones de esquema incompatibles.
  • No borrar ni reescribir revisiones ya compartidas o aplicadas sin definir antes una estrategia acordada. Documentar el tratamiento de la revisión antigua eliminada en Aplicar migración inicial de base de datos #42.
  • Comparar el esquema final con los modelos SQLAlchemy y el DBML aprobados, incluidas las relaciones y restricciones de las entidades operacionales.
  • Verificar los datos iniciales de roles y planes, con precios en EUR y prueba de 3 días, según las reglas aprobadas. Revisar los valores de prueba del seed de Aplicar migración inicial de base de datos #42.
  • Validar la cadena completa en PostgreSQL vacío y la actualización desde la revisión compartida acordada; documentar cualquier requisito de reinicialización de una base local desechable.
  • Probar downgrade y posterior upgrade en una base desechable; documentar límites y posibles pérdidas de datos de las operaciones reversas.
  • Documentar comandos, orden de ejecución y resultados para que todos puedan reproducir el mismo esquema.

Criterios de aceptación

  • Las migraciones incluidas en la entrega forman una cadena coherente con una cabeza final acordada y sin conflictos pendientes.
  • Una base PostgreSQL vacía puede crearse con las migraciones y recibir el seed correctamente.
  • La actualización desde la base compartida acordada está probada o tiene un procedimiento explícito si requiere reinicialización local.
  • El esquema resultante coincide con los modelos aprobados y las validaciones de upgrade/downgrade están registradas.
  • El equipo dispone de instrucciones reproducibles antes del despliegue compartido.

Momento de ejecución y límites

Estado previsto: Backlog, para la fase de integración acordada con el profesor. Responsable por acordar con el equipo.

Los tickets de endpoints pueden avanzar antes de esta integración. Cada desarrollador debe documentar cómo prepara su base local compatible y qué comprobaciones ejecutó; este aplazamiento no demuestra que las migraciones estén validadas ni permite afirmar que se probaron endpoints sin un entorno funcional.

No incluye implementar endpoints, funcionalidades de negocio ni desplegar la aplicación. El PR de integración tendrá como destino develop. Coordinar su finalización antes de aplicar las migraciones del entorno compartido de #39.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions