mirror of
https://github.com/get-drexa/drive.git
synced 2025-12-01 05:51:39 +00:00
- read database config from config file - rename migration file to expected file name format
29 lines
573 B
Go
29 lines
573 B
Go
package database
|
|
|
|
import (
|
|
"context"
|
|
"embed"
|
|
|
|
"github.com/uptrace/bun"
|
|
"github.com/uptrace/bun/migrate"
|
|
)
|
|
|
|
//go:embed migrations/*.sql
|
|
var sqlMigrations embed.FS
|
|
|
|
// RunMigrations discovers and runs all migrations against the database.
|
|
func RunMigrations(ctx context.Context, db *bun.DB) error {
|
|
migrations := migrate.NewMigrations()
|
|
if err := migrations.Discover(sqlMigrations); err != nil {
|
|
return err
|
|
}
|
|
|
|
migrator := migrate.NewMigrator(db, migrations)
|
|
if err := migrator.Init(ctx); err != nil {
|
|
return err
|
|
}
|
|
|
|
_, err := migrator.Migrate(ctx)
|
|
return err
|
|
}
|