add membership

This commit is contained in:
Fran Jurmanović
2025-06-26 00:51:54 +02:00
parent 69733e4940
commit 74df36cd0d
24 changed files with 863 additions and 83 deletions

View File

@@ -2,13 +2,14 @@ package api
import (
"acc-server-manager/local/controller"
"acc-server-manager/local/service"
"acc-server-manager/local/utl/common"
"acc-server-manager/local/utl/configs"
"acc-server-manager/local/utl/logging"
"os"
"context"
"fmt"
"github.com/gofiber/fiber/v2"
"github.com/gofiber/fiber/v2/middleware/basicauth"
"go.uber.org/dig"
)
@@ -18,25 +19,28 @@ import (
// Args:
// *fiber.App: Fiber Application
func Init(di *dig.Container, app *fiber.App) {
// Setup initial data for membership
di.Invoke(func(membershipService *service.MembershipService) {
if err := membershipService.SetupInitialData(context.Background()); err != nil {
logging.Panic(fmt.Sprintf("failed to setup initial data: %v", err))
}
})
// Protected routes
groups := app.Group(configs.Prefix)
basicAuthConfig := basicauth.New(basicauth.Config{
Users: map[string]string{
"admin": os.Getenv("PASSWORD"),
},
})
serverIdGroup := groups.Group("/server/:id")
routeGroups := &common.RouteGroups{
Api: groups.Group("/api"),
Server: groups.Group("/server"),
Config: serverIdGroup.Group("/config"),
Lookup: groups.Group("/lookup"),
Api: groups.Group("/api"),
Auth: app.Group("/auth"),
Server: groups.Group("/server"),
Config: serverIdGroup.Group("/config"),
Lookup: groups.Group("/lookup"),
StateHistory: serverIdGroup.Group("/state-history"),
}
groups.Use(basicAuthConfig)
err := di.Provide(func() *common.RouteGroups {
return routeGroups
})