Files
oc-k8s/cmd/main.go
2026-01-07 16:56:27 +01:00

137 lines
2.4 KiB
Go

package main
import (
"fmt"
"oc-k8s/internal"
"os"
)
func main() {
defer func() {
if r := recover(); r != nil {
}
}()
if len(os.Args) < 2 {
internal.Help_Func()
fmt.Println("Error: Not enought arguments")
return
}
if err := action(); err != nil {
internal.Help_Func()
fmt.Println(err)
}
}
func action() error {
action := os.Args[1]
switch action {
case "start":
args := []string{}
if len(os.Args) > 2 {
args = os.Args[2:]
}
internal.Start(args...)
case "stop":
args := []string{}
if len(os.Args) > 2 {
args = os.Args[2:]
}
internal.Start(args...)
case "help":
what := os.Args[2]
switch what {
case "helm":
internal.Help_Helm()
case "k3s":
internal.Help_K3S()
case "kind":
internal.Help_Kind()
case "cluster":
internal.Help_Cluster()
case "db":
internal.Help_DB()
case "services":
internal.Help_Services()
case "values":
internal.Help_Values()
default:
internal.Help_Func()
}
case "install":
if len(os.Args) < 2 {
args := []string{}
if len(os.Args) > 2 {
args = os.Args[2:]
}
return internal.Install_Func(args...)
} else {
what := os.Args[2]
switch what {
case "helm":
return internal.Install_Helm()
case "k3s":
return internal.Install_K3S()
case "kind":
return internal.Install_Kind()
default:
internal.Help_Func()
}
}
case "create":
what := os.Args[2]
args := []string{}
if len(os.Args) > 3 {
args = os.Args[3:]
}
switch what {
case "helm":
return internal.Create_Helm(args...)
case "cluster":
return internal.Create_Cluster(args...)
case "db":
return internal.Create_DB(args...)
case "services":
return internal.Create_Services(args...)
case "values":
return internal.Create_Values(args...)
default:
internal.Help_Func()
}
case "delete":
what := os.Args[2]
args := []string{}
if len(os.Args) > 3 {
args = os.Args[3:]
}
switch what {
case "helm":
return internal.Delete_Helm(args...)
case "cluster":
return internal.Delete_Cluster(args...)
case "db":
return internal.Delete_DB(args...)
default:
internal.Help_Func()
}
case "upgrade":
what := os.Args[2]
args := []string{}
if len(os.Args) > 3 {
args = os.Args[3:]
}
switch what {
case "helm":
return internal.Upgrade_Helm(args...)
case "db":
return internal.Upgrade_DB(args...)
default:
internal.Help_Func()
}
default:
internal.Help_Func()
}
return nil
}