Commit 5c1d7487 authored by Kubernetes Submit Queue's avatar Kubernetes Submit Queue Committed by GitHub

Merge pull request #50584 from xilabao/fix-set-output-01

Automatic merge from submit-queue. If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>. fix kubectl set resource/selector/subject output **What this PR does / why we need it**: kubectl set resource/selector/subject -o yaml doesn't return the expected format **Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes https://github.com/kubernetes/kubectl/issues/51 **Special notes for your reviewer**: **Release note**: ```release-note NONE ```
parents bfaaa772 3e5dabbf
...@@ -70,7 +70,7 @@ type ResourcesOptions struct { ...@@ -70,7 +70,7 @@ type ResourcesOptions struct {
Err io.Writer Err io.Writer
Selector string Selector string
ContainerSelector string ContainerSelector string
ShortOutput bool Output string
All bool All bool
Record bool Record bool
ChangeCause string ChangeCause string
...@@ -130,7 +130,7 @@ func (o *ResourcesOptions) Complete(f cmdutil.Factory, cmd *cobra.Command, args ...@@ -130,7 +130,7 @@ func (o *ResourcesOptions) Complete(f cmdutil.Factory, cmd *cobra.Command, args
o.Mapper, o.Typer = f.Object() o.Mapper, o.Typer = f.Object()
o.UpdatePodSpecForObject = f.UpdatePodSpecForObject o.UpdatePodSpecForObject = f.UpdatePodSpecForObject
o.Encoder = f.JSONEncoder() o.Encoder = f.JSONEncoder()
o.ShortOutput = cmdutil.GetFlagString(cmd, "output") == "name" o.Output = cmdutil.GetFlagString(cmd, "output")
o.Record = cmdutil.GetRecordFlag(cmd) o.Record = cmdutil.GetRecordFlag(cmd)
o.Local = cmdutil.GetFlagBool(cmd, "local") o.Local = cmdutil.GetFlagBool(cmd, "local")
o.ChangeCause = f.Command(cmd, false) o.ChangeCause = f.Command(cmd, false)
...@@ -254,7 +254,12 @@ func (o *ResourcesOptions) Run() error { ...@@ -254,7 +254,12 @@ func (o *ResourcesOptions) Run() error {
} }
} }
info.Refresh(obj, true) info.Refresh(obj, true)
cmdutil.PrintSuccess(o.Mapper, o.ShortOutput, o.Out, info.Mapping.Resource, info.Name, false, "resource requirements updated")
shortOutput := o.Output == "name"
if len(o.Output) > 0 && !shortOutput {
return o.PrintObject(o.Cmd, o.Local, o.Mapper, info.Object, o.Out)
}
cmdutil.PrintSuccess(o.Mapper, shortOutput, o.Out, info.Mapping.Resource, info.Name, false, "resource requirements updated")
} }
return utilerrors.NewAggregate(allErrs) return utilerrors.NewAggregate(allErrs)
} }
...@@ -44,6 +44,7 @@ type SelectorOptions struct { ...@@ -44,6 +44,7 @@ type SelectorOptions struct {
all bool all bool
record bool record bool
changeCause string changeCause string
output string
resources []string resources []string
selector *metav1.LabelSelector selector *metav1.LabelSelector
...@@ -107,6 +108,7 @@ func (o *SelectorOptions) Complete(f cmdutil.Factory, cmd *cobra.Command, args [ ...@@ -107,6 +108,7 @@ func (o *SelectorOptions) Complete(f cmdutil.Factory, cmd *cobra.Command, args [
o.all = cmdutil.GetFlagBool(cmd, "all") o.all = cmdutil.GetFlagBool(cmd, "all")
o.record = cmdutil.GetRecordFlag(cmd) o.record = cmdutil.GetRecordFlag(cmd)
o.dryrun = cmdutil.GetDryRunFlag(cmd) o.dryrun = cmdutil.GetDryRunFlag(cmd)
o.output = cmdutil.GetFlagString(cmd, "output")
cmdNamespace, enforceNamespace, err := f.DefaultNamespace() cmdNamespace, enforceNamespace, err := f.DefaultNamespace()
if err != nil { if err != nil {
...@@ -206,7 +208,12 @@ func (o *SelectorOptions) RunSelector() error { ...@@ -206,7 +208,12 @@ func (o *SelectorOptions) RunSelector() error {
} }
info.Refresh(patched, true) info.Refresh(patched, true)
cmdutil.PrintSuccess(o.mapper, false, o.out, info.Mapping.Resource, info.Name, o.dryrun, "selector updated")
shortOutput := o.output == "name"
if len(o.output) > 0 && !shortOutput {
return o.PrintObject(info.Object)
}
cmdutil.PrintSuccess(o.mapper, shortOutput, o.out, info.Mapping.Resource, info.Name, o.dryrun, "selector updated")
return nil return nil
}) })
} }
......
...@@ -65,7 +65,7 @@ type SubjectOptions struct { ...@@ -65,7 +65,7 @@ type SubjectOptions struct {
Err io.Writer Err io.Writer
Selector string Selector string
ContainerSelector string ContainerSelector string
ShortOutput bool Output string
All bool All bool
DryRun bool DryRun bool
Local bool Local bool
...@@ -113,7 +113,7 @@ func (o *SubjectOptions) Complete(f cmdutil.Factory, cmd *cobra.Command, args [] ...@@ -113,7 +113,7 @@ func (o *SubjectOptions) Complete(f cmdutil.Factory, cmd *cobra.Command, args []
o.Local = cmdutil.GetFlagBool(cmd, "local") o.Local = cmdutil.GetFlagBool(cmd, "local")
o.Mapper, o.Typer = f.Object() o.Mapper, o.Typer = f.Object()
o.Encoder = f.JSONEncoder() o.Encoder = f.JSONEncoder()
o.ShortOutput = cmdutil.GetFlagString(cmd, "output") == "name" o.Output = cmdutil.GetFlagString(cmd, "output")
o.DryRun = cmdutil.GetDryRunFlag(cmd) o.DryRun = cmdutil.GetDryRunFlag(cmd)
o.PrintObject = func(mapper meta.RESTMapper, obj runtime.Object, out io.Writer) error { o.PrintObject = func(mapper meta.RESTMapper, obj runtime.Object, out io.Writer) error {
return f.PrintObject(cmd, o.Local, mapper, obj, out) return f.PrintObject(cmd, o.Local, mapper, obj, out)
...@@ -248,7 +248,11 @@ func (o *SubjectOptions) Run(f cmdutil.Factory, fn updateSubjects) error { ...@@ -248,7 +248,11 @@ func (o *SubjectOptions) Run(f cmdutil.Factory, fn updateSubjects) error {
} }
info.Refresh(obj, true) info.Refresh(obj, true)
cmdutil.PrintSuccess(o.Mapper, o.ShortOutput, o.Out, info.Mapping.Resource, info.Name, false, "subjects updated") shortOutput := o.Output == "name"
if len(o.Output) > 0 && !shortOutput {
return o.PrintObject(o.Mapper, info.Object, o.Out)
}
cmdutil.PrintSuccess(o.Mapper, shortOutput, o.Out, info.Mapping.Resource, info.Name, false, "subjects updated")
} }
return utilerrors.NewAggregate(allErrs) return utilerrors.NewAggregate(allErrs)
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment