51 lines
1.4 KiB
Go
51 lines
1.4 KiB
Go
package app
|
|
|
|
import (
|
|
"log/slog"
|
|
|
|
"gitea.maximumdirect.net/eric/narratio/internal/adapters/analyzer"
|
|
"gitea.maximumdirect.net/eric/narratio/internal/adapters/audita"
|
|
"gitea.maximumdirect.net/eric/narratio/internal/adapters/notify"
|
|
"gitea.maximumdirect.net/eric/narratio/internal/adapters/seriatim"
|
|
"gitea.maximumdirect.net/eric/narratio/internal/adapters/storage"
|
|
"gitea.maximumdirect.net/eric/narratio/internal/adapters/whisperx"
|
|
"gitea.maximumdirect.net/eric/narratio/internal/artifacts"
|
|
"gitea.maximumdirect.net/eric/narratio/internal/config"
|
|
"gitea.maximumdirect.net/eric/narratio/internal/manifest"
|
|
"gitea.maximumdirect.net/eric/narratio/internal/stage"
|
|
)
|
|
|
|
// Env is the shared dependency container passed to orchestrator components.
|
|
type Env struct {
|
|
Config *config.Config
|
|
ArtifactStore artifacts.Store
|
|
ManifestStore manifest.Store
|
|
Logger *slog.Logger
|
|
|
|
WhisperX whisperx.Client
|
|
Seriatim seriatim.Runner
|
|
Audita audita.Runner
|
|
Analyzer analyzer.Runner
|
|
Storage storage.Backend
|
|
Notifier notify.Sender
|
|
}
|
|
|
|
func toStageEnv(env *Env) *stage.Env {
|
|
if env == nil {
|
|
return nil
|
|
}
|
|
|
|
return &stage.Env{
|
|
Config: env.Config,
|
|
ArtifactStore: env.ArtifactStore,
|
|
ManifestStore: env.ManifestStore,
|
|
Logger: env.Logger,
|
|
WhisperX: env.WhisperX,
|
|
Seriatim: env.Seriatim,
|
|
Audita: env.Audita,
|
|
Analyzer: env.Analyzer,
|
|
Storage: env.Storage,
|
|
Notifier: env.Notifier,
|
|
}
|
|
}
|