diff --git a/cmd/climc/shell/compute/common.go b/cmd/climc/shell/compute/common.go index c8bbda9526..bbe61bd8ee 100644 --- a/cmd/climc/shell/compute/common.go +++ b/cmd/climc/shell/compute/common.go @@ -21,8 +21,8 @@ import ( var ( R = shell.R - printList = printutils.PrintJSONList - printObject = printutils.PrintJSONObject + printList = shell.PrintList + printObject = shell.PrintObject printBatchResults = printutils.PrintJSONBatchResults InvalidUpdateError = shell.InvalidUpdateError diff --git a/cmd/climc/shell/utils.go b/cmd/climc/shell/utils.go index ae6adedf86..9939d4f355 100644 --- a/cmd/climc/shell/utils.go +++ b/cmd/climc/shell/utils.go @@ -41,10 +41,26 @@ func OutputFormat(s string) { outputFormat = s } +func PrintList(list *modulebase.ListResult, columns []string) { + switch outputFormat { + case OUTPUT_FORMAT_TABLE: + printutils.PrintJSONList(list, columns) + case OUTPUT_FORMAT_JSON: + fmt.Print(jsonutils.Marshal(list).PrettyString()) + fmt.Print("\n") + default: + fmt.Fprintf(os.Stderr, "unknown output format: %q\n", outputFormat) + } +} + func printList(list *modulebase.ListResult, columns []string) { printutils.PrintJSONList(list, columns) } +func PrintObject(obj jsonutils.JSONObject) { + printObject(obj) +} + func printObject(obj jsonutils.JSONObject) { switch outputFormat { case OUTPUT_FORMAT_TABLE: @@ -52,7 +68,7 @@ func printObject(obj jsonutils.JSONObject) { case OUTPUT_FORMAT_KV: printObjectFmtKv(obj) case OUTPUT_FORMAT_JSON: - fmt.Print(obj.String()) + fmt.Print(obj.PrettyString()) fmt.Print("\n") case OUTPUT_FORMAT_FLATTEN_TABLE: printObjectRecursive(obj)