mirror of
https://github.com/rancher/k3k.git
synced 2026-03-02 17:50:36 +00:00
63 lines
1.1 KiB
Go
63 lines
1.1 KiB
Go
package cmds
|
|
|
|
import (
|
|
"os"
|
|
|
|
"github.com/sirupsen/logrus"
|
|
"github.com/urfave/cli/v2"
|
|
)
|
|
|
|
const (
|
|
defaultNamespace = "default"
|
|
)
|
|
|
|
var (
|
|
debug bool
|
|
Kubeconfig string
|
|
namespace string
|
|
CommonFlags = []cli.Flag{
|
|
&cli.StringFlag{
|
|
Name: "kubeconfig",
|
|
EnvVars: []string{"KUBECONFIG"},
|
|
Usage: "kubeconfig path",
|
|
Destination: &Kubeconfig,
|
|
Value: os.Getenv("HOME") + "/.kube/config",
|
|
},
|
|
&cli.StringFlag{
|
|
Name: "namespace",
|
|
Usage: "namespace to create the k3k cluster in",
|
|
Destination: &namespace,
|
|
},
|
|
}
|
|
)
|
|
|
|
func NewApp() *cli.App {
|
|
app := cli.NewApp()
|
|
app.Name = "k3kcli"
|
|
app.Usage = "CLI for K3K"
|
|
app.Flags = []cli.Flag{
|
|
&cli.BoolFlag{
|
|
Name: "debug",
|
|
Usage: "Turn on debug logs",
|
|
Destination: &debug,
|
|
EnvVars: []string{"K3K_DEBUG"},
|
|
},
|
|
}
|
|
|
|
app.Before = func(clx *cli.Context) error {
|
|
if debug {
|
|
logrus.SetLevel(logrus.DebugLevel)
|
|
}
|
|
return nil
|
|
}
|
|
|
|
return app
|
|
}
|
|
|
|
func Namespace() string {
|
|
if namespace == "" {
|
|
return defaultNamespace
|
|
}
|
|
return namespace
|
|
}
|