From a24be450b20017788e02372a44bc839d9b53f5bd Mon Sep 17 00:00:00 2001 From: zhengjiajin Date: Wed, 23 Aug 2017 17:09:16 +0800 Subject: [PATCH] fix issue(49965)kubectl scale also says that it can work based on a label selector or all --- pkg/kubectl/cmd/scale.go | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/pkg/kubectl/cmd/scale.go b/pkg/kubectl/cmd/scale.go index 950c55ba763..c3cb64b86db 100644 --- a/pkg/kubectl/cmd/scale.go +++ b/pkg/kubectl/cmd/scale.go @@ -77,6 +77,8 @@ func NewCmdScale(f cmdutil.Factory, out io.Writer) *cobra.Command { ValidArgs: validArgs, ArgAliases: argAliases, } + cmd.Flags().StringP("selector", "l", "", "Selector (label query) to filter on, supports '=', '==', and '!='.(e.g. -l key1=value1,key2=value2)") + cmd.Flags().Bool("all", false, "Select all resources in the namespace of the specified resource types") cmd.Flags().String("resource-version", "", i18n.T("Precondition for resource version. Requires that the current resource version match this value in order to scale.")) cmd.Flags().Int("current-replicas", -1, "Precondition for current size. Requires that the current size of the resource match this value in order to scale.") cmd.Flags().Int("replicas", -1, "The new desired number of replicas. Required.") @@ -98,13 +100,17 @@ func RunScale(f cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []strin return err } + selector := cmdutil.GetFlagString(cmd, "selector") + all := cmdutil.GetFlagBool(cmd, "all") + mapper, _ := f.Object() r := f.NewBuilder(true). ContinueOnError(). NamespaceParam(cmdNamespace).DefaultNamespace(). FilenameParam(enforceNamespace, options). - ResourceTypeOrNameArgs(false, args...). + ResourceTypeOrNameArgs(all, args...). Flatten(). + SelectorParam(selector). Do() err = r.Err() if resource.IsUsageError(err) {