Adds dbconfig.yml
to run migrations from outside of application
This commit is contained in:
parent
89d4cac2c8
commit
efff6edf0e
2 changed files with 10 additions and 4 deletions
5
dbconfig.yml
Normal file
5
dbconfig.yml
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
local:
|
||||||
|
dialect: sqlite3
|
||||||
|
datasource: freed.db
|
||||||
|
dir: internal/database/migrations
|
||||||
|
table: gorp_migrations
|
||||||
|
|
@ -13,7 +13,8 @@ import (
|
||||||
var dbMigrations embed.FS
|
var dbMigrations embed.FS
|
||||||
|
|
||||||
func Connect(filename string) (*sql.DB, error) {
|
func Connect(filename string) (*sql.DB, error) {
|
||||||
db, err := sql.Open("sqlite3", filename)
|
dbOptions := "?_fk=on&_journal=WAL&sync=normal"
|
||||||
|
db, err := sql.Open("sqlite3", filename+dbOptions)
|
||||||
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
|
|
@ -24,13 +25,13 @@ func Connect(filename string) (*sql.DB, error) {
|
||||||
Root: "migrations",
|
Root: "migrations",
|
||||||
}
|
}
|
||||||
|
|
||||||
n, err := migrate.Exec(db, "sqlite3", migrations, migrate.Up)
|
_, migrateErr := migrate.Exec(db, "sqlite3", migrations, migrate.Up)
|
||||||
|
|
||||||
if err != nil {
|
if migrateErr != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
fmt.Printf("Applied migrations - Database is ready!\n", n)
|
fmt.Println("Applied migrations - Database is ready!")
|
||||||
|
|
||||||
return db, nil
|
return db, nil
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue