Search code examples
kubernetesoutput-formattingkubectl

How to format the output of kubectl describe to JSON


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.


Solution

  • 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