embedded schema.sql
This commit is contained in:
@@ -1,22 +1,29 @@
|
||||
package database
|
||||
|
||||
import (
|
||||
"GoMembership/internal/config"
|
||||
"GoMembership/pkg/logger"
|
||||
"database/sql"
|
||||
"os"
|
||||
|
||||
"GoMembership/internal/config"
|
||||
"GoMembership/pkg/logger"
|
||||
|
||||
"embed"
|
||||
|
||||
_ "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)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
defer db.Close()
|
||||
|
||||
schema, err := os.ReadFile(schemaPath)
|
||||
schema, err := fs.ReadFile("schema.sql")
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
@@ -30,7 +37,7 @@ func initializeDB(dbPath string, schemaPath string) error {
|
||||
func Connect(DBcfg config.DatabaseConfig) *sql.DB {
|
||||
_, err := os.Stat(DBcfg.DBPath)
|
||||
if os.IsNotExist(err) {
|
||||
initErr := initializeDB(DBcfg.DBPath, "internal/database/schema.sql")
|
||||
initErr := initializeDB(DBcfg.DBPath)
|
||||
if initErr != nil {
|
||||
logger.Error.Fatalf("Couldn't create database: %v", initErr)
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ func LoggerMiddleware(next http.Handler) http.Handler {
|
||||
return http.HandlerFunc(
|
||||
func(w http.ResponseWriter, r *http.Request) {
|
||||
start := time.Now()
|
||||
next.ServeHTTP(w, r)
|
||||
logger.Info.Printf("%s %s %s", r.Method, r.RequestURI, time.Since(start))
|
||||
next.ServeHTTP(w, r)
|
||||
})
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user