mirror of
https://github.com/kata-containers/kata-containers.git
synced 2025-06-27 15:57:09 +00:00
kata-deploy: Properly create default runtime class
The default `kata` runtime class would get created with the `kata` handler instead of `kata-$KATA_HYPERVISOR`. This made Kata use the wrong hypervisor and broke CI. Fixes: #7663 Signed-off-by: Aurélien Bombo <abombo@microsoft.com>
This commit is contained in:
parent
0bbabeaaf8
commit
339569b69c
@ -14,13 +14,23 @@ setup() {
|
|||||||
# * `kata-${KATA_HYPERVISOR}` is the other one
|
# * `kata-${KATA_HYPERVISOR}` is the other one
|
||||||
# * As part of the tests we're only deploying the specific runtimeclass that will be used, instead of all of them.
|
# * As part of the tests we're only deploying the specific runtimeclass that will be used, instead of all of them.
|
||||||
expected_runtime_classes=2
|
expected_runtime_classes=2
|
||||||
|
|
||||||
|
# We expect both runtime classes to have the same handler: kata-${KATA_HYPERVISOR}
|
||||||
|
expected_handlers_re=( \
|
||||||
|
"kata\s+kata-${KATA_HYPERVISOR}" \
|
||||||
|
"kata-${KATA_HYPERVISOR}\s+kata-${KATA_HYPERVISOR}" \
|
||||||
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@test "Test runtimeclasses are being properly created" {
|
@test "Test runtimeclasses are being properly created" {
|
||||||
# We filter `kata-mshv-vm-isolation` out as that's present on AKS clusters, but that's not coming from kata-deploy
|
# We filter `kata-mshv-vm-isolation` out as that's present on AKS clusters, but that's not coming from kata-deploy
|
||||||
current_runtime_classes=$(kubectl get runtimeclasses | grep -v "kata-mshv-vm-isolation" | grep "kata" | wc -l)
|
current_runtime_classes=$(kubectl get runtimeclasses | grep -v "kata-mshv-vm-isolation" | grep "kata" | wc -l)
|
||||||
[[ ${current_runtime_classes} -eq ${expected_runtime_classes} ]]
|
[[ ${current_runtime_classes} -eq ${expected_runtime_classes} ]]
|
||||||
[[ $(kubectl get runtimeclasses | grep -q "${KATA_HYPERVISOR}") -eq 0 ]]
|
|
||||||
|
for handler_re in ${expected_handlers_re[@]}
|
||||||
|
do
|
||||||
|
[[ $(kubectl get runtimeclass | grep -E "${handler_re}") ]]
|
||||||
|
done
|
||||||
}
|
}
|
||||||
|
|
||||||
teardown() {
|
teardown() {
|
||||||
|
@ -44,7 +44,7 @@ function create_runtimeclasses() {
|
|||||||
if [[ "${CREATE_DEFAULT_RUNTIMECLASS}" == "true" ]]; then
|
if [[ "${CREATE_DEFAULT_RUNTIMECLASS}" == "true" ]]; then
|
||||||
echo "Creating the kata runtime class for the default shim (an alias for kata-${default_shim})"
|
echo "Creating the kata runtime class for the default shim (an alias for kata-${default_shim})"
|
||||||
cp /opt/kata-artifacts/runtimeclasses/kata-${default_shim}.yaml /tmp/kata.yaml
|
cp /opt/kata-artifacts/runtimeclasses/kata-${default_shim}.yaml /tmp/kata.yaml
|
||||||
sed -i -e 's/kata-'${default_shim}'/kata/g' /tmp/kata.yaml
|
sed -i -e 's/name: kata-'${default_shim}'/name: kata/g' /tmp/kata.yaml
|
||||||
kubectl apply -f /tmp/kata.yaml
|
kubectl apply -f /tmp/kata.yaml
|
||||||
rm -f /tmp/kata.yaml
|
rm -f /tmp/kata.yaml
|
||||||
fi
|
fi
|
||||||
@ -62,7 +62,7 @@ function delete_runtimeclasses() {
|
|||||||
if [[ "${CREATE_DEFAULT_RUNTIMECLASS}" == "true" ]]; then
|
if [[ "${CREATE_DEFAULT_RUNTIMECLASS}" == "true" ]]; then
|
||||||
echo "Deleting the kata runtime class for the default shim (an alias for kata-${default_shim})"
|
echo "Deleting the kata runtime class for the default shim (an alias for kata-${default_shim})"
|
||||||
cp /opt/kata-artifacts/runtimeclasses/kata-${default_shim}.yaml /tmp/kata.yaml
|
cp /opt/kata-artifacts/runtimeclasses/kata-${default_shim}.yaml /tmp/kata.yaml
|
||||||
sed -i -e 's/kata-'${default_shim}'/kata/g' /tmp/kata.yaml
|
sed -i -e 's/name: kata-'${default_shim}'/name: kata/g' /tmp/kata.yaml
|
||||||
kubectl delete -f /tmp/kata.yaml
|
kubectl delete -f /tmp/kata.yaml
|
||||||
rm -f /tmp/kata.yaml
|
rm -f /tmp/kata.yaml
|
||||||
fi
|
fi
|
||||||
|
Loading…
Reference in New Issue
Block a user