Yq
From Halfface
Jump to navigationJump to search
yq
Download and make executable.
sudo curl -skL https://github.com/mikefarah/yq/releases/download/v4.32.2/yq_linux_amd64 -o /usr/local/bin/yq ; sudo chmod 755 /usr/local/bin/yq
Select specific values.
oc get mcp worker -o yaml | yq '.spec.configuration.source.[].name'
Delete specific values.
oc get secret -n openshift-config api-ocp -o yaml | kubectl neat | yq 'del(.metadata.annotations)' oc get kafka kafka -o yaml | yq 'del(.status)' oc get kafka kafka-cluster -o yaml | yq 'del(.status, .metadata.annotations."kubectl.kubernetes.io/last-applied-configuration", .metadata.creationTimestamp, .metadata.generation, .metadata.resourceVersion, .metadata.uid)'
Convert json to yaml.
yq -p json -o yaml
Convert yaml to json.
yq -o=json cm_result.yaml
Get packages from ansible playbook.
yq '.[] | select(.name == "Install packages.") | ."ansible.builtin.dnf".name[]' ~/git/halfface_ansible/roles/toolbox/tasks/main.yml | xargs
base64 decode
| yq '.data."tls.crt"|@base64d'
sort keys
yq -P 'sort_keys(..)'
print multiple values tab separated
oc get strimzipodsets -o yaml |yq -o tsv '.items[] | .metadata.name as $name | .spec.pods[].spec.containers[].image | [$name, .] | @tsv'