Merge pull request #2309 from lavalamp/fix3

Refactors of kubectl object printers.
This commit is contained in:
Eric Tune
2014-11-11 16:39:04 -08:00
6 changed files with 164 additions and 84 deletions

View File

@@ -61,22 +61,16 @@ Examples:
defaultPrinter, err := f.Printer(cmd, mapping, GetFlagBool(cmd, "no-headers"))
checkErr(err)
printer, versioned, err := kubectl.GetPrinter(outputFormat, templateFile, defaultPrinter)
outputVersion := GetFlagString(cmd, "output-version")
if len(outputVersion) == 0 {
outputVersion = mapping.APIVersion
}
printer, err := kubectl.GetPrinter(outputVersion, outputFormat, templateFile, defaultPrinter)
checkErr(err)
obj, err := kubectl.NewRESTHelper(client, mapping).Get(namespace, name, labels)
checkErr(err)
if versioned {
outputVersion := GetFlagString(cmd, "output-version")
if len(outputVersion) == 0 {
outputVersion = mapping.APIVersion
}
obj, err = mapping.ObjectConvertor.ConvertToVersion(obj, outputVersion)
checkErr(err)
}
if err := printer.PrintObj(obj, out); err != nil {
checkErr(fmt.Errorf("Unable to output the provided object: %v", err))
}