forked from tangled.org/core
Monorepo for Tangled — https://tangled.org
1package pipelines 2 3import ( 4 "log/slog" 5 "net/http" 6 7 "tangled.sh/tangled.sh/core/appview/config" 8 "tangled.sh/tangled.sh/core/appview/db" 9 "tangled.sh/tangled.sh/core/appview/idresolver" 10 "tangled.sh/tangled.sh/core/appview/oauth" 11 "tangled.sh/tangled.sh/core/appview/pages" 12 "tangled.sh/tangled.sh/core/appview/reporesolver" 13 "tangled.sh/tangled.sh/core/eventconsumer" 14 "tangled.sh/tangled.sh/core/log" 15 "tangled.sh/tangled.sh/core/rbac" 16 17 "github.com/go-chi/chi/v5" 18 "github.com/posthog/posthog-go" 19) 20 21type Pipelines struct { 22 repoResolver *reporesolver.RepoResolver 23 idResolver *idresolver.Resolver 24 config *config.Config 25 oauth *oauth.OAuth 26 pages *pages.Pages 27 spindlestream *eventconsumer.Consumer 28 db *db.DB 29 enforcer *rbac.Enforcer 30 posthog posthog.Client 31 Logger *slog.Logger 32} 33 34func New( 35 oauth *oauth.OAuth, 36 repoResolver *reporesolver.RepoResolver, 37 pages *pages.Pages, 38 spindlestream *eventconsumer.Consumer, 39 idResolver *idresolver.Resolver, 40 db *db.DB, 41 config *config.Config, 42 posthog posthog.Client, 43 enforcer *rbac.Enforcer, 44) *Pipelines { 45 logger := log.New("pipelines") 46 47 return &Pipelines{oauth: oauth, 48 repoResolver: repoResolver, 49 pages: pages, 50 idResolver: idResolver, 51 config: config, 52 spindlestream: spindlestream, 53 db: db, 54 posthog: posthog, 55 enforcer: enforcer, 56 Logger: logger, 57 } 58}