blob: 8eff9d547034d2057111d218ce565dad115be439 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
package seeder
import (
"context"
"os"
"github.com/jackc/tern/v2/migrate"
"gitlab.com/alexkavon/newsstand/src/db"
)
func MigrateDatabase(dbpool *db.Db, migrationspath string) error {
conn, err := dbpool.Conn().Acquire(context.Background())
if err != nil {
return err
}
m, err := migrate.NewMigrator(context.Background(), conn.Conn(), "public.schema_version")
if err != nil {
return err
}
// load migration files
err = m.LoadMigrations(os.DirFS(migrationspath))
if err != nil {
return err
}
// migrate!
return m.Migrate(context.Background())
}
|