A self-hosted orchestration system crafted for power users. composia.xyz
Something went wrong. Try again.
855 B · 35 lines
Go
123456789101112131415161718192021222324252627282930313233343536package main
import ( "context" "flag" "log" "os" "os/signal" "syscall"
"forgejo.alexma.top/alexma233/composia/internal/app/controller" "forgejo.alexma.top/alexma233/composia/internal/platform/configpath")
var controllerDefaultConfigPaths = []string{"/etc/composia/controller/config.yaml", "./config.yaml"}
func main() { configPath := flag.String("config", "", "controller config path") flag.Parse()
ctx, stop := signal.NotifyContext(context.Background(), os.Interrupt, syscall.SIGTERM)
resolvedConfigPath, err := configpath.Resolve(*configPath, controllerDefaultConfigPaths, "controller") if err != nil { log.Printf("composia controller failed: %v", err) stop() os.Exit(1) } if err := controller.Run(ctx, resolvedConfigPath); err != nil { log.Printf("composia controller failed: %v", err) stop() os.Exit(1) } stop()}