Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
184 changes: 92 additions & 92 deletions cmd/commune/zz_main.gen.go
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
// Code generated by mygo; DO NOT EDIT.
/*line zz_main.gen.go:1:1*/// Code generated by mygo; DO NOT EDIT.

package main

Expand All @@ -17,123 +17,123 @@ import "database/sql"
import "github.com/commune-project/commune-backend/internal/auth"
import . "github.com/mygo-lang/mygo/prelude"

func RunCommand(args []string) Result[struct {
/*line main.mygo:14:1*/func RunCommand(args []string) Result[struct {
}, string] {
if MygoIT11IEnumerableFN16SliceIEnumerableGN1TEGN5SliceGN1TEN1TEM3Len(args) < 3 {
return Err[struct{}, string]("usage: commune <check-config|migrate|provision-sites|provision-admin|provision-account|serve> <config.json> [site-id username [option]]")
} else {
}
command := MygoIN6OptionM6Unwrap[string](MygoIT10IIndexableFN14SliceIndexableGN1TEGN5SliceGN1TEN3IntN1TEM3Get(args, 1))
/*line main.mygo:15:6*/ if MygoIT11IEnumerableFN16SliceIEnumerableGN1TEGN5SliceGN1TEN1TEM3Len(args) < 3 {
/*line main.mygo:16:12*/ return Err[struct{}, string]("usage: commune <check-config|migrate|provision-sites|provision-admin|provision-account|serve> <config.json> [site-id username [option]]")
/*line main.mygo:15:6*/ } else {
/*line zz_main.gen.go:25:1*/ }
/*line main.mygo:14:1*/ command := MygoIN6OptionM6Unwrap[string](MygoIT10IIndexableFN14SliceIndexableGN1TEGN5SliceGN1TEN3IntN1TEM3Get(args, 1))
loaded := config.Load(MygoIN6OptionM6Unwrap[string](MygoIT10IIndexableFN14SliceIndexableGN1TEGN5SliceGN1TEN3IntN1TEM3Get(args, 2)))
if MygoIN6ResultM5IsErr[config.Config, string](loaded) {
return Err[struct{}, string](MygoIN6ResultM9UnwrapErr[config.Config, string](loaded))
} else {
}
settings := MygoIN6ResultM6Unwrap[config.Config, string](loaded)
if command == "check-config" && MygoIT11IEnumerableFN16SliceIEnumerableGN1TEGN5SliceGN1TEN1TEM3Len(args) == 3 {
/*line main.mygo:20:6*/ if MygoIN6ResultM5IsErr[config.Config, string](loaded) {
/*line main.mygo:21:12*/ return Err[struct{}, string](MygoIN6ResultM9UnwrapErr[config.Config, string](loaded))
/*line main.mygo:20:6*/ } else {
/*line zz_main.gen.go:31:1*/ }
/*line main.mygo:14:1*/ settings := MygoIN6ResultM6Unwrap[config.Config, string](loaded)
/*line main.mygo:24:6*/ if command == "check-config" && MygoIT11IEnumerableFN16SliceIEnumerableGN1TEGN5SliceGN1TEN1TEM3Len(args) == 3 {
fmt.Println("configuration valid; sites:", MygoIT11IEnumerableFN16SliceIEnumerableGN1TEGN5SliceGN1TEN1TEM3Len(settings.Sites))
return Ok[struct{}, string](struct {
}{})
} else {
}
if command != "migrate" && command != "provision-sites" && command != "provision-admin" && command != "provision-account" && command != "serve" {
return Err[struct{}, string]("unknown command or invalid arguments")
} else {
}
provisioning := command == "provision-admin" || command == "provision-account"
if !provisioning && MygoIT11IEnumerableFN16SliceIEnumerableGN1TEGN5SliceGN1TEN1TEM3Len(args) != 3 || provisioning && MygoIT11IEnumerableFN16SliceIEnumerableGN1TEGN5SliceGN1TEN1TEM3Len(args) != 5 && MygoIT11IEnumerableFN16SliceIEnumerableGN1TEGN5SliceGN1TEN1TEM3Len(args) != 6 {
return Err[struct{}, string]("invalid command arguments")
} else {
}
if command == "provision-admin" && MygoIT11IEnumerableFN16SliceIEnumerableGN1TEGN5SliceGN1TEN1TEM3Len(args) == 6 && MygoIN6OptionM6Unwrap[string](MygoIT10IIndexableFN14SliceIndexableGN1TEGN5SliceGN1TEN3IntN1TEM3Get(args, 5)) != "--deployment-superadministrator" {
return Err[struct{}, string]("unknown provisioning option")
} else {
}
opened := storage.OpenPostgres(settings.DatabaseURL)
if MygoIN6ResultM5IsErr[*gorm.DB, string](opened) {
return Err[struct{}, string](MygoIN6ResultM9UnwrapErr[*gorm.DB, string](opened))
} else {
}
db := MygoIN6ResultM6Unwrap[*gorm.DB, string](opened)
var __mygo_expr_1 Result[*sql.DB, error]
/*line main.mygo:26:12*/ return Ok[struct{}, string](struct {
/*line zz_main.gen.go:36:1*/ }{})
/*line main.mygo:24:6*/ } else {
/*line zz_main.gen.go:38:1*/ }
/*line main.mygo:28:6*/ if command != "migrate" && command != "provision-sites" && command != "provision-admin" && command != "provision-account" && command != "serve" {
/*line main.mygo:29:12*/ return Err[struct{}, string]("unknown command or invalid arguments")
/*line main.mygo:28:6*/ } else {
/*line zz_main.gen.go:42:1*/ }
/*line main.mygo:14:1*/ provisioning := command == "provision-admin" || command == "provision-account"
/*line main.mygo:32:6*/ if !provisioning && MygoIT11IEnumerableFN16SliceIEnumerableGN1TEGN5SliceGN1TEN1TEM3Len(args) != 3 || provisioning && MygoIT11IEnumerableFN16SliceIEnumerableGN1TEGN5SliceGN1TEN1TEM3Len(args) != 5 && MygoIT11IEnumerableFN16SliceIEnumerableGN1TEGN5SliceGN1TEN1TEM3Len(args) != 6 {
/*line main.mygo:33:12*/ return Err[struct{}, string]("invalid command arguments")
/*line main.mygo:32:6*/ } else {
/*line zz_main.gen.go:47:1*/ }
/*line main.mygo:35:6*/ if command == "provision-admin" && MygoIT11IEnumerableFN16SliceIEnumerableGN1TEGN5SliceGN1TEN1TEM3Len(args) == 6 && MygoIN6OptionM6Unwrap[string](MygoIT10IIndexableFN14SliceIndexableGN1TEGN5SliceGN1TEN3IntN1TEM3Get(args, 5)) != "--deployment-superadministrator" {
/*line main.mygo:36:12*/ return Err[struct{}, string]("unknown provisioning option")
/*line main.mygo:35:6*/ } else {
/*line zz_main.gen.go:51:1*/ }
/*line main.mygo:14:1*/ opened := storage.OpenPostgres(settings.DatabaseURL)
/*line main.mygo:39:6*/ if MygoIN6ResultM5IsErr[*gorm.DB, string](opened) {
/*line main.mygo:40:12*/ return Err[struct{}, string](MygoIN6ResultM9UnwrapErr[*gorm.DB, string](opened))
/*line main.mygo:39:6*/ } else {
/*line zz_main.gen.go:56:1*/ }
/*line main.mygo:14:1*/ db := MygoIN6ResultM6Unwrap[*gorm.DB, string](opened)
/*line main.mygo:43:14*/ var __mygo_expr_1 Result[*sql.DB, error]
__mygo_expr_2, __mygo_expr_0 := db.DB()
if __mygo_expr_0 != nil {
__mygo_expr_1 = Err[*sql.DB, error](__mygo_expr_0)
} else {
__mygo_expr_1 = Ok[*sql.DB, error](__mygo_expr_2)
}
pool := MygoIN6ResultM6Unwrap[*sql.DB, error](__mygo_expr_1)
defer pool.Close()
ctx := context.Background()
if command == "serve" {
/*line zz_main.gen.go:64:1*/ }
/*line main.mygo:14:1*/ pool := MygoIN6ResultM6Unwrap[*sql.DB, error](__mygo_expr_1)
/*line main.mygo:44:3*/ defer pool.Close()
/*line main.mygo:14:1*/ ctx := context.Background()
/*line main.mygo:46:6*/ if command == "serve" {
options := slog.HandlerOptions{}
slog.SetDefault(slog.New(slog.NewJSONHandler(io.Writer(os.Stdout), &options)))
lifetime, stop := signal.NotifyContext(ctx, os.Signal(syscall.SIGINT), os.Signal(syscall.SIGTERM))
defer stop()
return server.Serve(lifetime, settings, db)
} else {
}
if command == "migrate" {
return storage.MigrateGORM(ctx, db)
} else {
}
if MygoIN6ResultM5IsErr[struct{}, string](storage.CheckGORM(ctx, db)) {
return Err[struct{}, string]("schema is incompatible; run explicit migration")
} else {
}
if command == "provision-sites" {
return MygoIT11IEnumerableFN16SliceIEnumerableGN1TEGN5SliceGN1TEN1TEM4Fold(settings.Sites, Ok[struct{}, string](struct {
}{}), func(previous Result[struct{}, string], site config.Site) Result[struct{}, string] {
if MygoIN6ResultM5IsErr[struct{}, string](previous) {
return previous
} else {
}
return storage.ProvisionSite(ctx, db, site)
})
} else {
}
sites := MygoIT11IEnumerableFN16SliceIEnumerableGN1TEGN5SliceGN1TEN1TEM6Filter(settings.Sites, func(site_1 config.Site) bool {
return site_1.ID == MygoIN6OptionM6Unwrap[string](MygoIT10IIndexableFN14SliceIndexableGN1TEGN5SliceGN1TEN3IntN1TEM3Get(args, 3))
})
if MygoIT11IEnumerableFN16SliceIEnumerableGN1TEGN5SliceGN1TEN1TEM3Len(sites) != 1 {
return Err[struct{}, string]("provisioning site is not configured")
} else {
}
if command == "provision-account" {
/*line main.mygo:48:5*/ slog.SetDefault(slog.New(slog.NewJSONHandler(io.Writer(os.Stdout), &options)))
/*line main.mygo:46:6*/ lifetime, stop := signal.NotifyContext(ctx, os.Signal(syscall.SIGINT), os.Signal(syscall.SIGTERM))
/*line main.mygo:50:5*/ defer stop()
/*line main.mygo:51:12*/ return server.Serve(lifetime, settings, db)
/*line main.mygo:46:6*/ } else {
/*line zz_main.gen.go:75:1*/ }
/*line main.mygo:53:6*/ if command == "migrate" {
/*line main.mygo:54:12*/ return storage.MigrateGORM(ctx, db)
/*line main.mygo:53:6*/ } else {
/*line zz_main.gen.go:79:1*/ }
/*line main.mygo:56:6*/ if MygoIN6ResultM5IsErr[struct{}, string](storage.CheckGORM(ctx, db)) {
/*line main.mygo:57:12*/ return Err[struct{}, string]("schema is incompatible; run explicit migration")
/*line main.mygo:56:6*/ } else {
/*line zz_main.gen.go:83:1*/ }
/*line main.mygo:59:6*/ if command == "provision-sites" {
/*line main.mygo:60:12*/ return MygoIT11IEnumerableFN16SliceIEnumerableGN1TEGN5SliceGN1TEN1TEM4Fold(settings.Sites, Ok[struct{}, string](struct {
/*line main.mygo:60:52*/ }{}), func(previous Result[struct{}, string], site config.Site) Result[struct{}, string] {
/*line main.mygo:61:10*/ if MygoIN6ResultM5IsErr[struct{}, string](previous) {
/*line main.mygo:62:16*/ return previous
/*line main.mygo:61:10*/ } else {
/*line zz_main.gen.go:90:1*/ }
/*line main.mygo:64:7*/ return storage.ProvisionSite(ctx, db, site)
/*line zz_main.gen.go:92:1*/ })
/*line main.mygo:59:6*/ } else {
/*line zz_main.gen.go:94:1*/ }
/*line main.mygo:14:1*/ sites := MygoIT11IEnumerableFN16SliceIEnumerableGN1TEGN5SliceGN1TEN1TEM6Filter(settings.Sites, func(site_1 config.Site) bool {
/*line main.mygo:68:5*/ return site_1.ID == MygoIN6OptionM6Unwrap[string](MygoIT10IIndexableFN14SliceIndexableGN1TEGN5SliceGN1TEN3IntN1TEM3Get(args, 3))
/*line zz_main.gen.go:97:1*/ })
/*line main.mygo:70:6*/ if MygoIT11IEnumerableFN16SliceIEnumerableGN1TEGN5SliceGN1TEN1TEM3Len(sites) != 1 {
/*line main.mygo:71:12*/ return Err[struct{}, string]("provisioning site is not configured")
/*line main.mygo:70:6*/ } else {
/*line zz_main.gen.go:101:1*/ }
/*line main.mygo:73:6*/ if command == "provision-account" {
var __mygo_expr_3 string
if MygoIT11IEnumerableFN16SliceIEnumerableGN1TEGN5SliceGN1TEN1TEM3Len(args) == 6 {
__mygo_expr_3 = MygoIN6OptionM6Unwrap[string](MygoIT10IIndexableFN14SliceIndexableGN1TEGN5SliceGN1TEN3IntN1TEM3Get(args, 5))
} else {
__mygo_expr_3 = ""
}
email := __mygo_expr_3
/*line zz_main.gen.go:108:1*/ }
/*line main.mygo:73:6*/ email := __mygo_expr_3
repository := storage.AccountRepository{DB: db}
created := storage.MygoIN17AccountRepositoryM6Create(repository, ctx, MygoIN6OptionM6Unwrap[config.Site](MygoIT10IIndexableFN14SliceIndexableGN1TEGN5SliceGN1TEN3IntN1TEM3Get(sites, 0)), MygoIN6OptionM6Unwrap[string](MygoIT10IIndexableFN14SliceIndexableGN1TEGN5SliceGN1TEN3IntN1TEM3Get(args, 4)), email, os.Getenv("COMMUNE_ACCOUNT_PASSWORD"))
var __mygo_expr_4 Result[struct{}, string]
/*line main.mygo:77:12*/ var __mygo_expr_4 Result[struct{}, string]
if __mygo_match___mygo_expr_5, ok := created.(Result__Err[auth.Identity, string]); ok {
__mygo_expr_4 = Err[struct{}, string](__mygo_match___mygo_expr_5.F0)
} else {
if _, ok := created.(Result__Ok[auth.Identity, string]); ok {
__mygo_expr_4 = Ok[struct{}, string](struct {
}{})
} else {
}
/*line zz_main.gen.go:118:1*/ }{})
/*line main.mygo:77:12*/ } else {
/*line zz_main.gen.go:120:1*/ }
}
return __mygo_expr_4
} else {
/*line main.mygo:77:12*/ return __mygo_expr_4
/*line main.mygo:73:6*/ } else {
password := os.Getenv("COMMUNE_ADMIN_PASSWORD")
return storage.ProvisionAdministrator(ctx, db, MygoIN6OptionM6Unwrap[config.Site](MygoIT10IIndexableFN14SliceIndexableGN1TEGN5SliceGN1TEN3IntN1TEM3Get(sites, 0)), MygoIN6OptionM6Unwrap[string](MygoIT10IIndexableFN14SliceIndexableGN1TEGN5SliceGN1TEN3IntN1TEM3Get(args, 4)), password, MygoIT11IEnumerableFN16SliceIEnumerableGN1TEGN5SliceGN1TEN1TEM3Len(args) == 6)
}
/*line main.mygo:83:3*/ return storage.ProvisionAdministrator(ctx, db, MygoIN6OptionM6Unwrap[config.Site](MygoIT10IIndexableFN14SliceIndexableGN1TEGN5SliceGN1TEN3IntN1TEM3Get(sites, 0)), MygoIN6OptionM6Unwrap[string](MygoIT10IIndexableFN14SliceIndexableGN1TEGN5SliceGN1TEN3IntN1TEM3Get(args, 4)), password, MygoIT11IEnumerableFN16SliceIEnumerableGN1TEGN5SliceGN1TEN1TEM3Len(args) == 6)
/*line zz_main.gen.go:126:1*/ }
}
func main() {
__mygo_expr_0 := RunCommand(os.Args)
/*line main.mygo:87:1*/func main() {
/*line main.mygo:88:10*/ __mygo_expr_0 := RunCommand(os.Args)
if __mygo_match___mygo_expr_1, ok := __mygo_expr_0.(Result__Err[struct{}, string]); ok {
os.Stderr.WriteString(__mygo_match___mygo_expr_1.F0 + "\n")
os.Exit(1)
/*line main.mygo:90:15*/ os.Stderr.WriteString(__mygo_match___mygo_expr_1.F0 + "\n")
/*line main.mygo:88:10*/ os.Exit(1)
} else {
if _, ok := __mygo_expr_0.(Result__Ok[struct{}, string]); ok {
} else {
}
/*line zz_main.gen.go:136:1*/ }
}
return
}
/*line main.mygo:88:10*/ return
/*line zz_main.gen.go:139:1*/}
2 changes: 1 addition & 1 deletion cmd/commune/zz_mygo_metadata.gen.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading
Loading