mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-25 12:43:23 +00:00
Merge pull request #40551 from juanvallejo/jvallejo/only-output-no-resources-found-for-human-readable-printer
Automatic merge from submit-queue (batch tested with PRs 40691, 40551, 40683, 40700, 40702) only output "No resources found." for human readable printers **Release note**: ```release-note release note none ``` This patch removes the message `No resources found` (currently printed through stderr) when printing through a generic / non-human-readable printer (json, yaml, jsonpath, custom-columns). **Before*** ``` $ kubectl get pods -o json No resources found. { "apiVersion": "v1", "items": [], "kind": "List", "metadata": {}, "resourceVersion": "", "selfLink": "" } ``` **After** ``` $ kubectl get pods -o json { "apiVersion": "v1", "items": [], "kind": "List", "metadata": {}, "resourceVersion": "", "selfLink": "" } ``` cc @fabianofranz @stevekuznetsov
This commit is contained in:
commit
25de8ef641
@ -224,7 +224,7 @@ kube::test::if_has_string() {
|
|||||||
local message=$1
|
local message=$1
|
||||||
local match=$2
|
local match=$2
|
||||||
|
|
||||||
if [[ $(echo "$message" | grep "$match") ]]; then
|
if echo "$message" | grep -q "$match"; then
|
||||||
echo "Successful"
|
echo "Successful"
|
||||||
echo "message:$message"
|
echo "message:$message"
|
||||||
echo "has:$match"
|
echo "has:$match"
|
||||||
@ -238,6 +238,24 @@ kube::test::if_has_string() {
|
|||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
kube::test::if_has_not_string() {
|
||||||
|
local message=$1
|
||||||
|
local match=$2
|
||||||
|
|
||||||
|
if echo "$message" | grep -q "$match"; then
|
||||||
|
echo "FAIL!"
|
||||||
|
echo "message:$message"
|
||||||
|
echo "has:$match"
|
||||||
|
caller
|
||||||
|
return 1
|
||||||
|
else
|
||||||
|
echo "Successful"
|
||||||
|
echo "message:$message"
|
||||||
|
echo "has not:$match"
|
||||||
|
return 0
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
# Returns true if the required resource is part of supported resources.
|
# Returns true if the required resource is part of supported resources.
|
||||||
# Expects env vars:
|
# Expects env vars:
|
||||||
# SUPPORTED_RESOURCES: Array of all resources supported by the apiserver. "*"
|
# SUPPORTED_RESOURCES: Array of all resources supported by the apiserver. "*"
|
||||||
|
@ -1037,6 +1037,46 @@ run_kubectl_get_tests() {
|
|||||||
# Post-condition: POD abc should error since it doesn't exist
|
# Post-condition: POD abc should error since it doesn't exist
|
||||||
kube::test::if_has_string "${output_message}" 'pods "abc" not found'
|
kube::test::if_has_string "${output_message}" 'pods "abc" not found'
|
||||||
|
|
||||||
|
### Test retrieval of pods when none exist with non-human readable output format flag specified
|
||||||
|
# Pre-condition: no pods exist
|
||||||
|
kube::test::get_object_assert pods "{{range.items}}{{$id_field}}:{{end}}" ''
|
||||||
|
# Command
|
||||||
|
output_message=$(kubectl get pods 2>&1 "${kube_flags[@]}" -o json)
|
||||||
|
# Post-condition: The text "No resources found" should not be part of the output
|
||||||
|
kube::test::if_has_not_string "${output_message}" 'No resources found'
|
||||||
|
# Command
|
||||||
|
output_message=$(kubectl get pods 2>&1 "${kube_flags[@]}" -o yaml)
|
||||||
|
# Post-condition: The text "No resources found" should not be part of the output
|
||||||
|
kube::test::if_has_not_string "${output_message}" 'No resources found'
|
||||||
|
# Command
|
||||||
|
output_message=$(kubectl get pods 2>&1 "${kube_flags[@]}" -o name)
|
||||||
|
# Post-condition: The text "No resources found" should not be part of the output
|
||||||
|
kube::test::if_has_not_string "${output_message}" 'No resources found'
|
||||||
|
# Command
|
||||||
|
output_message=$(kubectl get pods 2>&1 "${kube_flags[@]}" -o jsonpath='{.items}')
|
||||||
|
# Post-condition: The text "No resources found" should not be part of the output
|
||||||
|
kube::test::if_has_not_string "${output_message}" 'No resources found'
|
||||||
|
# Command
|
||||||
|
output_message=$(kubectl get pods 2>&1 "${kube_flags[@]}" -o go-template='{{.items}}')
|
||||||
|
# Post-condition: The text "No resources found" should not be part of the output
|
||||||
|
kube::test::if_has_not_string "${output_message}" 'No resources found'
|
||||||
|
# Command
|
||||||
|
output_message=$(kubectl get pods 2>&1 "${kube_flags[@]}" -o custom-columns=NAME:.metadata.name)
|
||||||
|
# Post-condition: The text "No resources found" should not be part of the output
|
||||||
|
kube::test::if_has_not_string "${output_message}" 'No resources found'
|
||||||
|
|
||||||
|
### Test retrieval of pods when none exist, with human-readable output format flag specified
|
||||||
|
# Pre-condition: no pods exist
|
||||||
|
kube::test::get_object_assert pods "{{range.items}}{{$id_field}}:{{end}}" ''
|
||||||
|
# Command
|
||||||
|
output_message=$(kubectl get pods 2>&1 "${kube_flags[@]}")
|
||||||
|
# Post-condition: The text "No resources found" should be part of the output
|
||||||
|
kube::test::if_has_string "${output_message}" 'No resources found'
|
||||||
|
# Command
|
||||||
|
output_message=$(kubectl get pods 2>&1 "${kube_flags[@]}" -o wide)
|
||||||
|
# Post-condition: The text "No resources found" should be part of the output
|
||||||
|
kube::test::if_has_string "${output_message}" 'No resources found'
|
||||||
|
|
||||||
### Test retrieval of non-existing POD with json output flag specified
|
### Test retrieval of non-existing POD with json output flag specified
|
||||||
# Pre-condition: no POD exists
|
# Pre-condition: no POD exists
|
||||||
kube::test::get_object_assert pods "{{range.items}}{{$id_field}}:{{end}}" ''
|
kube::test::get_object_assert pods "{{range.items}}{{$id_field}}:{{end}}" ''
|
||||||
|
@ -319,9 +319,6 @@ func RunGet(f cmdutil.Factory, out, errOut io.Writer, cmd *cobra.Command, args [
|
|||||||
}
|
}
|
||||||
errs = append(errs, err)
|
errs = append(errs, err)
|
||||||
}
|
}
|
||||||
if len(infos) == 0 && len(errs) == 0 {
|
|
||||||
outputEmptyListWarning(errOut)
|
|
||||||
}
|
|
||||||
|
|
||||||
res := ""
|
res := ""
|
||||||
if len(infos) > 0 {
|
if len(infos) > 0 {
|
||||||
|
Loading…
Reference in New Issue
Block a user