use config package in cli
This commit is contained in:
parent
9a1e6122fa
commit
3145c2c0aa
@ -8,6 +8,7 @@ import (
|
|||||||
"log"
|
"log"
|
||||||
"os"
|
"os"
|
||||||
|
|
||||||
|
"git.keircn.com/keiran/termcloud/internal/config"
|
||||||
"git.keircn.com/keiran/termcloud/internal/db"
|
"git.keircn.com/keiran/termcloud/internal/db"
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -29,13 +30,15 @@ func main() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
ctx := context.Background()
|
ctx := context.Background()
|
||||||
pool, err := db.NewPool(ctx)
|
cfg := config.Load()
|
||||||
|
|
||||||
|
pool, err := db.NewPool(ctx, cfg)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Fatalf("Failed to create database pool: %v", err)
|
log.Fatalf("Failed to create database pool: %v", err)
|
||||||
}
|
}
|
||||||
defer db.ClosePool(pool)
|
defer db.ClosePool(pool)
|
||||||
|
|
||||||
bucketService := db.NewBucketService(pool)
|
bucketService := db.NewBucketService(pool, cfg)
|
||||||
|
|
||||||
switch os.Args[1] {
|
switch os.Args[1] {
|
||||||
case "create-user":
|
case "create-user":
|
||||||
@ -46,7 +49,7 @@ func main() {
|
|||||||
|
|
||||||
username := os.Args[2]
|
username := os.Args[2]
|
||||||
email := os.Args[3]
|
email := os.Args[3]
|
||||||
storageLimit := int64(1) * 1024 * 1024 * 1024
|
storageLimit := cfg.DefaultStorageLimit
|
||||||
|
|
||||||
if len(os.Args) >= 5 {
|
if len(os.Args) >= 5 {
|
||||||
var limitGB int64
|
var limitGB int64
|
||||||
|
|||||||
@ -2,9 +2,10 @@ package main
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"context"
|
"context"
|
||||||
|
"fmt"
|
||||||
"log"
|
"log"
|
||||||
"os"
|
|
||||||
|
|
||||||
|
"git.keircn.com/keiran/termcloud/internal/config"
|
||||||
"git.keircn.com/keiran/termcloud/internal/db"
|
"git.keircn.com/keiran/termcloud/internal/db"
|
||||||
"git.keircn.com/keiran/termcloud/internal/handlers"
|
"git.keircn.com/keiran/termcloud/internal/handlers"
|
||||||
"github.com/labstack/echo/v4"
|
"github.com/labstack/echo/v4"
|
||||||
@ -14,30 +15,31 @@ import (
|
|||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
ctx := context.Background()
|
ctx := context.Background()
|
||||||
|
cfg := config.Load()
|
||||||
|
|
||||||
pool, err := db.NewPool(ctx)
|
pool, err := db.NewPool(ctx, cfg)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Fatalf("Failed to create database pool: %v", err)
|
log.Fatalf("Failed to create database pool: %v", err)
|
||||||
}
|
}
|
||||||
defer db.ClosePool(pool)
|
defer db.ClosePool(pool)
|
||||||
|
|
||||||
bucketService := db.NewBucketService(pool)
|
bucketService := db.NewBucketService(pool, cfg)
|
||||||
h := handlers.NewHandlers(bucketService)
|
h := handlers.NewHandlers(bucketService)
|
||||||
|
|
||||||
e := echo.New()
|
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{
|
e.Use(middleware.CORSWithConfig(middleware.CORSConfig{
|
||||||
AllowOrigins: []string{"*"},
|
AllowOrigins: cfg.CORSOrigins,
|
||||||
AllowMethods: []string{echo.GET, echo.POST, echo.PUT, echo.DELETE},
|
AllowMethods: []string{echo.GET, echo.POST, echo.PUT, echo.DELETE},
|
||||||
AllowHeaders: []string{"*"},
|
AllowHeaders: []string{"*"},
|
||||||
}))
|
}))
|
||||||
e.Use(middleware.GzipWithConfig(middleware.GzipConfig{
|
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)
|
e.GET("/", h.RootHandler)
|
||||||
|
|
||||||
@ -53,10 +55,5 @@ func main() {
|
|||||||
api.GET("/buckets/:bucket/objects/*", h.GetObjectHandler)
|
api.GET("/buckets/:bucket/objects/*", h.GetObjectHandler)
|
||||||
api.DELETE("/buckets/:bucket/objects/*", h.DeleteObjectHandler)
|
api.DELETE("/buckets/:bucket/objects/*", h.DeleteObjectHandler)
|
||||||
|
|
||||||
port := os.Getenv("PORT")
|
e.Logger.Fatal(e.Start(":" + cfg.Port))
|
||||||
if port == "" {
|
|
||||||
port = "8080"
|
|
||||||
}
|
|
||||||
|
|
||||||
e.Logger.Fatal(e.Start(":" + port))
|
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user