From 80c78eadcea44018687e63a84b975386258fdc59 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aur=C3=A9lien=20Bombo?= Date: Tue, 18 Apr 2023 13:29:38 -0700 Subject: [PATCH] tests: Use baked-in kernel with Mariner MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Mariner ships a bleeding-edge kernel that might be ahead of upstream, so we use that to guarantee compatibility with the host. Signed-off-by: Aurélien Bombo --- tests/integration/kubernetes/setup.sh | 8 ++++++++ tools/packaging/kata-deploy/scripts/kata-deploy.sh | 4 ++-- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/tests/integration/kubernetes/setup.sh b/tests/integration/kubernetes/setup.sh index 63d9fb682b..639826bc86 100755 --- a/tests/integration/kubernetes/setup.sh +++ b/tests/integration/kubernetes/setup.sh @@ -14,6 +14,13 @@ set_runtime_class() { sed -i -e "s|runtimeClassName: kata|runtimeClassName: kata-${KATA_HYPERVISOR}|" ${kubernetes_dir}/runtimeclass_workloads/*.yaml } +set_kernel_path() { + if [[ "${KATA_HOST_OS}" = "cbl-mariner" ]]; then + mariner_kernel_path="/usr/share/cloud-hypervisor/vmlinux.bin" + find ${kubernetes_dir}/runtimeclass_workloads/*.yaml -exec yq write -i {} 'metadata.annotations[io.katacontainers.config.hypervisor.kernel]' "${mariner_kernel_path}" \; + fi +} + set_initrd_path() { if [[ "${KATA_HOST_OS}" = "cbl-mariner" ]]; then initrd_path="/opt/kata/share/kata-containers/kata-containers-initrd-cbl-mariner.img" @@ -24,6 +31,7 @@ set_initrd_path() { main() { INSTALL_IN_GOPATH=false bash "${repo_root_dir}/ci/install_yq.sh" set_runtime_class + set_kernel_path set_initrd_path } diff --git a/tools/packaging/kata-deploy/scripts/kata-deploy.sh b/tools/packaging/kata-deploy/scripts/kata-deploy.sh index 155bdf1ff0..368492bd7c 100755 --- a/tools/packaging/kata-deploy/scripts/kata-deploy.sh +++ b/tools/packaging/kata-deploy/scripts/kata-deploy.sh @@ -65,9 +65,9 @@ function install_artifacts() { [ -d /opt/kata/runtime-rs/bin ] && \ chmod +x /opt/kata/runtime-rs/bin/* - # Allow Mariner to specify a Mariner guest initrd. + # Allow Mariner to use custom configuration. if [ "${HOST_OS:-}" == "cbl-mariner" ]; then - sed -i -E 's|(enable_annotations) = .+|\1 = ["enable_iommu", "initrd"]|' /opt/kata/share/defaults/kata-containers/configuration-clh.toml + sed -i -E 's|(enable_annotations) = .+|\1 = ["enable_iommu", "initrd", "kernel"]|' /opt/kata/share/defaults/kata-containers/configuration-clh.toml fi }