diff --git a/cmd/e2e/e2e.go b/cmd/e2e/e2e.go index 915531c2e1f..b6afc16a2b4 100644 --- a/cmd/e2e/e2e.go +++ b/cmd/e2e/e2e.go @@ -700,8 +700,7 @@ func TestPodHasServiceEnvVars(c *client.Client) bool { } func main() { - util.AddAllFlagsToPFlags() - flag.Parse() + util.InitFlags() goruntime.GOMAXPROCS(goruntime.NumCPU()) util.ReallyCrash = true util.InitLogs() diff --git a/cmd/integration/integration.go b/cmd/integration/integration.go index 0cfe8c6d2a9..90fe295aab3 100644 --- a/cmd/integration/integration.go +++ b/cmd/integration/integration.go @@ -53,7 +53,6 @@ import ( "github.com/coreos/go-etcd/etcd" "github.com/golang/glog" - flag "github.com/spf13/pflag" ) var ( @@ -563,8 +562,7 @@ func runServiceTest(client *client.Client) { type testFunc func(*client.Client) func main() { - util.AddAllFlagsToPFlags() - flag.Parse() + util.InitFlags() runtime.GOMAXPROCS(runtime.NumCPU()) util.ReallyCrash = true util.InitLogs() diff --git a/cmd/kube-apiserver/apiserver.go b/cmd/kube-apiserver/apiserver.go index 1a74b8a351c..6d62e139935 100644 --- a/cmd/kube-apiserver/apiserver.go +++ b/cmd/kube-apiserver/apiserver.go @@ -124,8 +124,7 @@ func newEtcd(etcdConfigFile string, etcdServerList util.StringList) (helper tool } func main() { - util.AddAllFlagsToPFlags() - flag.Parse() + util.InitFlags() util.InitLogs() defer util.FlushLogs() diff --git a/cmd/kube-controller-manager/controller-manager.go b/cmd/kube-controller-manager/controller-manager.go index 7687160e199..97299a0189c 100644 --- a/cmd/kube-controller-manager/controller-manager.go +++ b/cmd/kube-controller-manager/controller-manager.go @@ -75,8 +75,7 @@ func verifyMinionFlags() { } func main() { - util.AddAllFlagsToPFlags() - flag.Parse() + util.InitFlags() util.InitLogs() defer util.FlushLogs() diff --git a/cmd/kube-proxy/proxy.go b/cmd/kube-proxy/proxy.go index d26150b7ab8..b2a42b44b58 100644 --- a/cmd/kube-proxy/proxy.go +++ b/cmd/kube-proxy/proxy.go @@ -53,8 +53,7 @@ func init() { } func main() { - util.AddAllFlagsToPFlags() - flag.Parse() + util.InitFlags() util.InitLogs() defer util.FlushLogs() diff --git a/cmd/kubelet/kubelet.go b/cmd/kubelet/kubelet.go index a1b4ab5f0b6..722e2a28e19 100644 --- a/cmd/kubelet/kubelet.go +++ b/cmd/kubelet/kubelet.go @@ -90,8 +90,7 @@ func setupRunOnce() { } func main() { - util.AddAllFlagsToPFlags() - flag.Parse() + util.InitFlags() util.InitLogs() defer util.FlushLogs() rand.Seed(time.Now().UTC().UnixNano()) diff --git a/cmd/kubernetes/kubernetes.go b/cmd/kubernetes/kubernetes.go index 80208723fdf..a822ea7457b 100644 --- a/cmd/kubernetes/kubernetes.go +++ b/cmd/kubernetes/kubernetes.go @@ -66,8 +66,7 @@ func newApiClient(addr string, port int) *client.Client { } func main() { - util.AddAllFlagsToPFlags() - flag.Parse() + util.InitFlags() util.InitLogs() defer util.FlushLogs() diff --git a/pkg/util/flags.go b/pkg/util/flags.go new file mode 100644 index 00000000000..80687267f92 --- /dev/null +++ b/pkg/util/flags.go @@ -0,0 +1,27 @@ +/* +Copyright 2014 Google Inc. All rights reserved. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package util + +import ( + flag "github.com/spf13/pflag" +) + +// InitFlags normalizes and parses the command line flags +func InitFlags() { + AddAllFlagsToPFlags() + flag.Parse() +} diff --git a/pkg/version/verflag/verflag.go b/pkg/version/verflag/verflag.go index 8322e4fe480..5231ea2d5bf 100644 --- a/pkg/version/verflag/verflag.go +++ b/pkg/version/verflag/verflag.go @@ -66,6 +66,7 @@ func (v *versionValue) String() string { return fmt.Sprintf("%v", bool(*v == VersionTrue)) } +// The type of the flag as requred by the pflag.Value interface func (v *versionValue) Type() string { return "version" } diff --git a/plugin/cmd/kube-scheduler/scheduler.go b/plugin/cmd/kube-scheduler/scheduler.go index 8bd7a6d2e70..895628612d6 100644 --- a/plugin/cmd/kube-scheduler/scheduler.go +++ b/plugin/cmd/kube-scheduler/scheduler.go @@ -48,8 +48,7 @@ func init() { } func main() { - util.AddAllFlagsToPFlags() - flag.Parse() + util.InitFlags() util.InitLogs() defer util.FlushLogs()