From beceb3c8444e6d33e883c397a616ae696a562ad0 Mon Sep 17 00:00:00 2001 From: Gabriela Cervantes Date: Fri, 2 Dec 2022 16:25:54 +0000 Subject: [PATCH] CCv0: use virtiofsd cache This PR allow us to use the virtiofsd cache tarball instead of building it from source. Fixes #5356 Signed-off-by: Gabriela Cervantes --- .../local-build/kata-deploy-binaries.sh | 3 ++- .../packaging/static-build/cache_components.sh | 18 ++++++++++++++++-- 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/tools/packaging/kata-deploy/local-build/kata-deploy-binaries.sh b/tools/packaging/kata-deploy/local-build/kata-deploy-binaries.sh index 8a10f7ed8e..8c36ebb987 100755 --- a/tools/packaging/kata-deploy/local-build/kata-deploy-binaries.sh +++ b/tools/packaging/kata-deploy/local-build/kata-deploy-binaries.sh @@ -236,10 +236,11 @@ install_cc_shimv2() { # Install static CC virtiofsd asset install_cc_virtiofsd() { + local virtiofsd_version="$(get_from_kata_deps "externals.virtiofsd.version")-$(get_from_kata_deps "externals.virtiofsd.toolchain")" install_cached_component \ "virtiofsd" \ "${jenkins_url}/job/kata-containers-2.0-virtiofsd-cc-$(uname -m)/${cached_artifacts_path}" \ - "$(get_from_kata_deps "assets.externals.virtiofsd.version")" \ + "${virtiofsd_version}" \ "$(get_virtiofsd_image_name)" \ "${final_tarball_name}" \ "${final_tarball_path}" \ diff --git a/tools/packaging/static-build/cache_components.sh b/tools/packaging/static-build/cache_components.sh index 93fed54cfd..4936af9011 100755 --- a/tools/packaging/static-build/cache_components.sh +++ b/tools/packaging/static-build/cache_components.sh @@ -39,7 +39,7 @@ cache_kernel_artifacts() { local kernel_tarball_name="kata-static-cc-kernel.tar.xz" local current_kernel_image="$(get_kernel_image_name)" local current_kernel_version="$(get_from_kata_deps "assets.kernel.version")" - if [ -n "${TEE}" ]; then + if [ -n "${TEE}" ]; then kernel_tarball_name="kata-static-cc-${TEE}-kernel.tar.xz" [ "${TEE}" == "tdx" ] && current_kernel_version="$(get_from_kata_deps "assets.kernel.${TEE}.tag")" [ "${TEE}" == "sev" ] && current_kernel_version="$(get_from_kata_deps "assets.kernel.${TEE}.version")" @@ -67,6 +67,13 @@ cache_firmware_artifacts() { create_cache_asset "${firmware_tarball_name}" "${current_firmware_version}" "${current_firmware_image}" } +cache_virtiofsd_artifacts() { + local virtiofsd_tarball_name="kata-static-cc-virtiofsd.tar.xz" + local current_virtiofsd_version="$(get_from_kata_deps "externals.virtiofsd.version")-$(get_from_kata_deps "externals.virtiofsd.toolchain")" + local current_virtiofsd_image="$(get_virtiofsd_image_name)" + create_cache_asset "${virtiofsd_tarball_name}" "${current_virtiofsd_version}" "${current_virtiofsd_image}" +} + create_cache_asset() { local component_name="${1}" local component_version="${2}" @@ -101,6 +108,7 @@ Usage: $0 "[options]" * Requires FIRMWARE environment variable set, valid values are: * tdvf * td-shim + -v Virtiofsd cache -h Shows help EOF )" @@ -111,8 +119,9 @@ main() { local qemu_component="${qemu_component:-}" local kernel_component="${kernel_component:-}" local firmware_component="${firmware_component:-}" + local virtiofsd_component="${virtiofsd_component:-}" local OPTIND - while getopts ":ckqfh:" opt + while getopts ":ckqfvh:" opt do case "$opt" in c) @@ -127,6 +136,9 @@ main() { f) firmware_component="1" ;; + v) + virtiofsd_component="1" + ;; h) help exit 0; @@ -144,6 +156,7 @@ main() { [[ -z "${kernel_component}" ]] && \ [[ -z "${qemu_component}" ]] && \ [[ -z "${firmware_component}" ]] && \ + [[ -z "${virtiofsd_component}" ]] && \ help && die "Must choose at least one option" mkdir -p "${WORKSPACE}/artifacts" @@ -154,6 +167,7 @@ main() { [ "${kernel_component}" == "1" ] && cache_kernel_artifacts [ "${qemu_component}" == "1" ] && cache_qemu_artifacts [ "${firmware_component}" == "1" ] && cache_firmware_artifacts + [ "${virtiofsd_component}" == "1" ] && cache_virtiofsd_artifacts ls -la "${WORKSPACE}/artifacts/" popd