How to format the output of kubectl describe to JSON

Gabriel Petrovay picture Gabriel Petrovay · May 26, 2016 · Viewed 29.9k times · Source

kubectl get command has this flag -o to format the output.

Is there a similar way to format the output of the kubectl describe command?

For example:

kubectl describe -o="jsonpath={...}" pods my-rc

would print a JSON format for the list of pods in my-rc replication controller. But -o is not accepted for the describe command.

Answer

janetkuo picture janetkuo · May 26, 2016

kubectl describe doesn't support -o or equivalent. It's meant to be human-readable rather than script-friendly. You can achieve what you described with kubectl get pods -l <selector_of_your_rc> -o <output_format>, for example:

$ kubectl get pods -l app=guestbook,tier=frontend -o name
pod/frontend-a4kjz
pod/frontend-am1ua
pod/frontend-yz2dq