All checks were successful
Build and Push Docker Image / build-and-push (push) Successful in 3m37s
37 lines
1.1 KiB
Go
37 lines
1.1 KiB
Go
package main
|
|
|
|
import (
|
|
"git.kanopo.dev/rhythm/rhythm-backend/internal/config"
|
|
"git.kanopo.dev/rhythm/rhythm-backend/internal/db"
|
|
usersdb "git.kanopo.dev/rhythm/rhythm-backend/internal/db/users"
|
|
"git.kanopo.dev/rhythm/rhythm-backend/internal/http"
|
|
"git.kanopo.dev/rhythm/rhythm-backend/internal/http/api/auth"
|
|
"git.kanopo.dev/rhythm/rhythm-backend/internal/http/api/health"
|
|
"git.kanopo.dev/rhythm/rhythm-backend/internal/logger"
|
|
"git.kanopo.dev/rhythm/rhythm-backend/internal/service/users"
|
|
"go.uber.org/fx"
|
|
"go.uber.org/fx/fxevent"
|
|
"go.uber.org/zap"
|
|
)
|
|
|
|
func main() {
|
|
fx.New(
|
|
fx.Provide(
|
|
config.Provide, //config
|
|
logger.ProvideLogger, //logger
|
|
db.ProvidePool, // pool provider
|
|
usersdb.New, // generated code for sqlc
|
|
users.NewService, // service
|
|
http.NewServer, // http server
|
|
health.NewHandler, // http handler
|
|
auth.NewHandler, //http handler
|
|
),
|
|
fx.Invoke(
|
|
http.GlueRoutes,
|
|
),
|
|
fx.WithLogger(func(logger *zap.Logger) fxevent.Logger {
|
|
return &fxevent.ZapLogger{Logger: logger}
|
|
}),
|
|
).Run()
|
|
}
|