Fix hyperkube flag parsing

hyperkube kubectl cobra subcommands now work as expected.

Add unit tests with hyperkube subcommands
This commit is contained in:
Colin Hom
2016-05-11 14:46:26 -07:00
committed by Colin Hom
parent 24c46acd16
commit fd1771e7ae
4 changed files with 94 additions and 8 deletions

View File

@@ -19,21 +19,23 @@ package main
import (
"os"
"k8s.io/kubernetes/cmd/kubectl/app"
"k8s.io/kubernetes/pkg/kubectl/cmd"
cmdutil "k8s.io/kubernetes/pkg/kubectl/cmd/util"
)
func NewKubectlServer() *Server {
cmd := cmd.NewKubectlCommand(cmdutil.NewFactory(nil), os.Stdin, os.Stdout, os.Stderr)
localFlags := cmd.LocalFlags()
localFlags.SetInterspersed(false)
return &Server{
name: "kubectl",
SimpleUsage: "Kubernetes command line client",
Long: "Kubernetes command line client",
Run: func(s *Server, args []string) error {
os.Args = os.Args[1:]
if err := app.Run(); err != nil {
os.Exit(1)
}
os.Exit(0)
return nil
cmd.SetArgs(args)
return cmd.Execute()
},
flags: localFlags,
}
}