You've already forked gun-manager-backend
migrations
This commit is contained in:
@@ -3,7 +3,10 @@ package sql
|
||||
import (
|
||||
"context"
|
||||
"database/sql"
|
||||
"errors"
|
||||
sqlc "git.siteworxpro.com/gun-manager/sql/db"
|
||||
"github.com/golang-migrate/migrate/v4"
|
||||
"github.com/golang-migrate/migrate/v4/database/sqlite3"
|
||||
|
||||
_ "modernc.org/sqlite"
|
||||
)
|
||||
@@ -42,3 +45,22 @@ func NewDb(file string) (*Db, error) {
|
||||
func GetDb() *Db {
|
||||
return &dbConnection
|
||||
}
|
||||
|
||||
func (d *Db) Migrate() error {
|
||||
i, err := sqlite3.WithInstance(dbConnection.db, &sqlite3.Config{})
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
m, err := migrate.NewWithDatabaseInstance("file://migrations", "sqlite3", i)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
err = m.Up()
|
||||
if err != nil && !errors.Is(err, migrate.ErrNoChange) {
|
||||
return err
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user