Files
gerald/cmd/main.go
aspasskiy e5369db142
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/promote/production Build is passing
update
2024-04-20 17:53:24 +03:00

40 lines
679 B
Go

package main
import (
"gerald/internal/adapters/config"
"gerald/internal/adapters/logger"
"gerald/internal/interfaces/rest"
"gerald/internal/interfaces/rest/handlers"
"gerald/internal/services"
"gerald/repo/pg"
"go.uber.org/fx"
)
func main() {
fx.New(
// COMMON
fx.Provide(config.GetConfig),
fx.Provide(logger.NewLogger),
// SERVICES
fx.Provide(services.NewFeedbackService),
// SERVER
fx.Provide(rest.NewServer),
fx.Invoke(rest.StartHTTPServer),
// HANDLERS
fx.Provide(handlers.NewFeedbackHandler),
// DB
fx.Provide(
fx.Annotate(
pg.NewClient,
fx.OnStop(pg.Close),
),
pg.NewDB,
),
fx.Invoke(pg.CreateSchema),
).Run()
}