scripts: skip downloads when workloads already exist

Add file-existence guards around firmware and OVMF download
calls in integration test scripts that were missing them.
Also guard prepare_linux() in test-util.sh so it returns
early when the kernel binary is already present.

This lets users pre-populate the workloads directory (e.g.
via CH_CUSTOM_KERNEL, CH_CUSTOM_FIRMWARE, CH_CUSTOM_OVMF)
and avoid redundant network fetches or source builds inside
the container.

Updated scripts:
- test-util.sh (prepare_linux early return)
- run_integration_tests_aarch64.sh
- run_integration_tests_vfio.sh
- run_integration_tests_windows_x86_64.sh
- run_integration_tests_windows_aarch64.sh

Assisted-by: GitHub Copilot:Claude-Opus-4.6

Signed-off-by: Muminul Islam <muislam@microsoft.com>
This commit is contained in:
Muminul Islam
2026-04-23 15:02:11 -07:00
committed by Rob Bradford
parent 00bee62653
commit c5e90a37e6
5 changed files with 24 additions and 4 deletions

View File

@@ -187,6 +187,17 @@ download_linux() {
}
prepare_linux() {
if [ "$(uname -m)" = "aarch64" ]; then
KERNEL_FILE="$WORKLOADS_DIR/Image-arm64"
else
KERNEL_FILE="$WORKLOADS_DIR/vmlinux-x86_64"
BZIMAGE_FILE="$WORKLOADS_DIR/bzImage-x86_64"
fi
if [[ -f "$KERNEL_FILE" && -f "$BZIMAGE_FILE" ]]; then
echo "Kernel already present at $KERNEL_FILE, skipping"
return
fi
if [ "$build_kernel" = true ]; then
echo "Building kernel from source"
build_custom_linux