Change:
<!-- This form is for bug reports and feature requests ONLY! If you're looking for help check and the . If the matter is security related, please disclose it privately via --Is this a BUG REPORT or FEATURE REQUEST?: /kind feature isn't very useful as it only shows the name and age of the resourcequota resource. It'd be nice if it also shows the current/allocated usage for each, like this: Each resourcequota summary is of the format: . I think it would be a useful feature. I wouldn't mind taking a crack at implementing it if it's deemed worth by the maintainers. Thanks.
/sig cli
/assign code-sleuth
GitHub didn't allow me to assign the following users: code-sleuth. Note that only and repo collaborators can be assigned. For more information please see <detailsIn response to : /assign code-sleuth Instructions for interacting with me using PR comments are available . If you have questions or suggestions related to my behavior, please file an issue against the repository. </details
/assign juanvallejo

Discussion:
"fmt" "io" "net" <ins> "sort" </ins> "strconv" "strings" "time"

h.TableHandler(controllerRevisionColumnDefinition, printControllerRevision) h.TableHandler(controllerRevisionColumnDefinition, printControllerRevisionList) <ins> resorceQuotaColumnDefinitions := []metav1beta1.TableColumnDefinition{ {Name: "Name", Type: "string", Format: "name", Description: metav1.ObjectMeta{}.SwaggerDoc()["name"]}, {Name: "Age", Type: "string", Description: metav1.ObjectMeta{}.SwaggerDoc()["creationTimestamp"]}, {Name: "Request", Type: "string", Description: "Request represents a minimum amount of cpu/memory that a container may consume."}, {Name: "Limit", Type: "string", Description: "Limits control the maximum amount of cpu/memory that a container may use independent of contention on the node."}, } h.TableHandler(resorceQuotaColumnDefinitions, printResourceQuota) h.TableHandler(resorceQuotaColumnDefinitions, printResourceQuotaList) </ins> AddDefaultHandlers(h) }

} return rows, nil } <ins> func printResourceQuota(resourceQuota *api.ResourceQuota, options printers.PrintOptions) ([]metav1beta1.TableRow, error) { row := metav1beta1.TableRow{ Object: runtime.RawExtension{Object: resourceQuota}, } resources := make([]api.ResourceName, 0, len(resourceQuota.Status.Hard)) for resource := range resourceQuota.Status.Hard { resources = append(resources, resource) } sort.Sort(SortableResourceNames(resources)) requestColumn := bytes.NewBuffer([]byte{}) limitColumn := bytes.NewBuffer([]byte{}) for i := range resources { w := requestColumn resource := resources[i] usedQuantity := resourceQuota.Status.Used[resource] hardQuantity := resourceQuota.Status.Hard[resource] // use limitColumn writer if a resource name prefixed with "limits" is found if pieces := strings.Split(resource.String(), "."); len(pieces) > 1 && pieces[0] == "limits" { w = limitColumn } fmt.Fprintf(w, "%s: %s/%s, ", resource, usedQuantity.String(), hardQuantity.String()) } age := translateTimestampSince(resourceQuota.CreationTimestamp) row.Cells = append(row.Cells, resourceQuota.Name, age, strings.TrimSuffix(requestColumn.String(), ", "), strings.TrimSuffix(limitColumn.String(), ", ")) return []metav1beta1.TableRow{row}, nil } func printResourceQuotaList(list *api.ResourceQuotaList, options printers.PrintOptions) ([]metav1beta1.TableRow, error) { rows := make([]metav1beta1.TableRow, 0, len(list.Items)) for i := range list.Items { r, err := printResourceQuota(&list.Items[i], options) if err != nil { return nil, err } rows = append(rows, r...) } return rows, nil } </ins>