summaryrefslogtreecommitdiff
path: root/magefile.go
diff options
context:
space:
mode:
authormo khan <mo@mokhan.ca>2025-03-28 21:40:05 -0600
committermo khan <mo@mokhan.ca>2025-03-28 21:40:05 -0600
commitf7065e0b4de97cbafcb732c459f8744d2f5c55e5 (patch)
tree33fb5acef59d3ee931ad80e1cfa6d836dc7dd328 /magefile.go
parent9d4cc3d2de47769d287b254c39e3f66c23e403ab (diff)
chore: extract magefiles directory
Diffstat (limited to 'magefile.go')
-rw-r--r--magefile.go116
1 files changed, 0 insertions, 116 deletions
diff --git a/magefile.go b/magefile.go
deleted file mode 100644
index 4ce8e00..0000000
--- a/magefile.go
+++ /dev/null
@@ -1,116 +0,0 @@
-//go:build mage
-// +build mage
-
-package main
-
-import (
- "context"
- "path/filepath"
-
- "github.com/magefile/mage/mg"
- "github.com/magefile/mage/sh"
- "github.com/xlgmokha/x/pkg/x"
-)
-
-// Default target to run when none is specified
-// If not set, running mage will list available targets
-var Default = Servers
-
-// Run the Identity Provider
-func Idp() error {
- env := map[string]string{
- "SCHEME": "http",
- "PORT": "8282",
- "HOST": "idp.example.com:8080",
- }
- return sh.RunWithV(env, "ruby", "./bin/idp")
-}
-
-// Run the UI (a.k.a Service Provider)
-func UI() error {
- env := map[string]string{
- "SCHEME": "http",
- "PORT": "8283",
- "HOST": "ui.example.com:8080",
- "IDP_HOST": "idp.example.com:8080",
- }
- return sh.RunWithV(env, "ruby", "./bin/ui")
-}
-
-// Run the API Gateway
-func Gateway() error {
- env := map[string]string{
- "BIND_ADDR": ":8080",
- }
- return sh.RunWithV(env, "go", "run", "./cmd/gtwy/main.go")
-}
-
-// Run the REST API
-func Api() error {
- env := map[string]string{
- "SCHEME": "http",
- "PORT": "8284",
- "HOST": "localhost:8284",
- }
- return sh.RunWithV(env, "ruby", "./bin/api")
-}
-
-// Run the Authzd Service
-func Authzd() error {
- env := map[string]string{
- "BIND_ADDR": ":50051",
- }
- return sh.RunWithV(env, "go", "run", "./cmd/authzd/main.go")
-}
-
-// Generate gRPC from protocal buffers
-func Protos() error {
- for _, file := range x.Must(filepath.Glob("./protos/*.proto")) {
- if err := sh.RunV(
- "protoc",
- "--proto_path=./protos",
- "--go_out=pkg/rpc",
- "--go_opt=paths=source_relative",
- "--go-grpc_out=pkg/rpc",
- "--go-grpc_opt=paths=source_relative",
- "--ruby_out=lib/authx/rpc",
- "--twirp_ruby_out=lib/authx/rpc",
- file,
- ); err != nil {
- return err
- }
- }
-
- return nil
-}
-
-// Run All the servers
-func Servers(ctx context.Context) {
- mg.CtxDeps(ctx, Idp, UI, Api, Authzd, Gateway)
-}
-
-// Run the end to end tests
-func Test(ctx context.Context) error {
- mg.CtxDeps(ctx, func() error {
- return sh.RunV("go", "clean", "-testcache")
- })
- return sh.RunV("go", "test", "-shuffle=on", "-v", "./...")
-}
-
-func Graphviz() error {
- files := []string{
- "doc/share/authz/sns.dot",
- }
- for _, file := range files {
- if err := sh.RunV("dot", "-Tpng", "-O", file); err != nil {
- return err
- }
- }
-
- return nil
-}
-
-// Generate documentation
-func Docs(ctx context.Context) {
- mg.CtxDeps(ctx, Graphviz)
-}