Context
yq is a powerful command line tool for handling data in YAML format, as well as a few other related structured formats like TOML, JSON and CSV.
When working with the Rancher shell container, e.g. while using an interactive shell in the Rancher dashboard, it would be helpful to have this tool. Case in point: Filtering a potentially large list of objects and extracting just a subset of properties:
│ ~ │► kubectl -n default get pods -o yaml | yq '.items[] | select(.status.podIP == "10.52.0.82") | {"name": .metadata.name, "ip": .status.podIP, "QoS": .status.qosClass}'
name: virt-launcher-test-explicit-zqzlp
ip: 10.52.0.82
QoS: Burstable
The above command gets a list of all Pods in default namespace and extracts just the name, IP address and QoS class of the one Pod whose IP address matches the given one.
This is just an example of how yq can be useful in conjunction with kubectl and how it could significantly enhance the capabilities of the shell.
Request
Could yq be included in the rancher/shell container image by default?
Context
yq is a powerful command line tool for handling data in YAML format, as well as a few other related structured formats like TOML, JSON and CSV.
When working with the Rancher shell container, e.g. while using an interactive shell in the Rancher dashboard, it would be helpful to have this tool. Case in point: Filtering a potentially large list of objects and extracting just a subset of properties:
The above command gets a list of all Pods in
defaultnamespace and extracts just the name, IP address and QoS class of the one Pod whose IP address matches the given one.This is just an example of how
yqcan be useful in conjunction withkubectland how it could significantly enhance the capabilities of the shell.Request
Could
yqbe included in therancher/shellcontainer image by default?