From 52fc8efa5589e4d1aacf7900e6a88b7d5b2312e2 Mon Sep 17 00:00:00 2001 From: juanvallejo Date: Tue, 23 Aug 2016 14:11:39 -0400 Subject: [PATCH] update PrintSuccess message when using --dry-run --- pkg/kubectl/cmd/annotate.go | 2 +- pkg/kubectl/cmd/apply.go | 4 ++-- pkg/kubectl/cmd/autoscale.go | 2 +- pkg/kubectl/cmd/create.go | 4 ++-- pkg/kubectl/cmd/delete.go | 4 ++-- pkg/kubectl/cmd/drain.go | 10 +++++----- pkg/kubectl/cmd/edit.go | 4 ++-- pkg/kubectl/cmd/expose.go | 8 ++++++-- pkg/kubectl/cmd/expose_test.go | 3 ++- pkg/kubectl/cmd/label.go | 2 +- pkg/kubectl/cmd/patch.go | 2 +- pkg/kubectl/cmd/replace.go | 4 ++-- pkg/kubectl/cmd/rollingupdate.go | 2 +- pkg/kubectl/cmd/rollout/rollout_pause.go | 4 ++-- pkg/kubectl/cmd/rollout/rollout_resume.go | 4 ++-- pkg/kubectl/cmd/rollout/rollout_undo.go | 2 +- pkg/kubectl/cmd/run.go | 4 ++-- pkg/kubectl/cmd/scale.go | 2 +- pkg/kubectl/cmd/set/set_image.go | 2 +- pkg/kubectl/cmd/taint.go | 2 +- pkg/kubectl/cmd/util/printing.go | 10 +++++++--- 21 files changed, 45 insertions(+), 36 deletions(-) diff --git a/pkg/kubectl/cmd/annotate.go b/pkg/kubectl/cmd/annotate.go index 24e22f6a9c5..81ec97b3979 100644 --- a/pkg/kubectl/cmd/annotate.go +++ b/pkg/kubectl/cmd/annotate.go @@ -258,7 +258,7 @@ func (o AnnotateOptions) RunAnnotate() error { return o.f.PrintObject(o.cmd, mapper, outputObj, o.out) } - cmdutil.PrintSuccess(mapper, false, o.out, info.Mapping.Resource, info.Name, "annotated") + cmdutil.PrintSuccess(mapper, false, o.out, info.Mapping.Resource, info.Name, false, "annotated") return nil }) } diff --git a/pkg/kubectl/cmd/apply.go b/pkg/kubectl/cmd/apply.go index 45a46f14e3e..55687541c99 100644 --- a/pkg/kubectl/cmd/apply.go +++ b/pkg/kubectl/cmd/apply.go @@ -167,7 +167,7 @@ func RunApply(f *cmdutil.Factory, cmd *cobra.Command, out io.Writer, options *Ap return cmdutil.AddSourceToErr("creating", info.Source, err) } count++ - cmdutil.PrintSuccess(mapper, shortOutput, out, info.Mapping.Resource, info.Name, "created") + cmdutil.PrintSuccess(mapper, shortOutput, out, info.Mapping.Resource, info.Name, false, "created") return nil } @@ -192,7 +192,7 @@ func RunApply(f *cmdutil.Factory, cmd *cobra.Command, out io.Writer, options *Ap } count++ - cmdutil.PrintSuccess(mapper, shortOutput, out, info.Mapping.Resource, info.Name, "configured") + cmdutil.PrintSuccess(mapper, shortOutput, out, info.Mapping.Resource, info.Name, false, "configured") return nil }) diff --git a/pkg/kubectl/cmd/autoscale.go b/pkg/kubectl/cmd/autoscale.go index db8cea36092..1be1975dc75 100644 --- a/pkg/kubectl/cmd/autoscale.go +++ b/pkg/kubectl/cmd/autoscale.go @@ -187,7 +187,7 @@ func RunAutoscale(f *cmdutil.Factory, out io.Writer, cmd *cobra.Command, args [] return f.PrintObject(cmd, mapper, object, out) } - cmdutil.PrintSuccess(mapper, false, out, info.Mapping.Resource, info.Name, "autoscaled") + cmdutil.PrintSuccess(mapper, false, out, info.Mapping.Resource, info.Name, cmdutil.GetDryRunFlag(cmd), "autoscaled") return nil }) if err != nil { diff --git a/pkg/kubectl/cmd/create.go b/pkg/kubectl/cmd/create.go index 891a6409e50..cd1872dbddc 100644 --- a/pkg/kubectl/cmd/create.go +++ b/pkg/kubectl/cmd/create.go @@ -148,7 +148,7 @@ func RunCreate(f *cmdutil.Factory, cmd *cobra.Command, out io.Writer, options *C if !shortOutput { f.PrintObjectSpecificMessage(info.Object, out) } - cmdutil.PrintSuccess(mapper, shortOutput, out, info.Mapping.Resource, info.Name, "created") + cmdutil.PrintSuccess(mapper, shortOutput, out, info.Mapping.Resource, info.Name, false, "created") return nil }) if err != nil { @@ -234,7 +234,7 @@ func RunCreateSubcommand(f *cmdutil.Factory, cmd *cobra.Command, out io.Writer, } if useShortOutput := options.OutputFormat == "name"; useShortOutput || len(options.OutputFormat) == 0 { - cmdutil.PrintSuccess(mapper, useShortOutput, out, mapping.Resource, options.Name, "created") + cmdutil.PrintSuccess(mapper, useShortOutput, out, mapping.Resource, options.Name, options.DryRun, "created") return nil } diff --git a/pkg/kubectl/cmd/delete.go b/pkg/kubectl/cmd/delete.go index fdad53bf452..1af01918b68 100644 --- a/pkg/kubectl/cmd/delete.go +++ b/pkg/kubectl/cmd/delete.go @@ -192,7 +192,7 @@ func ReapResult(r *resource.Result, f *cmdutil.Factory, out io.Writer, isDefault return cmdutil.AddSourceToErr("stopping", info.Source, err) } if !quiet { - cmdutil.PrintSuccess(mapper, shortOutput, out, info.Mapping.Resource, info.Name, "deleted") + cmdutil.PrintSuccess(mapper, shortOutput, out, info.Mapping.Resource, info.Name, false, "deleted") } return nil }) @@ -230,6 +230,6 @@ func deleteResource(info *resource.Info, out io.Writer, shortOutput bool, mapper if err := resource.NewHelper(info.Client, info.Mapping).Delete(info.Namespace, info.Name); err != nil { return cmdutil.AddSourceToErr("deleting", info.Source, err) } - cmdutil.PrintSuccess(mapper, shortOutput, out, info.Mapping.Resource, info.Name, "deleted") + cmdutil.PrintSuccess(mapper, shortOutput, out, info.Mapping.Resource, info.Name, false, "deleted") return nil } diff --git a/pkg/kubectl/cmd/drain.go b/pkg/kubectl/cmd/drain.go index f21ac9c649b..2e29eaf5eca 100644 --- a/pkg/kubectl/cmd/drain.go +++ b/pkg/kubectl/cmd/drain.go @@ -227,7 +227,7 @@ func (o *DrainOptions) RunDrain() error { if err = o.deletePods(pods); err != nil { return err } - cmdutil.PrintSuccess(o.mapper, false, o.out, "node", o.nodeInfo.Name, "drained") + cmdutil.PrintSuccess(o.mapper, false, o.out, "node", o.nodeInfo.Name, false, "drained") return nil } @@ -391,7 +391,7 @@ func (o *DrainOptions) deletePods(pods []api.Pod) error { if err != nil { return err } - cmdutil.PrintSuccess(o.mapper, false, o.out, "pod", pod.Name, "deleted") + cmdutil.PrintSuccess(o.mapper, false, o.out, "pod", pod.Name, false, "deleted") } return nil @@ -408,7 +408,7 @@ func (o *DrainOptions) RunCordonOrUncordon(desired bool) error { if o.nodeInfo.Mapping.GroupVersionKind.Kind == "Node" { unsched := reflect.ValueOf(o.nodeInfo.Object).Elem().FieldByName("Spec").FieldByName("Unschedulable") if unsched.Bool() == desired { - cmdutil.PrintSuccess(o.mapper, false, o.out, o.nodeInfo.Mapping.Resource, o.nodeInfo.Name, already(desired)) + cmdutil.PrintSuccess(o.mapper, false, o.out, o.nodeInfo.Mapping.Resource, o.nodeInfo.Name, false, already(desired)) } else { helper := resource.NewHelper(o.restClient, o.nodeInfo.Mapping) unsched.SetBool(desired) @@ -416,10 +416,10 @@ func (o *DrainOptions) RunCordonOrUncordon(desired bool) error { if err != nil { return err } - cmdutil.PrintSuccess(o.mapper, false, o.out, o.nodeInfo.Mapping.Resource, o.nodeInfo.Name, changed(desired)) + cmdutil.PrintSuccess(o.mapper, false, o.out, o.nodeInfo.Mapping.Resource, o.nodeInfo.Name, false, changed(desired)) } } else { - cmdutil.PrintSuccess(o.mapper, false, o.out, o.nodeInfo.Mapping.Resource, o.nodeInfo.Name, "skipped") + cmdutil.PrintSuccess(o.mapper, false, o.out, o.nodeInfo.Mapping.Resource, o.nodeInfo.Name, false, "skipped") } return nil diff --git a/pkg/kubectl/cmd/edit.go b/pkg/kubectl/cmd/edit.go index 54a725c35b5..c1e4861d17c 100644 --- a/pkg/kubectl/cmd/edit.go +++ b/pkg/kubectl/cmd/edit.go @@ -387,7 +387,7 @@ func RunEdit(f *cmdutil.Factory, out, errOut io.Writer, cmd *cobra.Command, args if reflect.DeepEqual(originalJS, editedJS) { // no edit, so just skip it. - cmdutil.PrintSuccess(mapper, false, out, info.Mapping.Resource, info.Name, "skipped") + cmdutil.PrintSuccess(mapper, false, out, info.Mapping.Resource, info.Name, false, "skipped") return nil } @@ -409,7 +409,7 @@ func RunEdit(f *cmdutil.Factory, out, errOut io.Writer, cmd *cobra.Command, args return nil } info.Refresh(patched, true) - cmdutil.PrintSuccess(mapper, false, out, info.Mapping.Resource, info.Name, "edited") + cmdutil.PrintSuccess(mapper, false, out, info.Mapping.Resource, info.Name, false, "edited") return nil }) if err != nil { diff --git a/pkg/kubectl/cmd/expose.go b/pkg/kubectl/cmd/expose.go index 2ae63f9e90a..c9ac93e4bc3 100644 --- a/pkg/kubectl/cmd/expose.go +++ b/pkg/kubectl/cmd/expose.go @@ -261,7 +261,11 @@ func RunExpose(f *cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []str } info.Refresh(object, true) if cmdutil.GetDryRunFlag(cmd) { - return f.PrintObject(cmd, mapper, object, out) + if len(cmdutil.GetFlagString(cmd, "output")) > 0 { + return f.PrintObject(cmd, mapper, object, out) + } + cmdutil.PrintSuccess(mapper, false, out, info.Mapping.Resource, info.Name, true, "exposed") + return nil } if err := kubectl.CreateOrUpdateAnnotation(cmdutil.GetFlagBool(cmd, cmdutil.ApplyAnnotationsFlag), info, f.JSONEncoder()); err != nil { return err @@ -277,7 +281,7 @@ func RunExpose(f *cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []str return f.PrintObject(cmd, mapper, object, out) } - cmdutil.PrintSuccess(mapper, false, out, info.Mapping.Resource, info.Name, "exposed") + cmdutil.PrintSuccess(mapper, false, out, info.Mapping.Resource, info.Name, false, "exposed") return nil }) if err != nil { diff --git a/pkg/kubectl/cmd/expose_test.go b/pkg/kubectl/cmd/expose_test.go index 509d4ab81bb..69940475860 100644 --- a/pkg/kubectl/cmd/expose_test.go +++ b/pkg/kubectl/cmd/expose_test.go @@ -18,6 +18,7 @@ package cmd import ( "bytes" + "fmt" "net/http" "strings" "testing" @@ -464,7 +465,7 @@ func TestRunExposeService(t *testing.T) { continue } - test.expected = buf.String() + test.expected = fmt.Sprintf("service %q exposed (dry run)", test.flags["name"]) } if !strings.Contains(out, test.expected) { diff --git a/pkg/kubectl/cmd/label.go b/pkg/kubectl/cmd/label.go index 763b2cc4111..f7fb89b07c1 100644 --- a/pkg/kubectl/cmd/label.go +++ b/pkg/kubectl/cmd/label.go @@ -302,7 +302,7 @@ func RunLabel(f *cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []stri if outputFormat != "" { return f.PrintObject(cmd, mapper, outputObj, out) } - cmdutil.PrintSuccess(mapper, false, out, info.Mapping.Resource, info.Name, dataChangeMsg) + cmdutil.PrintSuccess(mapper, false, out, info.Mapping.Resource, info.Name, cmdutil.GetDryRunFlag(cmd), dataChangeMsg) return nil }) } diff --git a/pkg/kubectl/cmd/patch.go b/pkg/kubectl/cmd/patch.go index 0e830908bc5..278f3ff8388 100644 --- a/pkg/kubectl/cmd/patch.go +++ b/pkg/kubectl/cmd/patch.go @@ -186,7 +186,7 @@ func RunPatch(f *cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []stri count++ if options.OutputFormat == "name" || len(options.OutputFormat) == 0 { - cmdutil.PrintSuccess(mapper, options.OutputFormat == "name", out, "", name, "patched") + cmdutil.PrintSuccess(mapper, options.OutputFormat == "name", out, "", name, false, "patched") } return nil } diff --git a/pkg/kubectl/cmd/replace.go b/pkg/kubectl/cmd/replace.go index f1bd13e4f12..31059dd0e59 100644 --- a/pkg/kubectl/cmd/replace.go +++ b/pkg/kubectl/cmd/replace.go @@ -166,7 +166,7 @@ func RunReplace(f *cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []st info.Refresh(obj, true) f.PrintObjectSpecificMessage(obj, out) - cmdutil.PrintSuccess(mapper, shortOutput, out, info.Mapping.Resource, info.Name, "replaced") + cmdutil.PrintSuccess(mapper, shortOutput, out, info.Mapping.Resource, info.Name, false, "replaced") return nil }) } @@ -279,7 +279,7 @@ func forceReplace(f *cmdutil.Factory, out io.Writer, cmd *cobra.Command, args [] count++ info.Refresh(obj, true) f.PrintObjectSpecificMessage(obj, out) - cmdutil.PrintSuccess(mapper, shortOutput, out, info.Mapping.Resource, info.Name, "replaced") + cmdutil.PrintSuccess(mapper, shortOutput, out, info.Mapping.Resource, info.Name, false, "replaced") return nil }) if err != nil { diff --git a/pkg/kubectl/cmd/rollingupdate.go b/pkg/kubectl/cmd/rollingupdate.go index bd4d618d65d..c8cd7c3589b 100644 --- a/pkg/kubectl/cmd/rollingupdate.go +++ b/pkg/kubectl/cmd/rollingupdate.go @@ -394,7 +394,7 @@ func RunRollingUpdate(f *cmdutil.Factory, out io.Writer, cmd *cobra.Command, arg return err } _, res := meta.KindToResource(kinds[0]) - cmdutil.PrintSuccess(mapper, false, out, res.Resource, oldName, message) + cmdutil.PrintSuccess(mapper, false, out, res.Resource, oldName, dryrun, message) return nil } diff --git a/pkg/kubectl/cmd/rollout/rollout_pause.go b/pkg/kubectl/cmd/rollout/rollout_pause.go index 9d7bbbc6c28..97ee01b89fc 100644 --- a/pkg/kubectl/cmd/rollout/rollout_pause.go +++ b/pkg/kubectl/cmd/rollout/rollout_pause.go @@ -134,10 +134,10 @@ func (o PauseConfig) RunPause() error { continue } if isAlreadyPaused { - cmdutil.PrintSuccess(o.Mapper, false, o.Out, info.Mapping.Resource, info.Name, "already paused") + cmdutil.PrintSuccess(o.Mapper, false, o.Out, info.Mapping.Resource, info.Name, false, "already paused") continue } - cmdutil.PrintSuccess(o.Mapper, false, o.Out, info.Mapping.Resource, info.Name, "paused") + cmdutil.PrintSuccess(o.Mapper, false, o.Out, info.Mapping.Resource, info.Name, false, "paused") } return utilerrors.NewAggregate(allErrs) } diff --git a/pkg/kubectl/cmd/rollout/rollout_resume.go b/pkg/kubectl/cmd/rollout/rollout_resume.go index 4e9c21a69d0..3c5512096c1 100644 --- a/pkg/kubectl/cmd/rollout/rollout_resume.go +++ b/pkg/kubectl/cmd/rollout/rollout_resume.go @@ -138,10 +138,10 @@ func (o ResumeConfig) RunResume() error { continue } if isAlreadyResumed { - cmdutil.PrintSuccess(o.Mapper, false, o.Out, info.Mapping.Resource, info.Name, "already resumed") + cmdutil.PrintSuccess(o.Mapper, false, o.Out, info.Mapping.Resource, info.Name, false, "already resumed") continue } - cmdutil.PrintSuccess(o.Mapper, false, o.Out, info.Mapping.Resource, info.Name, "resumed") + cmdutil.PrintSuccess(o.Mapper, false, o.Out, info.Mapping.Resource, info.Name, false, "resumed") } return utilerrors.NewAggregate(allErrs) } diff --git a/pkg/kubectl/cmd/rollout/rollout_undo.go b/pkg/kubectl/cmd/rollout/rollout_undo.go index eb6960631f6..6689492a6f3 100644 --- a/pkg/kubectl/cmd/rollout/rollout_undo.go +++ b/pkg/kubectl/cmd/rollout/rollout_undo.go @@ -145,7 +145,7 @@ func (o *UndoOptions) RunUndo() error { allErrs = append(allErrs, cmdutil.AddSourceToErr("undoing", info.Source, err)) continue } - cmdutil.PrintSuccess(o.Mapper, false, o.Out, info.Mapping.Resource, info.Name, result) + cmdutil.PrintSuccess(o.Mapper, false, o.Out, info.Mapping.Resource, info.Name, false, result) } return utilerrors.NewAggregate(allErrs) } diff --git a/pkg/kubectl/cmd/run.go b/pkg/kubectl/cmd/run.go index 87751e3fc8e..3592c8d3a73 100644 --- a/pkg/kubectl/cmd/run.go +++ b/pkg/kubectl/cmd/run.go @@ -349,7 +349,7 @@ func Run(f *cmdutil.Factory, cmdIn io.Reader, cmdOut, cmdErr io.Writer, cmd *cob if outputFormat != "" || cmdutil.GetDryRunFlag(cmd) { return f.PrintObject(cmd, mapper, obj, cmdOut) } - cmdutil.PrintSuccess(mapper, false, cmdOut, mapping.Resource, args[0], "created") + cmdutil.PrintSuccess(mapper, false, cmdOut, mapping.Resource, args[0], cmdutil.GetDryRunFlag(cmd), "created") return nil } @@ -575,7 +575,7 @@ func generateService(f *cmdutil.Factory, cmd *cobra.Command, args []string, serv if cmdutil.GetFlagString(cmd, "output") != "" || cmdutil.GetDryRunFlag(cmd) { return f.PrintObject(cmd, mapper, obj, out) } - cmdutil.PrintSuccess(mapper, false, out, mapping.Resource, args[0], "created") + cmdutil.PrintSuccess(mapper, false, out, mapping.Resource, args[0], cmdutil.GetDryRunFlag(cmd), "created") return nil } diff --git a/pkg/kubectl/cmd/scale.go b/pkg/kubectl/cmd/scale.go index 1475ba81453..f161dff570a 100644 --- a/pkg/kubectl/cmd/scale.go +++ b/pkg/kubectl/cmd/scale.go @@ -186,7 +186,7 @@ func RunScale(f *cmdutil.Factory, out io.Writer, cmd *cobra.Command, args []stri } } counter++ - cmdutil.PrintSuccess(mapper, shortOutput, out, info.Mapping.Resource, info.Name, "scaled") + cmdutil.PrintSuccess(mapper, shortOutput, out, info.Mapping.Resource, info.Name, false, "scaled") return nil }) if err != nil { diff --git a/pkg/kubectl/cmd/set/set_image.go b/pkg/kubectl/cmd/set/set_image.go index 4444e6c550a..a2a0a394901 100644 --- a/pkg/kubectl/cmd/set/set_image.go +++ b/pkg/kubectl/cmd/set/set_image.go @@ -221,7 +221,7 @@ func (o *ImageOptions) Run() error { } info.Refresh(obj, true) - cmdutil.PrintSuccess(o.Mapper, o.ShortOutput, o.Out, info.Mapping.Resource, info.Name, "image updated") + cmdutil.PrintSuccess(o.Mapper, o.ShortOutput, o.Out, info.Mapping.Resource, info.Name, false, "image updated") } return utilerrors.NewAggregate(allErrs) } diff --git a/pkg/kubectl/cmd/taint.go b/pkg/kubectl/cmd/taint.go index 25b7dcb8d9e..15215dd2d7f 100644 --- a/pkg/kubectl/cmd/taint.go +++ b/pkg/kubectl/cmd/taint.go @@ -371,7 +371,7 @@ func (o TaintOptions) RunTaint() error { return o.f.PrintObject(o.cmd, mapper, outputObj, o.out) } - cmdutil.PrintSuccess(mapper, false, o.out, info.Mapping.Resource, info.Name, "tainted") + cmdutil.PrintSuccess(mapper, false, o.out, info.Mapping.Resource, info.Name, false, "tainted") return nil }) } diff --git a/pkg/kubectl/cmd/util/printing.go b/pkg/kubectl/cmd/util/printing.go index c27cc29c263..60d724d7e7e 100644 --- a/pkg/kubectl/cmd/util/printing.go +++ b/pkg/kubectl/cmd/util/printing.go @@ -56,8 +56,12 @@ func AddNoHeadersFlags(cmd *cobra.Command) { } // PrintSuccess prints message after finishing mutating operations -func PrintSuccess(mapper meta.RESTMapper, shortOutput bool, out io.Writer, resource string, name string, operation string) { +func PrintSuccess(mapper meta.RESTMapper, shortOutput bool, out io.Writer, resource string, name string, dryRun bool, operation string) { resource, _ = mapper.ResourceSingularizer(resource) + dryRunMsg := "" + if dryRun { + dryRunMsg = " (dry run)" + } if shortOutput { // -o name: prints resource/name if len(resource) > 0 { @@ -68,9 +72,9 @@ func PrintSuccess(mapper meta.RESTMapper, shortOutput bool, out io.Writer, resou } else { // understandable output by default if len(resource) > 0 { - fmt.Fprintf(out, "%s \"%s\" %s\n", resource, name, operation) + fmt.Fprintf(out, "%s \"%s\" %s%s\n", resource, name, operation, dryRunMsg) } else { - fmt.Fprintf(out, "\"%s\" %s\n", name, operation) + fmt.Fprintf(out, "\"%s\" %s%s\n", name, operation, dryRunMsg) } } }