Saltar a contenido

Rollback

Principio

El rollback de código es rápido; el rollback de base de datos no siempre es posible. Por eso las migraciones deben ser compatibles hacia atrás.

Rollback de un servicio ECS

  1. Identificar la task definition anterior estable.
  2. Actualizar el servicio para usar esa revisión.
  3. Verificar que las tareas arranquen correctamente.
  4. Revisar logs y health checks.
  5. Confirmar el flujo principal con un smoke test.
aws ecs update-service \
  --cluster <cluster> \
  --service <service> \
  --task-definition <familia>:<revision-anterior>

Rollback de código

git revert <commit>
git push origin <rama>

Si el problema está en producción, seguir el flujo master → deploy. No reescribir historia en ramas compartidas.

Rollback de migraciones

  • Si la migración es aditiva, normalmente se puede dejar aplicada.
  • Si es destructiva, restaurar desde backup o aplicar una migración compensatoria.
  • Nunca ejecutar migrate:rollback en producción sin revisar el impacto.
  • Documentar el incidente y la decisión.

Después del rollback

  • Confirmar que el servicio quedó estable.
  • Abrir un issue o PR con la causa raíz.
  • Actualizar el runbook si faltaba un paso.
  • Registrar el incidente y el aprendizaje.