mirror of
https://github.com/kata-containers/kata-containers.git
synced 2025-04-28 11:44:38 +00:00
tests: exec_host() now gets the node name
The exec_host() simply fails on cluster with multi-nodes because `kubectl get node -o name" will return a list o names. Moreover, it will return control nodes names which usually don't have kata installed. Fixes #7619 Signed-off-by: Wainer dos Santos Moschetta <wainersm@redhat.com>
This commit is contained in:
parent
61c9c17bff
commit
3a00fc9101
@ -47,10 +47,14 @@ get_one_kata_node() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
# Runs a command in the host filesystem.
|
# Runs a command in the host filesystem.
|
||||||
|
#
|
||||||
|
# Parameters:
|
||||||
|
# $1 - the node name
|
||||||
|
#
|
||||||
exec_host() {
|
exec_host() {
|
||||||
node="$(kubectl get node -o name)"
|
node="$1"
|
||||||
# `kubectl debug` always returns 0, so we hack it to return the right exit code.
|
# `kubectl debug` always returns 0, so we hack it to return the right exit code.
|
||||||
command="$@"
|
command="${@:2}"
|
||||||
command+='; echo -en \\n$?'
|
command+='; echo -en \\n$?'
|
||||||
# We're trailing the `\r` here due to: https://github.com/kata-containers/kata-containers/issues/8051
|
# We're trailing the `\r` here due to: https://github.com/kata-containers/kata-containers/issues/8051
|
||||||
# tl;dr: When testing with CRI-O we're facing the foillowing error:
|
# tl;dr: When testing with CRI-O we're facing the foillowing error:
|
||||||
@ -61,7 +65,7 @@ exec_host() {
|
|||||||
# [bats-exec-test:38] INFO: k8s configured to use runtimeclass
|
# [bats-exec-test:38] INFO: k8s configured to use runtimeclass
|
||||||
# bash: line 1: $'\r': command not found
|
# bash: line 1: $'\r': command not found
|
||||||
# ```
|
# ```
|
||||||
output="$(kubectl debug -qit "${node}" --image=alpine:latest -- chroot /host bash -c "${command}" | tr -d '\r')"
|
output="$(kubectl debug -qit "node/${node}" --image=alpine:latest -- chroot /host bash -c "${command}" | tr -d '\r')"
|
||||||
kubectl get pods -o name | grep node-debugger | xargs kubectl delete > /dev/null
|
kubectl get pods -o name | grep node-debugger | xargs kubectl delete > /dev/null
|
||||||
exit_code="$(echo "${output}" | tail -1)"
|
exit_code="$(echo "${output}" | tail -1)"
|
||||||
echo "$(echo "${output}" | head -n -1)"
|
echo "$(echo "${output}" | head -n -1)"
|
||||||
|
Loading…
Reference in New Issue
Block a user