diff --git a/pkg/kubectl/cmd/cmd.go b/pkg/kubectl/cmd/cmd.go index c82950e60d3..bb4231249f0 100644 --- a/pkg/kubectl/cmd/cmd.go +++ b/pkg/kubectl/cmd/cmd.go @@ -152,6 +152,7 @@ Find more information at https://github.com/kubernetes/kubernetes.`, } f.BindFlags(cmds.PersistentFlags()) + f.BindExternalFlags(cmds.PersistentFlags()) // From this point and forward we get warnings on flags that contain "_" separators cmds.SetGlobalNormalizationFunc(util.WarnWordSepNormalizeFunc) diff --git a/pkg/kubectl/cmd/util/factory.go b/pkg/kubectl/cmd/util/factory.go index abbdb2880e3..a92ddd1ddbc 100644 --- a/pkg/kubectl/cmd/util/factory.go +++ b/pkg/kubectl/cmd/util/factory.go @@ -585,9 +585,6 @@ func (f *Factory) Command() string { // BindFlags adds any flags that are common to all kubectl sub commands. func (f *Factory) BindFlags(flags *pflag.FlagSet) { - // any flags defined by external projects (not part of pflags) - flags.AddGoFlagSet(flag.CommandLine) - // Merge factory's flags flags.AddFlagSet(f.flags) @@ -602,6 +599,12 @@ func (f *Factory) BindFlags(flags *pflag.FlagSet) { flags.SetNormalizeFunc(util.WordSepNormalizeFunc) } +// BindCommonFlags adds any flags defined by external projects (not part of pflags) +func (f *Factory) BindExternalFlags(flags *pflag.FlagSet) { + // any flags defined by external projects (not part of pflags) + flags.AddGoFlagSet(flag.CommandLine) +} + func getPorts(spec api.PodSpec) []string { result := []string{} for _, container := range spec.Containers {