Skip to content

Server-side printing continued #60712

@juanvallejo

Description

@juanvallejo

This is continuation of the work started in #58536. The below list outlines work items related to server-side printing in 1.11:

Server:

  • determine whether to have a shorthand mime-type for table (application/json+meta+v1+Table) or similar
  • Move the OpenAPI column rendering for CRD to the server in the CRD implementation (continuation of Implement a stub server printer for CRDs #60269) apiextensions-apiserver: add columns to CRD spec #60991
  • Do a final pass on the default metadata renderer (the generic one)
  • Add a "example fuzzer" that returns a Table filled with all the values we could anticipate so that it's easy to test client impls
  • [] Review the Table API with a JS web console user The current history proved the table output is very good.
  • Look at a CSV mime type that uses table printing
  • Reevaluate the creationTimestamp to be returned as timestamp and not interpreted value.

Client:

  • Sorting and printing should be using the table but with full objects returned via the print API (?includeObject=Object) and then doing the sort on nested, as should custom columns.
  • Sorting in general needs to be looked at
  • Turn server-side print on by default (Turn server-print on by default in kubectl #61477)
  • Improve sorting in kubectl get (Update kubectl get sorter to deal with server-side printing #67211 updated the sorter in kubectl get to handle server-side printing. We need to improve performance of the sorter to handle large lists of resources better)
  • Custom-columns in kubectl get need to support Table objects as part of server-side printing. Currently they fallback to old printing behavior Custom columns will be using regular get since they need to operate on full object to be able to present fields requested by user. Using server-side print would be an overkill for this.
  • kubectl get --watch behavior needs to be updated to use server-side printing. We need server events to include Table objects before we can move forward with this. - use server-side printing in kubectl get -w #76161

Metadata

Metadata

Labels

kind/featureCategorizes issue or PR as related to a new feature.priority/important-longtermImportant over the long term, but may not be staffed and/or may need multiple releases to complete.sig/cliCategorizes an issue or PR as relevant to SIG CLI.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions