36 lines
630 B
Go
36 lines
630 B
Go
package storage
|
|
|
|
import (
|
|
"database/sql"
|
|
"os"
|
|
|
|
"gitea.d3m0k1d.ru/d3m0k1d/d3m0k1d.ru/backend/internal/logger"
|
|
_ "modernc.org/sqlite"
|
|
)
|
|
|
|
var db_path = os.Getenv(
|
|
"DB_PATH",
|
|
) + "?_journal_mode=WAL&_busy_timeout=5000&_synchronous=NORMAL&_cache_size=2000&_foreign_keys=ON"
|
|
|
|
func CreateTables() error {
|
|
logger := logger.New(false)
|
|
db, err := sql.Open("sqlite", db_path)
|
|
if err != nil {
|
|
logger.Error(err.Error())
|
|
return err
|
|
}
|
|
_, err = db.Exec(Migrations)
|
|
if err != nil {
|
|
logger.Error(err.Error())
|
|
return err
|
|
}
|
|
|
|
defer func() {
|
|
err = db.Close()
|
|
if err != nil {
|
|
logger.Error(err.Error())
|
|
}
|
|
}()
|
|
return nil
|
|
}
|