|
|
|
@ -5,10 +5,9 @@ import (
|
|
|
|
"context"
|
|
|
|
"context"
|
|
|
|
"database/sql"
|
|
|
|
"database/sql"
|
|
|
|
"fmt"
|
|
|
|
"fmt"
|
|
|
|
"path/filepath"
|
|
|
|
|
|
|
|
"runtime"
|
|
|
|
|
|
|
|
"time"
|
|
|
|
"time"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
"github.com/gabehf/koito/db/migrations"
|
|
|
|
"github.com/gabehf/koito/internal/cfg"
|
|
|
|
"github.com/gabehf/koito/internal/cfg"
|
|
|
|
"github.com/gabehf/koito/internal/db"
|
|
|
|
"github.com/gabehf/koito/internal/db"
|
|
|
|
"github.com/gabehf/koito/internal/repository"
|
|
|
|
"github.com/gabehf/koito/internal/repository"
|
|
|
|
@ -54,13 +53,9 @@ func New() (*Psql, error) {
|
|
|
|
return nil, fmt.Errorf("psql.New: failed to open db for migrations: %w", err)
|
|
|
|
return nil, fmt.Errorf("psql.New: failed to open db for migrations: %w", err)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
_, filename, _, ok := runtime.Caller(0)
|
|
|
|
goose.SetBaseFS(migrations.Files)
|
|
|
|
if !ok {
|
|
|
|
|
|
|
|
return nil, fmt.Errorf("psql.New: unable to get caller info")
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
migrationsPath := filepath.Join(filepath.Dir(filename), "..", "..", "..", "db", "migrations")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if err := goose.Up(sqlDB, migrationsPath); err != nil {
|
|
|
|
if err := goose.Up(sqlDB, "."); err != nil {
|
|
|
|
return nil, fmt.Errorf("psql.New: goose failed: %w", err)
|
|
|
|
return nil, fmt.Errorf("psql.New: goose failed: %w", err)
|
|
|
|
}
|
|
|
|
}
|
|
|
|
_ = sqlDB.Close()
|
|
|
|
_ = sqlDB.Close()
|
|
|
|
|