embedded schema.sql

This commit is contained in:
$(pass /github/name)
2024-07-07 16:52:44 +02:00
parent 0e41b9e8e3
commit 4ba0ce11d4
2 changed files with 13 additions and 6 deletions

View File

@@ -1,22 +1,29 @@
package database package database
import ( import (
"GoMembership/internal/config"
"GoMembership/pkg/logger"
"database/sql" "database/sql"
"os" "os"
"GoMembership/internal/config"
"GoMembership/pkg/logger"
"embed"
_ "github.com/mattn/go-sqlite3" _ "github.com/mattn/go-sqlite3"
) )
func initializeDB(dbPath string, schemaPath string) error { //go:embed schema.sql
var fs embed.FS
func initializeDB(dbPath string) error {
db, err := sql.Open("sqlite3", dbPath) db, err := sql.Open("sqlite3", dbPath)
if err != nil { if err != nil {
return err return err
} }
defer db.Close() defer db.Close()
schema, err := os.ReadFile(schemaPath) schema, err := fs.ReadFile("schema.sql")
if err != nil { if err != nil {
return err return err
} }
@@ -30,7 +37,7 @@ func initializeDB(dbPath string, schemaPath string) error {
func Connect(DBcfg config.DatabaseConfig) *sql.DB { func Connect(DBcfg config.DatabaseConfig) *sql.DB {
_, err := os.Stat(DBcfg.DBPath) _, err := os.Stat(DBcfg.DBPath)
if os.IsNotExist(err) { if os.IsNotExist(err) {
initErr := initializeDB(DBcfg.DBPath, "internal/database/schema.sql") initErr := initializeDB(DBcfg.DBPath)
if initErr != nil { if initErr != nil {
logger.Error.Fatalf("Couldn't create database: %v", initErr) logger.Error.Fatalf("Couldn't create database: %v", initErr)
} }

View File

@@ -11,7 +11,7 @@ func LoggerMiddleware(next http.Handler) http.Handler {
return http.HandlerFunc( return http.HandlerFunc(
func(w http.ResponseWriter, r *http.Request) { func(w http.ResponseWriter, r *http.Request) {
start := time.Now() start := time.Now()
next.ServeHTTP(w, r)
logger.Info.Printf("%s %s %s", r.Method, r.RequestURI, time.Since(start)) logger.Info.Printf("%s %s %s", r.Method, r.RequestURI, time.Since(start))
next.ServeHTTP(w, r)
}) })
} }