summaryrefslogtreecommitdiff
path: root/app/init.go
diff options
context:
space:
mode:
authormo khan <mo@mokhan.ca>2025-07-23 11:50:42 -0600
committermo khan <mo@mokhan.ca>2025-07-23 11:50:42 -0600
commit944ef4ca499fe27a57d4cd3c21bccb99508526ca (patch)
tree3c929141ee07fc2a4f2c2b825630cb2ad3121b44 /app/init.go
parent8a1b03afb949a5a3be6a78e9b2c88d2e48643f46 (diff)
refactor: Update RequirePermission middleware to connect to spicedb CheckPermission API
Diffstat (limited to 'app/init.go')
-rw-r--r--app/init.go16
1 files changed, 11 insertions, 5 deletions
diff --git a/app/init.go b/app/init.go
index 5057fe4..53f9e66 100644
--- a/app/init.go
+++ b/app/init.go
@@ -1,19 +1,21 @@
package app
import (
+ "context"
"net/http"
"os"
+ "github.com/authzed/authzed-go/v1"
"github.com/rs/zerolog"
"github.com/xlgmokha/x/pkg/env"
"github.com/xlgmokha/x/pkg/ioc"
"github.com/xlgmokha/x/pkg/log"
"github.com/xlgmokha/x/pkg/mapper"
- "gitlab.com/gitlab-org/software-supply-chain-security/authorization/authzd.git/pkg/rpc"
"gitlab.com/gitlab-org/software-supply-chain-security/authorization/sparkled/app/controllers/dashboard"
"gitlab.com/gitlab-org/software-supply-chain-security/authorization/sparkled/app/controllers/sparkles"
"gitlab.com/gitlab-org/software-supply-chain-security/authorization/sparkled/app/db"
"gitlab.com/gitlab-org/software-supply-chain-security/authorization/sparkled/app/domain"
+ "gitlab.com/gitlab-org/software-supply-chain-security/authorization/sparkled/pkg/authz"
"gitlab.com/gitlab-org/software-supply-chain-security/authorization/sparkled/pkg/web"
)
@@ -40,12 +42,16 @@ func init() {
},
}
})
- ioc.Register[rpc.Ability](ioc.Default, func() rpc.Ability {
- return rpc.NewAbilityProtobufClient(
- env.Fetch("AUTHZD_HOST", ""),
- ioc.MustResolve[*http.Client](ioc.Default),
+ ioc.RegisterSingleton[*authzed.Client](ioc.Default, func() *authzed.Client {
+ return authz.NewSpiceDBClient(
+ context.Background(),
+ env.Fetch("ZED_ENDPOINT", ":50051"),
+ env.Fetch("ZED_TOKEN", "secret"),
)
})
+ ioc.Register[authz.CheckPermission](ioc.Default, func() authz.CheckPermission {
+ return ioc.MustResolve[*authzed.Client](ioc.Default)
+ })
http.DefaultClient = ioc.MustResolve[*http.Client](ioc.Default)