mirror of
https://github.com/ahmetb/kubectx.git
synced 2025-06-18 19:58:05 +00:00
30 lines
610 B
Go
30 lines
610 B
Go
package main
|
|
|
|
import (
|
|
"fmt"
|
|
"io"
|
|
"os"
|
|
|
|
"github.com/ahmetb/kubectx/internal/cmdutil"
|
|
"github.com/ahmetb/kubectx/internal/env"
|
|
"github.com/ahmetb/kubectx/internal/printer"
|
|
)
|
|
|
|
type Op interface {
|
|
Run(stdout, stderr io.Writer) error
|
|
}
|
|
|
|
func main() {
|
|
cmdutil.PrintDeprecatedEnvWarnings(os.Stderr, os.Environ())
|
|
op := parseArgs(os.Args[1:])
|
|
if err := op.Run(os.Stdout, os.Stderr); err != nil {
|
|
printer.Error(os.Stderr, err.Error())
|
|
|
|
if _, ok := os.LookupEnv(env.EnvDebug); ok {
|
|
// print stack trace in verbose mode
|
|
fmt.Fprintf(os.Stderr, "[DEBUG] error: %+v\n", err)
|
|
}
|
|
defer os.Exit(1)
|
|
}
|
|
}
|