From 712dd4a9253e97e9ecdc99f99977ecb9ac39fb88 Mon Sep 17 00:00:00 2001 From: Jeremy Rickard Date: Tue, 13 Mar 2018 11:37:23 -0700 Subject: [PATCH] Add behavior to print deleted instance name (#1806) * Add behavior to print deleted instance name 1.) Slight refactor to output to make the method that prints deleted resource names more generic 2.) Added conditional to cmd/svcat/instance/deprovision_cmd.go to print deleted instance on success 3.) Updated README.md to convert the sample deprovision command to a console block with output Closes: #1805 * Missed refactor of parameter name in WriteDeletedResourceName refactor --- cmd/svcat/binding/unbind_cmd.go | 2 +- cmd/svcat/instance/deprovision_cmd.go | 7 ++++++- cmd/svcat/output/binding.go | 7 +------ cmd/svcat/output/output.go | 6 ++++++ docs/cli.md | 5 +++-- 5 files changed, 17 insertions(+), 10 deletions(-) diff --git a/cmd/svcat/binding/unbind_cmd.go b/cmd/svcat/binding/unbind_cmd.go index aaa560b016cd..a99823f7bfa5 100644 --- a/cmd/svcat/binding/unbind_cmd.go +++ b/cmd/svcat/binding/unbind_cmd.go @@ -83,7 +83,7 @@ func (c *unbindCmd) Run() error { func (c *unbindCmd) deleteBinding() error { err := c.App.DeleteBinding(c.ns, c.bindingName) if err == nil { - output.WriteDeletedBindingName(c.Output, c.bindingName) + output.WriteDeletedResourceName(c.Output, c.bindingName) } return err } diff --git a/cmd/svcat/instance/deprovision_cmd.go b/cmd/svcat/instance/deprovision_cmd.go index da5f85d4c71a..c9e84f35d453 100644 --- a/cmd/svcat/instance/deprovision_cmd.go +++ b/cmd/svcat/instance/deprovision_cmd.go @@ -18,6 +18,7 @@ package instance import ( "fmt" + "github.com/kubernetes-incubator/service-catalog/cmd/svcat/output" "github.com/kubernetes-incubator/service-catalog/cmd/svcat/command" "github.com/spf13/cobra" @@ -60,5 +61,9 @@ func (c *deprovisonCmd) Run() error { } func (c *deprovisonCmd) deprovision() error { - return c.App.Deprovision(c.ns, c.instanceName) + err := c.App.Deprovision(c.ns, c.instanceName) + if err == nil { + output.WriteDeletedResourceName(c.Output, c.instanceName) + } + return err } diff --git a/cmd/svcat/output/binding.go b/cmd/svcat/output/binding.go index 235169289344..44aadbd6adf9 100644 --- a/cmd/svcat/output/binding.go +++ b/cmd/svcat/output/binding.go @@ -101,11 +101,6 @@ func WriteAssociatedBindings(w io.Writer, bindings []v1beta1.ServiceBinding) { // WriteDeletedBindingNames prints the names of a list of bindings func WriteDeletedBindingNames(w io.Writer, bindings []v1beta1.ServiceBinding) { for _, binding := range bindings { - WriteDeletedBindingName(w, binding.Name) + WriteDeletedResourceName(w, binding.Name) } } - -// WriteDeletedBindingName prints the name of a binding -func WriteDeletedBindingName(w io.Writer, bindingName string) { - fmt.Fprintf(w, "deleted %s\n", bindingName) -} diff --git a/cmd/svcat/output/output.go b/cmd/svcat/output/output.go index f6f55ecf9758..1ba166e6aef4 100644 --- a/cmd/svcat/output/output.go +++ b/cmd/svcat/output/output.go @@ -18,6 +18,7 @@ package output import ( "fmt" + "io" "strings" "github.com/kubernetes-incubator/service-catalog/pkg/apis/servicecatalog/v1beta1" @@ -45,3 +46,8 @@ func formatStatusFull(condition string, conditionStatus v1beta1.ConditionStatus, message = strings.TrimRight(message, ".") return fmt.Sprintf("%s - %s @ %s", status, message, timestamp.UTC()) } + +// WriteDeletedResourceName prints the name of a deleted resource +func WriteDeletedResourceName(w io.Writer, resourceName string) { + fmt.Fprintf(w, "deleted %s\n", resourceName) +} diff --git a/docs/cli.md b/docs/cli.md index c4e9e2aefdf2..372edc75b50c 100644 --- a/docs/cli.md +++ b/docs/cli.md @@ -213,6 +213,7 @@ deleted ups-binding Deprovisioning is the process of preparing an instance to be removed, and then deleting it. You must unbind delete all bindings before deprovisioning an instance. -``` -svcat deprovision ups-instance +```console +$ svcat deprovision ups-instance +deleted ups-instance ```