orbis/internal/app/app.go
kjuulh e94271d5e2
All checks were successful
continuous-integration/drone/push Build is passing
feat: enable worker process
2025-01-17 21:28:23 +01:00

36 lines
723 B
Go

package app
import (
"log/slog"
"git.front.kjuulh.io/kjuulh/orbis/internal/executor"
"git.front.kjuulh.io/kjuulh/orbis/internal/scheduler"
"git.front.kjuulh.io/kjuulh/orbis/internal/worker"
)
type App struct {
logger *slog.Logger
}
func NewApp() *App {
return &App{
logger: setupLogging(),
}
}
func (a *App) Logger() *slog.Logger {
return a.logger
}
func (a *App) Scheduler() *scheduler.Scheduler {
return scheduler.NewScheduler(a.logger.With("component", "scheduler"), Postgres(), a.Executor())
}
func (a *App) Executor() *executor.Executor {
return executor.NewExecutor(a.logger.With("component", "executor"))
}
func (a *App) Worker() *worker.Worker {
return worker.NewWorker(Postgres(), a.logger)
}