import { Column, CreateDateColumn, Entity, Index, PrimaryGeneratedColumn } from "typeorm";

// Un paso individual (una migracion TypeORM) dentro de un MigrationJob,
// registrado apenas se aplica exitosamente. Es el detalle que permite
// reintentar desde el paso exacto donde murio, no desde el principio.
@Entity("migration_job_steps")
export class MigrationJobStep {
  @PrimaryGeneratedColumn()
  id: number;

  @Column({ name: "migration_job_id" })
  @Index()
  migrationJobId: number;

  @Column({ name: "migracion_nombre", length: 255 })
  migracionNombre: string;

  @CreateDateColumn({ name: "aplicado_en" })
  aplicadoEn: Date;
}
