tsk-6: Added docker support (#14)

Closes #6

Reviewed-on: phoenix/textsender-api#14
Co-authored-by: phoenix <kundeng00@pm.me>
Co-committed-by: phoenix <kundeng00@pm.me>
This commit is contained in:
phoenix
2025-11-05 18:22:55 +00:00
committed by phoenix
parent d332cde84f
commit 2045465111
7 changed files with 200 additions and 6 deletions
+15 -5
View File
@@ -14,7 +14,7 @@ import (
"github.com/go-chi/chi/v5/middleware"
"git.kundeng.us/phoenix/textsender-api/internal/config"
"git.kundeng.us/phoenix/textsender-api/internal/db"
database "git.kundeng.us/phoenix/textsender-api/internal/db"
"git.kundeng.us/phoenix/textsender-api/internal/handler"
"git.kundeng.us/phoenix/textsender-api/internal/handler/endpoint"
mdlware "git.kundeng.us/phoenix/textsender-api/internal/middleware"
@@ -32,26 +32,36 @@ func main() {
os.Exit(-1)
}
database, err := db.NewDatabase(cfg.GetDBConnString())
db, err := database.NewDatabase(cfg.GetDBConnString())
if err != nil {
log.Fatalf("Failed to connect to database: %v", err)
}
defer database.Close()
defer db.Close()
ctx := context.Background()
if cfg.ResetDB {
log.Println("Resetting database")
if err := database.ResetDatabase(ctx); err != nil {
if err := db.ResetDatabase(ctx); err != nil {
log.Fatalf("Failed to reset database: %v", err)
}
log.Println("Database reset completed. Exiting.")
return
} else {
if exists, err := database.TableExists(ctx, db.Pool, "contacts "); err == nil && !exists {
fmt.Println("Resetting database")
err = db.ResetDatabase(ctx)
if err != nil {
fmt.Printf("Error:%v", err)
}
} else {
fmt.Printf("Error:%v", err)
}
}
jwtService := services.NewJWTService(cfg.JWTSecret)
contactStore := store.NewContactStore(database.Pool)
contactStore := store.NewContactStore(db.Pool)
contactHandler := handler.NewContactHandler(contactStore)
router := chi.NewRouter()