Parsing json in kubernetes use jq
kubectl get ing/name-ingress -n namespace -o json | \
jq 'del(
.metadata.annotations,
.metadata.creationTimestamp,
.metadata.generation,
.metadata.resourceVersion,
.metadata.uid,
.status
)' | \
yq eval --prettyPrint > name-ingress.yml
kubectl get deployment/name-deployment -n namespace -o json | \
jq 'del(
.metadata.resourceVersion,
.metadata.uid,
.metadata.selfLink,
.metadata.creationTimestamp,
.metadata.annotations,
.metadata.generation,
.metadata.ownerReferences,
.spec.ClusterIP,
.specClusterIPS,
.status
)' | \
yq eval --prettyPrint > name-deployment.yml
kubectl get service/service-name -n namespace -o json | \
jq 'del(
.metadata.creationTimestamp,
.metadata.resourceVersion,
.metadata.uid,
.metadata.annotations,
.metadata.generation,
.metadata.selfLink,
.status
)' | \
yq eval --prettyPrint > name-service.yml
kubectl get pvc/pvc-name -n namespace -o json | \
jq 'del(
.metadata.creationTimestamp,
.metadata.resourceVersion,
.metadata.uid,
.metadata.annotations,
.metadata.finalizers,
.metadata.managedFields,
.spec.volumeName,
.status
)' | \
yq eval --prettyPrint > name-pvc.yml
Last updated