diff --git a/scripts/run_integration_tests_aarch64.sh b/scripts/run_integration_tests_aarch64.sh index bd1e3954d..ff3cdc440 100755 --- a/scripts/run_integration_tests_aarch64.sh +++ b/scripts/run_integration_tests_aarch64.sh @@ -46,11 +46,29 @@ update_workloads() { popd || exit fi + FOCAL_OS_QCOW2_ZLIB_FILE_IMAGE_NAME="focal-server-cloudimg-arm64-custom-20210929-0-zlib.qcow2" + FOCAL_OS_QCOW2_ZLIB_FILE_IMAGE="$WORKLOADS_DIR/$FOCAL_OS_QCOW2_ZLIB_FILE_IMAGE_NAME" + if [ ! -f "$FOCAL_OS_QCOW2_ZLIB_FILE_IMAGE" ]; then + pushd "$WORKLOADS_DIR" || exit + time qemu-img convert -c -f raw -O qcow2 -o compression_type=zlib \ + "$FOCAL_OS_RAW_IMAGE" $FOCAL_OS_QCOW2_ZLIB_FILE_IMAGE_NAME + popd || exit + fi + + FOCAL_OS_QCOW2_ZSTD_FILE_IMAGE_NAME="focal-server-cloudimg-arm64-custom-20210929-0-zstd.qcow2" + FOCAL_OS_QCOW2_ZSTD_FILE_IMAGE="$WORKLOADS_DIR/$FOCAL_OS_QCOW2_ZSTD_FILE_IMAGE_NAME" + if [ ! -f "$FOCAL_OS_QCOW2_ZSTD_FILE_IMAGE" ]; then + pushd "$WORKLOADS_DIR" || exit + time qemu-img convert -c -f raw -O qcow2 -o compression_type=zstd \ + "$FOCAL_OS_RAW_IMAGE" $FOCAL_OS_QCOW2_ZSTD_FILE_IMAGE_NAME + popd || exit + fi + FOCAL_OS_QCOW2_IMAGE_BACKING_FILE_NAME="focal-server-cloudimg-arm64-custom-20210929-0-backing.qcow2" FOCAL_OS_QCOW2_BACKING_FILE_IMAGE="$WORKLOADS_DIR/$FOCAL_OS_QCOW2_IMAGE_BACKING_FILE_NAME" if [ ! -f "$FOCAL_OS_QCOW2_BACKING_FILE_IMAGE" ]; then pushd "$WORKLOADS_DIR" || exit - time qemu-img create -f qcow2 -b "$FOCAL_OS_QCOW2_UNCOMPRESSED_IMAGE" -F qcow2 $FOCAL_OS_QCOW2_IMAGE_BACKING_FILE_NAME + time qemu-img create -f qcow2 -b "$FOCAL_OS_QCOW2_ZSTD_FILE_IMAGE" -F qcow2 $FOCAL_OS_QCOW2_IMAGE_BACKING_FILE_NAME popd || exit fi diff --git a/scripts/run_integration_tests_x86_64.sh b/scripts/run_integration_tests_x86_64.sh index 6f89cf865..e2848a742 100755 --- a/scripts/run_integration_tests_x86_64.sh +++ b/scripts/run_integration_tests_x86_64.sh @@ -45,11 +45,31 @@ if [ ! -f "$FOCAL_OS_RAW_IMAGE" ]; then popd || exit fi +FOCAL_OS_QCOW_ZLIB_FILE_IMAGE_NAME="focal-server-cloudimg-amd64-custom-20210609-0-zlib.qcow2" +FOCAL_OS_QCOW_ZLIB_FILE_IMAGE="$WORKLOADS_DIR/$FOCAL_OS_QCOW_ZLIB_FILE_IMAGE_NAME" +if [ ! -f "$FOCAL_OS_QCOW_ZLIB_FILE_IMAGE" ]; then + pushd "$WORKLOADS_DIR" || exit + time qemu-img convert -c -f raw -O qcow2 -o compression_type=zlib \ + "$FOCAL_OS_RAW_IMAGE" $FOCAL_OS_QCOW_ZLIB_FILE_IMAGE_NAME + popd || exit +fi + +FOCAL_OS_QCOW_ZSTD_FILE_IMAGE_NAME="focal-server-cloudimg-amd64-custom-20210609-0-zstd.qcow2" +FOCAL_OS_QCOW_ZSTD_FILE_IMAGE="$WORKLOADS_DIR/$FOCAL_OS_QCOW_ZSTD_FILE_IMAGE_NAME" +if [ ! -f "$FOCAL_OS_QCOW_ZSTD_FILE_IMAGE" ]; then + pushd "$WORKLOADS_DIR" || exit + time qemu-img convert -c -f raw -O qcow2 -o compression_type=zstd \ + "$FOCAL_OS_RAW_IMAGE" $FOCAL_OS_QCOW_ZSTD_FILE_IMAGE_NAME + popd || exit +fi + FOCAL_OS_QCOW_BACKING_FILE_IMAGE_NAME="focal-server-cloudimg-amd64-custom-20210609-0-backing.qcow2" FOCAL_OS_QCOW_BACKING_FILE_IMAGE="$WORKLOADS_DIR/$FOCAL_OS_QCOW_BACKING_FILE_IMAGE_NAME" if [ ! -f "$FOCAL_OS_QCOW_BACKING_FILE_IMAGE" ]; then pushd "$WORKLOADS_DIR" || exit - time qemu-img create -f qcow2 -b "$FOCAL_OS_IMAGE" -F qcow2 $FOCAL_OS_QCOW_BACKING_FILE_IMAGE_NAME + time qemu-img create -f qcow2 \ + -b "$FOCAL_OS_QCOW_ZSTD_FILE_IMAGE" \ + -F qcow2 $FOCAL_OS_QCOW_BACKING_FILE_IMAGE_NAME popd || exit fi diff --git a/tests/integration.rs b/tests/integration.rs index 3c00200ec..276c4e00f 100644 --- a/tests/integration.rs +++ b/tests/integration.rs @@ -40,6 +40,10 @@ mod x86_64 { pub const JAMMY_VFIO_IMAGE_NAME: &str = "jammy-server-cloudimg-amd64-custom-vfio-20241012-0.raw"; pub const FOCAL_IMAGE_NAME_QCOW2: &str = "focal-server-cloudimg-amd64-custom-20210609-0.qcow2"; + pub const FOCAL_IMAGE_NAME_QCOW2_ZLIB: &str = + "focal-server-cloudimg-amd64-custom-20210609-0-zlib.qcow2"; + pub const FOCAL_IMAGE_NAME_QCOW2_ZSTD: &str = + "focal-server-cloudimg-amd64-custom-20210609-0-zstd.qcow2"; pub const FOCAL_IMAGE_NAME_QCOW2_BACKING_FILE: &str = "focal-server-cloudimg-amd64-custom-20210609-0-backing.qcow2"; pub const FOCAL_IMAGE_NAME_VHD: &str = "focal-server-cloudimg-amd64-custom-20210609-0.vhd"; @@ -59,6 +63,10 @@ mod aarch64 { pub const FOCAL_IMAGE_UPDATE_KERNEL_NAME: &str = "focal-server-cloudimg-arm64-custom-20210929-0-update-kernel.raw"; pub const FOCAL_IMAGE_NAME_QCOW2: &str = "focal-server-cloudimg-arm64-custom-20210929-0.qcow2"; + pub const FOCAL_IMAGE_NAME_QCOW2_ZLIB: &str = + "focal-server-cloudimg-arm64-custom-20210929-0-zlib.qcow2"; + pub const FOCAL_IMAGE_NAME_QCOW2_ZSTD: &str = + "focal-server-cloudimg-arm64-custom-20210929-0-zstd.qcow2"; pub const FOCAL_IMAGE_NAME_QCOW2_BACKING_FILE: &str = "focal-server-cloudimg-arm64-custom-20210929-0-backing.qcow2"; pub const FOCAL_IMAGE_NAME_VHD: &str = "focal-server-cloudimg-arm64-custom-20210929-0.vhd"; @@ -3488,6 +3496,16 @@ mod common_parallel { _test_virtio_block(FOCAL_IMAGE_NAME_QCOW2, false, false); } + #[test] + fn test_virtio_block_qcow2_zlib() { + _test_virtio_block(FOCAL_IMAGE_NAME_QCOW2_ZLIB, false, false); + } + + #[test] + fn test_virtio_block_qcow2_zstd() { + _test_virtio_block(FOCAL_IMAGE_NAME_QCOW2_ZSTD, false, false); + } + #[test] fn test_virtio_block_qcow2_backing_file() { _test_virtio_block(FOCAL_IMAGE_NAME_QCOW2_BACKING_FILE, false, false);