use config package in cli

This commit is contained in:
Keiran 2025-08-07 18:35:00 +01:00
parent 9a1e6122fa
commit 3145c2c0aa
2 changed files with 17 additions and 17 deletions

View File

@ -8,6 +8,7 @@ import (
"log"
"os"
"git.keircn.com/keiran/termcloud/internal/config"
"git.keircn.com/keiran/termcloud/internal/db"
)
@ -29,13 +30,15 @@ func main() {
}
ctx := context.Background()
pool, err := db.NewPool(ctx)
cfg := config.Load()
pool, err := db.NewPool(ctx, cfg)
if err != nil {
log.Fatalf("Failed to create database pool: %v", err)
}
defer db.ClosePool(pool)
bucketService := db.NewBucketService(pool)
bucketService := db.NewBucketService(pool, cfg)
switch os.Args[1] {
case "create-user":
@ -46,7 +49,7 @@ func main() {
username := os.Args[2]
email := os.Args[3]
storageLimit := int64(1) * 1024 * 1024 * 1024
storageLimit := cfg.DefaultStorageLimit
if len(os.Args) >= 5 {
var limitGB int64

View File

@ -2,9 +2,10 @@ package main
import (
"context"
"fmt"
"log"
"os"
"git.keircn.com/keiran/termcloud/internal/config"
"git.keircn.com/keiran/termcloud/internal/db"
"git.keircn.com/keiran/termcloud/internal/handlers"
"github.com/labstack/echo/v4"
@ -14,30 +15,31 @@ import (
func main() {
ctx := context.Background()
cfg := config.Load()
pool, err := db.NewPool(ctx)
pool, err := db.NewPool(ctx, cfg)
if err != nil {
log.Fatalf("Failed to create database pool: %v", err)
}
defer db.ClosePool(pool)
bucketService := db.NewBucketService(pool)
bucketService := db.NewBucketService(pool, cfg)
h := handlers.NewHandlers(bucketService)
e := echo.New()
e.Use(middleware.BodyLimit("100M"))
e.Use(middleware.BodyLimit(fmt.Sprintf("%dM", cfg.MaxFileSize/1024/1024)))
e.Use(middleware.CORSWithConfig(middleware.CORSConfig{
AllowOrigins: []string{"*"},
AllowOrigins: cfg.CORSOrigins,
AllowMethods: []string{echo.GET, echo.POST, echo.PUT, echo.DELETE},
AllowHeaders: []string{"*"},
}))
e.Use(middleware.GzipWithConfig(middleware.GzipConfig{
Level: 5,
Level: cfg.GzipLevel,
}))
e.Use(middleware.RateLimiter(middleware.NewRateLimiterMemoryStore(rate.Limit(20))))
e.Use(middleware.RateLimiter(middleware.NewRateLimiterMemoryStore(rate.Limit(cfg.RateLimit))))
e.Static("/storage", "storage")
e.Static("/storage", cfg.StorageDir)
e.GET("/", h.RootHandler)
@ -53,10 +55,5 @@ func main() {
api.GET("/buckets/:bucket/objects/*", h.GetObjectHandler)
api.DELETE("/buckets/:bucket/objects/*", h.DeleteObjectHandler)
port := os.Getenv("PORT")
if port == "" {
port = "8080"
}
e.Logger.Fatal(e.Start(":" + port))
e.Logger.Fatal(e.Start(":" + cfg.Port))
}