Files
create-glstack/template/services/api/db/lib.go
T
2026-10-07 15:35:04 +02:00

43 lines
811 B
Go

package db
import (
"<@var(context.project.goprefix)>/<@var(context.project.name)>/config"
"github.com/amacneil/dbmate/v2/pkg/dbmate"
_ "github.com/amacneil/dbmate/v2/pkg/driver/postgres"
"log"
)
var Q *Queries
func RunDbMigrations() error {
err := config.Load()
if err != nil {
return err
}
conf := *config.Conf
db := dbmate.New(conf.Database.URL())
db.FS = MigrationsFs
db.MigrationsDir = []string{"migrations"}
migrations, err := db.FindMigrations()
if err != nil {
return err
}
for _, m := range migrations {
log.Default().Println(m.Version, m.FilePath)
}
db.AutoDumpSchema = false
log.Default().Println("\nApplying...")
err = db.CreateAndMigrate()
if err != nil {
log.Default().Println(err.Error())
}
err = db.DumpSchema()
if err != nil {
return err
}
return nil
}