gloo/runner
Low-level migration runner. runner.run applies or rolls back a list of
migrations, skipping versions already recorded in schema_migrations.
Each migration runs in its own transaction. Normally you call
migrate.main_with_migrations instead of using this directly.
Types
pub type RunnerError {
DbError(String)
MigrationFailed(version: Int, name: String, reason: String)
}
Constructors
-
DbError(String) -
MigrationFailed(version: Int, name: String, reason: String)
Values
pub fn applied_versions(
r: repo.Repo,
) -> Result(List(Int), RunnerError)
V9: return list of applied migration versions in ascending order.
pub fn run(
r: repo.Repo,
migrations: List(migration.Migration),
direction: Direction,
step: option.Option(Int),
) -> Result(Int, RunnerError)
Run pending migrations in the given direction. V8: each migration runs in its own transaction. V9: schema_migrations tracks applied versions; already-applied are skipped.