From 47dab069c3602d69f1a3cd702653fcb98bf075a2 Mon Sep 17 00:00:00 2001 From: Dennis Schoepf Date: Fri, 26 Apr 2024 17:23:25 +0200 Subject: [PATCH] Adapts database connections --- internal/database/database.go | 14 ++++++++------ main.go | 21 +++++++++++++-------- 2 files changed, 21 insertions(+), 14 deletions(-) diff --git a/internal/database/database.go b/internal/database/database.go index 939c5de..dacd5c1 100644 --- a/internal/database/database.go +++ b/internal/database/database.go @@ -9,14 +9,16 @@ import ( migrate "github.com/rubenv/sql-migrate" ) +var DB *sqlx.DB + //go:embed migrations/* var dbMigrations embed.FS -func New(filename string) (*sqlx.DB, error) { - db, err := sqlx.Open("sqlite3", filename) +func Connect(filename string) error { + DB, err := sqlx.Open("sqlite3", filename) if err != nil { - return nil, err + return err } migrations := migrate.EmbedFileSystemMigrationSource{ @@ -24,13 +26,13 @@ func New(filename string) (*sqlx.DB, error) { Root: "migrations", } - n, err := migrate.Exec(db.DB, "sqlite3", migrations, migrate.Up) + n, err := migrate.Exec(DB.DB, "sqlite3", migrations, migrate.Up) if err != nil { - return nil, err + return err } fmt.Printf("Applied %d migrations - Database is ready!\n", n) - return db, err + return nil } diff --git a/main.go b/main.go index 8b87782..001f736 100644 --- a/main.go +++ b/main.go @@ -1,31 +1,36 @@ package main import ( + "freed/internal/api" "freed/internal/database" "log" - "net/http" "github.com/gofiber/fiber/v2" + "github.com/gofiber/fiber/v2/middleware/logger" +) + +var ( + dbFile = "./freed.db" ) func main() { - _, err := database.New("./freed.db") + err := database.Connect(dbFile) if err != nil { log.Fatalf("Could not initialize database: %v", err) } app := fiber.New() - - // Routes - app.Get("/status", func(c *fiber.Ctx) error { - c.JSON(fiber.Map{ + app.Use(logger.New()) + app.Get("/", func(ctx *fiber.Ctx) error { + return ctx.JSON(&fiber.Map{ "application": "freed", "version": "0.0.1", - "status": "up", + "status": "running", }) - return c.SendStatus(http.StatusOK) }) + api.Setup(app) + app.Listen(":42069") }