Files
rock1hu-bot/local/api/api.go
Fran Jurmanović 14a689ad76 init
2024-09-30 22:00:15 +02:00

45 lines
895 B
Go

package api
import (
"os"
"rockhu-bot/local/controller"
"rockhu-bot/local/job"
"rockhu-bot/local/utl/common"
"rockhu-bot/local/utl/configs"
"github.com/gofiber/fiber/v2"
"github.com/gofiber/fiber/v2/middleware/basicauth"
"go.uber.org/dig"
)
// Routes
// Initializes web api controllers and its corresponding routes.
//
// Args:
// *fiber.App: Fiber Application
func Init(di *dig.Container, app *fiber.App) {
groups := app.Group(configs.Prefix)
basicAuthConfig := basicauth.New(basicauth.Config{
Users: map[string]string{
"admin": os.Getenv("PASSWORD"),
},
})
routeGroups := &common.RouteGroups{
Concert: groups.Group("/concert"),
}
routeGroups.Concert.Use(basicAuthConfig)
err := di.Provide(func() *common.RouteGroups {
return routeGroups
})
if err != nil {
panic("unable to bind routes")
}
controller.InitializeControllers(di)
job.InitializeJobs(di)
}