The tests under machine_aarch64_virt.py do not need read-write access to the ISOs. The ones under machine_aarch64_sbsaref.py, on the other hand, will need read-write access, so let's give each test an unique file. And while at it, let's use a single code style and hash for the ISO url. Signed-off-by: Cleber Rosa <crosa@xxxxxxxxxx> --- tests/avocado/machine_aarch64_sbsaref.py | 9 +++++++-- tests/avocado/machine_aarch64_virt.py | 14 +++++++------- 2 files changed, 14 insertions(+), 9 deletions(-) diff --git a/tests/avocado/machine_aarch64_sbsaref.py b/tests/avocado/machine_aarch64_sbsaref.py index 528c7d2934..6ae84d77ac 100644 --- a/tests/avocado/machine_aarch64_sbsaref.py +++ b/tests/avocado/machine_aarch64_sbsaref.py @@ -7,6 +7,7 @@ # SPDX-License-Identifier: GPL-2.0-or-later import os +import shutil from avocado import skipUnless from avocado.utils import archive @@ -123,13 +124,15 @@ def boot_alpine_linux(self, cpu): iso_hash = "5a36304ecf039292082d92b48152a9ec21009d3a62f459de623e19c4bd9dc027" iso_path = self.fetch_asset(iso_url, algorithm="sha256", asset_hash=iso_hash) + iso_path_rw = os.path.join(self.workdir, os.path.basename(iso_path)) + shutil.copy(iso_path, iso_path_rw) self.vm.set_console() self.vm.add_args( "-cpu", cpu, "-drive", - f"file={iso_path},format=raw", + f"file={iso_path_rw},format=raw", "-device", "virtio-rng-pci,rng=rng0", "-object", @@ -170,13 +173,15 @@ def boot_openbsd73(self, cpu): img_hash = "7fc2c75401d6f01fbfa25f4953f72ad7d7c18650056d30755c44b9c129b707e5" img_path = self.fetch_asset(img_url, algorithm="sha256", asset_hash=img_hash) + img_path_rw = os.path.join(self.workdir, os.path.basename(img_path)) + shutil.copy(img_path, img_path_rw) self.vm.set_console() self.vm.add_args( "-cpu", cpu, "-drive", - f"file={img_path},format=raw", + f"file={img_path_rw},format=raw", "-device", "virtio-rng-pci,rng=rng0", "-object", diff --git a/tests/avocado/machine_aarch64_virt.py b/tests/avocado/machine_aarch64_virt.py index a90dc6ff4b..093d68f837 100644 --- a/tests/avocado/machine_aarch64_virt.py +++ b/tests/avocado/machine_aarch64_virt.py @@ -37,13 +37,13 @@ def test_alpine_virt_tcg_gic_max(self): :avocado: tags=machine:virt :avocado: tags=accel:tcg """ - iso_url = ('https://dl-cdn.alpinelinux.org/' - 'alpine/v3.17/releases/aarch64/' - 'alpine-standard-3.17.2-aarch64.iso') + iso_url = ( + "https://dl-cdn.alpinelinux.org/" + "alpine/v3.17/releases/aarch64/alpine-standard-3.17.2-aarch64.iso" + ) - # Alpine use sha256 so I recalculated this myself - iso_sha1 = '76284fcd7b41fe899b0c2375ceb8470803eea839' - iso_path = self.fetch_asset(iso_url, asset_hash=iso_sha1) + iso_hash = "5a36304ecf039292082d92b48152a9ec21009d3a62f459de623e19c4bd9dc027" + iso_path = self.fetch_asset(iso_url, algorithm="sha256", asset_hash=iso_hash) self.vm.set_console() kernel_command_line = (self.KERNEL_COMMON_COMMAND_LINE + @@ -60,7 +60,7 @@ def test_alpine_virt_tcg_gic_max(self): self.vm.add_args("-smp", "2", "-m", "1024") self.vm.add_args('-bios', os.path.join(BUILD_DIR, 'pc-bios', 'edk2-aarch64-code.fd')) - self.vm.add_args("-drive", f"file={iso_path},format=raw") + self.vm.add_args("-drive", f"file={iso_path},readonly=on,format=raw") self.vm.add_args('-device', 'virtio-rng-pci,rng=rng0') self.vm.add_args('-object', 'rng-random,id=rng0,filename=/dev/urandom') -- 2.43.0