summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormo khan <mo@mokhan.ca>2025-04-21 13:20:49 -0600
committermo khan <mo@mokhan.ca>2025-04-21 13:20:49 -0600
commitd674365b49f94b7d8f50411350287113a13509c1 (patch)
tree2644b1883dcc2d382dcb5f2fdab855d16021b1d2
parentbbd583211275e686f1292a93c828fde64fdda8ed (diff)
feat: connect the current user middleware
-rw-r--r--app/app.go6
-rw-r--r--app/init.go3
2 files changed, 8 insertions, 1 deletions
diff --git a/app/app.go b/app/app.go
index 6dc9d4a..17db52a 100644
--- a/app/app.go
+++ b/app/app.go
@@ -11,6 +11,8 @@ import (
"gitlab.com/gitlab-org/software-supply-chain-security/authorization/sparkled/app/controllers/health"
"gitlab.com/gitlab-org/software-supply-chain-security/authorization/sparkled/app/controllers/sessions"
"gitlab.com/gitlab-org/software-supply-chain-security/authorization/sparkled/app/controllers/sparkles"
+ "gitlab.com/gitlab-org/software-supply-chain-security/authorization/sparkled/pkg/db"
+ "gitlab.com/gitlab-org/software-supply-chain-security/authorization/sparkled/pkg/domain"
"gitlab.com/gitlab-org/software-supply-chain-security/authorization/sparkled/pkg/oidc"
"gitlab.com/gitlab-org/software-supply-chain-security/authorization/sparkled/pkg/web"
"gitlab.com/gitlab-org/software-supply-chain-security/authorization/sparkled/pkg/web/middleware"
@@ -34,6 +36,8 @@ func New(rootDir string) http.Handler {
logger := ioc.MustResolve[*zerolog.Logger](ioc.Default)
oidc := ioc.MustResolve[*oidc.OpenID](ioc.Default)
+ users := ioc.MustResolve[db.Repository[*domain.User]](ioc.Default)
- return log.HTTP(logger)(middleware.IDToken(oidc)(mux))
+ chain := middleware.IDToken(oidc)(middleware.User(users)(mux))
+ return log.HTTP(logger)(chain)
}
diff --git a/app/init.go b/app/init.go
index 432f761..f889fd9 100644
--- a/app/init.go
+++ b/app/init.go
@@ -27,6 +27,9 @@ func init() {
ioc.RegisterSingleton[db.Repository[*domain.Sparkle]](ioc.Default, func() db.Repository[*domain.Sparkle] {
return db.NewRepository[*domain.Sparkle]()
})
+ ioc.RegisterSingleton[db.Repository[*domain.User]](ioc.Default, func() db.Repository[*domain.User] {
+ return db.NewRepository[*domain.User]()
+ })
ioc.RegisterSingleton[*http.ServeMux](ioc.Default, func() *http.ServeMux {
return http.NewServeMux()
})