[PATCH 3/5] test: lookup qemu binary in path if no tools key exists
Ahmad Fatoum
a.fatoum at pengutronix.de
Mon Jun 19 02:52:38 PDT 2023
This is already the behavior on labgrid master, but until there's a
release using that, we amend the BareboxTestStrategy to achieve the same
result with existing labgrid releases.
Signed-off-by: Ahmad Fatoum <a.fatoum at pengutronix.de>
---
test/arm/a15 at multi_v7_defconfig.yaml | 4 +---
test/arm/a9 at multi_v7_defconfig.yaml | 4 +---
test/arm/multi_v8_defconfig.yaml | 4 +---
test/arm/qemu-raspi0 at multi_v7_defconfig.yaml | 4 +---
test/arm/qemu-raspi1ap at multi_v7_defconfig.yaml | 4 +---
test/arm/qemu-raspi2b at multi_v7_defconfig.yaml | 4 +---
test/arm/qemu-sabrelite at multi_v7_defconfig.yaml | 4 +---
test/arm/virt at multi_v7_defconfig.yaml | 4 +---
test/mips/be at qemu-malta_defconfig.yaml | 4 +---
test/mips/le at qemu-malta_defconfig.yaml | 4 +---
test/mips/qemu-malta64el_defconfig.yaml | 4 +---
test/openrisc/generic_defconfig.yaml | 4 +---
test/riscv/qemu-virt64 at rv64i_defconfig.yaml | 4 +---
test/riscv/qemu at virt32_defconfig.yaml | 4 +---
test/riscv/sifive at rv64i_defconfig.yaml | 4 +---
test/strategy.py | 12 ++++++++++++
test/x86/pc at efi_defconfig.yaml | 4 +---
test/x86/q35 at efi_defconfig.yaml | 4 +---
test/x86/virtio at efi_defconfig.yaml | 4 +---
19 files changed, 30 insertions(+), 54 deletions(-)
diff --git a/test/arm/a15 at multi_v7_defconfig.yaml b/test/arm/a15 at multi_v7_defconfig.yaml
index 941e914ab2d6..dfa73fb3f5fd 100644
--- a/test/arm/a15 at multi_v7_defconfig.yaml
+++ b/test/arm/a15 at multi_v7_defconfig.yaml
@@ -2,7 +2,7 @@ targets:
main:
drivers:
QEMUDriver:
- qemu_bin: qemu
+ qemu_bin: qemu-system-arm
machine: vexpress-a15
cpu: cortex-a15
memory: 1024M
@@ -14,7 +14,5 @@ targets:
BareboxTestStrategy: {}
images:
barebox-vexpress-ca15.img: !template "$LG_BUILDDIR/images/barebox-vexpress-ca15.img"
-tools:
- qemu: /usr/bin/qemu-system-arm
imports:
- ../strategy.py
diff --git a/test/arm/a9 at multi_v7_defconfig.yaml b/test/arm/a9 at multi_v7_defconfig.yaml
index fefee153cf91..8e8220102c90 100644
--- a/test/arm/a9 at multi_v7_defconfig.yaml
+++ b/test/arm/a9 at multi_v7_defconfig.yaml
@@ -2,7 +2,7 @@ targets:
main:
drivers:
QEMUDriver:
- qemu_bin: qemu
+ qemu_bin: qemu-system-arm
machine: vexpress-a9
cpu: cortex-a9
memory: 1024M
@@ -14,7 +14,5 @@ targets:
BareboxTestStrategy: {}
images:
barebox-vexpress-ca9.img: !template "$LG_BUILDDIR/images/barebox-vexpress-ca9.img"
-tools:
- qemu: /usr/bin/qemu-system-arm
imports:
- ../strategy.py
diff --git a/test/arm/multi_v8_defconfig.yaml b/test/arm/multi_v8_defconfig.yaml
index 5da5dfeb7e27..d8f8ab5cbff3 100644
--- a/test/arm/multi_v8_defconfig.yaml
+++ b/test/arm/multi_v8_defconfig.yaml
@@ -2,7 +2,7 @@ targets:
main:
drivers:
QEMUDriver:
- qemu_bin: qemu
+ qemu_bin: qemu-system-aarch64
machine: virt,highmem=off
cpu: cortex-a57
memory: 1024M
@@ -18,7 +18,5 @@ targets:
tuxmake_arch: arm64
images:
barebox-dt-2nd.img: !template "$LG_BUILDDIR/images/barebox-dt-2nd.img"
-tools:
- qemu: /usr/bin/qemu-system-aarch64
imports:
- ../strategy.py
diff --git a/test/arm/qemu-raspi0 at multi_v7_defconfig.yaml b/test/arm/qemu-raspi0 at multi_v7_defconfig.yaml
index e6ba6410879f..0a9a727c641f 100644
--- a/test/arm/qemu-raspi0 at multi_v7_defconfig.yaml
+++ b/test/arm/qemu-raspi0 at multi_v7_defconfig.yaml
@@ -2,7 +2,7 @@ targets:
main:
drivers:
QEMUDriver:
- qemu_bin: qemu
+ qemu_bin: qemu-system-arm
machine: raspi0
cpu: arm1176
memory: 512M
@@ -14,7 +14,5 @@ targets:
BareboxTestStrategy: {}
images:
barebox-raspberry-pi.img: !template "$LG_BUILDDIR/images/barebox-raspberry-pi.img"
-tools:
- qemu: /usr/bin/qemu-system-arm
imports:
- ../strategy.py
diff --git a/test/arm/qemu-raspi1ap at multi_v7_defconfig.yaml b/test/arm/qemu-raspi1ap at multi_v7_defconfig.yaml
index 1abd6721cb65..0950481a63ea 100644
--- a/test/arm/qemu-raspi1ap at multi_v7_defconfig.yaml
+++ b/test/arm/qemu-raspi1ap at multi_v7_defconfig.yaml
@@ -2,7 +2,7 @@ targets:
main:
drivers:
QEMUDriver:
- qemu_bin: qemu
+ qemu_bin: qemu-system-arm
machine: raspi1ap
cpu: arm1176
memory: 512M
@@ -14,7 +14,5 @@ targets:
BareboxTestStrategy: {}
images:
barebox-raspberry-pi.img: !template "$LG_BUILDDIR/images/barebox-raspberry-pi.img"
-tools:
- qemu: /usr/bin/qemu-system-arm
imports:
- ../strategy.py
diff --git a/test/arm/qemu-raspi2b at multi_v7_defconfig.yaml b/test/arm/qemu-raspi2b at multi_v7_defconfig.yaml
index bd92343c80fc..72471c0a7f30 100644
--- a/test/arm/qemu-raspi2b at multi_v7_defconfig.yaml
+++ b/test/arm/qemu-raspi2b at multi_v7_defconfig.yaml
@@ -2,7 +2,7 @@ targets:
main:
drivers:
QEMUDriver:
- qemu_bin: qemu
+ qemu_bin: qemu-system-arm
machine: raspi2b
cpu: cortex-a7
memory: 1G
@@ -14,7 +14,5 @@ targets:
BareboxTestStrategy: {}
images:
barebox-raspberry-pi.img: !template "$LG_BUILDDIR/images/barebox-raspberry-pi.img"
-tools:
- qemu: /usr/bin/qemu-system-arm
imports:
- ../strategy.py
diff --git a/test/arm/qemu-sabrelite at multi_v7_defconfig.yaml b/test/arm/qemu-sabrelite at multi_v7_defconfig.yaml
index 948618a90f1e..77b7f9e58913 100644
--- a/test/arm/qemu-sabrelite at multi_v7_defconfig.yaml
+++ b/test/arm/qemu-sabrelite at multi_v7_defconfig.yaml
@@ -2,7 +2,7 @@ targets:
main:
drivers:
QEMUDriver:
- qemu_bin: qemu
+ qemu_bin: qemu-system-arm
machine: sabrelite
cpu: cortex-a9
memory: 1024M
@@ -16,7 +16,5 @@ targets:
images:
barebox-dt-2nd.img: !template "$LG_BUILDDIR/images/barebox-dt-2nd.img"
imx6q-sabreliste.dtb: !template "$LG_BUILDDIR/arch/arm/dts/imx6q-sabrelite.dtb"
-tools:
- qemu: /usr/bin/qemu-system-arm
imports:
- ../strategy.py
diff --git a/test/arm/virt at multi_v7_defconfig.yaml b/test/arm/virt at multi_v7_defconfig.yaml
index 66ecf20690d1..203f17bfc7f0 100644
--- a/test/arm/virt at multi_v7_defconfig.yaml
+++ b/test/arm/virt at multi_v7_defconfig.yaml
@@ -2,7 +2,7 @@ targets:
main:
drivers:
QEMUDriver:
- qemu_bin: qemu
+ qemu_bin: qemu-system-arm
machine: virt
cpu: cortex-a7
memory: 1024M
@@ -16,7 +16,5 @@ targets:
- virtio-mmio
images:
barebox-dt-2nd.img: !template "$LG_BUILDDIR/images/barebox-dt-2nd.img"
-tools:
- qemu: /usr/bin/qemu-system-arm
imports:
- ../strategy.py
diff --git a/test/mips/be at qemu-malta_defconfig.yaml b/test/mips/be at qemu-malta_defconfig.yaml
index 774023cd8451..5f438e4b900a 100644
--- a/test/mips/be at qemu-malta_defconfig.yaml
+++ b/test/mips/be at qemu-malta_defconfig.yaml
@@ -2,7 +2,7 @@ targets:
main:
drivers:
QEMUDriver:
- qemu_bin: qemu
+ qemu_bin: qemu-system-mips
machine: malta
cpu: M14Kc
memory: 256M
@@ -16,7 +16,5 @@ targets:
- virtio-pci
images:
barebox-qemu-malta.img: !template "$LG_BUILDDIR/images/barebox-qemu-malta.img"
-tools:
- qemu: /usr/bin/qemu-system-mips
imports:
- ../strategy.py
diff --git a/test/mips/le at qemu-malta_defconfig.yaml b/test/mips/le at qemu-malta_defconfig.yaml
index 8fc8c4dae925..ecf9484dcc1e 100644
--- a/test/mips/le at qemu-malta_defconfig.yaml
+++ b/test/mips/le at qemu-malta_defconfig.yaml
@@ -2,7 +2,7 @@ targets:
main:
drivers:
QEMUDriver:
- qemu_bin: qemu
+ qemu_bin: qemu-system-mipsel
machine: malta
cpu: M14Kc
memory: 256M
@@ -19,7 +19,5 @@ targets:
- CONFIG_CPU_LITTLE_ENDIAN=y
images:
barebox-qemu-malta.img.swapped: !template "$LG_BUILDDIR/images/barebox-qemu-malta.img.swapped"
-tools:
- qemu: /usr/bin/qemu-system-mipsel
imports:
- ../strategy.py
diff --git a/test/mips/qemu-malta64el_defconfig.yaml b/test/mips/qemu-malta64el_defconfig.yaml
index 22562d5b7a6a..bf8563e6623b 100644
--- a/test/mips/qemu-malta64el_defconfig.yaml
+++ b/test/mips/qemu-malta64el_defconfig.yaml
@@ -2,7 +2,7 @@ targets:
main:
drivers:
QEMUDriver:
- qemu_bin: qemu
+ qemu_bin: qemu-system-mips64el
machine: malta
cpu: 5KEf
memory: 256M
@@ -16,7 +16,5 @@ targets:
- virtio-pci
images:
barebox-qemu-malta.img.swapped: !template "$LG_BUILDDIR/images/barebox-qemu-malta.img.swapped"
-tools:
- qemu: /usr/bin/qemu-system-mips64el
imports:
- ../strategy.py
diff --git a/test/openrisc/generic_defconfig.yaml b/test/openrisc/generic_defconfig.yaml
index 0a2d4a7a18a0..93ba9586c439 100644
--- a/test/openrisc/generic_defconfig.yaml
+++ b/test/openrisc/generic_defconfig.yaml
@@ -2,7 +2,7 @@ targets:
main:
drivers:
QEMUDriver:
- qemu_bin: qemu
+ qemu_bin: qemu-system-or1k
machine: or1k-sim
cpu: or1200
memory: 256M
@@ -14,7 +14,5 @@ targets:
BareboxTestStrategy: {}
images:
barebox: !template "$LG_BUILDDIR/barebox"
-tools:
- qemu: /usr/bin/qemu-system-or1k
imports:
- ../strategy.py
diff --git a/test/riscv/qemu-virt64 at rv64i_defconfig.yaml b/test/riscv/qemu-virt64 at rv64i_defconfig.yaml
index ee121f153619..c920413a17bf 100644
--- a/test/riscv/qemu-virt64 at rv64i_defconfig.yaml
+++ b/test/riscv/qemu-virt64 at rv64i_defconfig.yaml
@@ -2,7 +2,7 @@ targets:
main:
drivers:
QEMUDriver:
- qemu_bin: qemu
+ qemu_bin: qemu-system-riscv64
machine: virt
cpu: rv64
memory: 256M
@@ -16,7 +16,5 @@ targets:
- virtio-mmio
images:
barebox-dt-2nd.img: !template "$LG_BUILDDIR/images/barebox-dt-2nd.img"
-tools:
- qemu: /usr/bin/qemu-system-riscv64
imports:
- ../strategy.py
diff --git a/test/riscv/qemu at virt32_defconfig.yaml b/test/riscv/qemu at virt32_defconfig.yaml
index 5c602635d4c5..da1bb5bddd3e 100644
--- a/test/riscv/qemu at virt32_defconfig.yaml
+++ b/test/riscv/qemu at virt32_defconfig.yaml
@@ -2,7 +2,7 @@ targets:
main:
drivers:
QEMUDriver:
- qemu_bin: qemu
+ qemu_bin: qemu-system-riscv32
machine: virt
cpu: rv32
memory: 256M
@@ -21,7 +21,5 @@ targets:
images:
barebox-dt-2nd.img: !template "$LG_BUILDDIR/images/barebox-dt-2nd.img"
opensbi-riscv32-generic-fw_dynamic.bin: !template "$LG_BUILDDIR/opensbi-riscv32-generic-fw_dynamic.bin"
-tools:
- qemu: /usr/bin/qemu-system-riscv32
imports:
- ../strategy.py
diff --git a/test/riscv/sifive at rv64i_defconfig.yaml b/test/riscv/sifive at rv64i_defconfig.yaml
index 303f96299766..ce4ea0e1e27e 100644
--- a/test/riscv/sifive at rv64i_defconfig.yaml
+++ b/test/riscv/sifive at rv64i_defconfig.yaml
@@ -2,7 +2,7 @@ targets:
main:
drivers:
QEMUDriver:
- qemu_bin: qemu
+ qemu_bin: qemu-system-riscv64
machine: sifive_u
cpu: sifive-u54
memory: 256M
@@ -14,7 +14,5 @@ targets:
BareboxTestStrategy: {}
images:
barebox-hifive-unleashed.img: !template "$LG_BUILDDIR/images/barebox-hifive-unleashed.img"
-tools:
- qemu: /usr/bin/qemu-system-riscv64
imports:
- ../strategy.py
diff --git a/test/strategy.py b/test/strategy.py
index 81650a7600bd..65cdae4fbf04 100644
--- a/test/strategy.py
+++ b/test/strategy.py
@@ -4,6 +4,7 @@ import attr
import pytest
import subprocess
import os
+import shutil
import sys
from labgrid import target_factory, step, driver
@@ -33,6 +34,7 @@ class BareboxTestStrategy(Strategy):
super().__attrs_post_init__()
if isinstance(self.console, driver.QEMUDriver):
self.qemu = self.console
+ self.patchtools()
@step(args=['status'])
def transition(self, status, *, step):
@@ -110,6 +112,16 @@ class BareboxTestStrategy(Strategy):
return cmd
+ def patchtools(self):
+ # https://github.com/labgrid-project/labgrid/commit/69fd553c6969526b609d0be6bb81f0c35f08d1d0
+ if self.qemu is None:
+ return
+
+ if 'tools' not in self.target.env.config.data:
+ self.target.env.config.data['tools'] = {}
+ self.target.env.config.data["tools"][self.qemu.qemu_bin] = \
+ shutil.which(self.qemu.qemu_bin)
+
def quote_cmd(cmd):
quoted = map(lambda s : s if s.find(" ") == -1 else "'" + s + "'", cmd)
return " ".join(quoted)
diff --git a/test/x86/pc at efi_defconfig.yaml b/test/x86/pc at efi_defconfig.yaml
index 280f5dcee9a6..e818409703f8 100644
--- a/test/x86/pc at efi_defconfig.yaml
+++ b/test/x86/pc at efi_defconfig.yaml
@@ -2,7 +2,7 @@ targets:
main:
drivers:
QEMUDriver:
- qemu_bin: qemu
+ qemu_bin: qemu-system-x86_64
machine: pc
cpu: Nehalem
memory: 1024M
@@ -25,7 +25,5 @@ targets:
images:
barebox.efi: !template "$LG_BUILDDIR/barebox.efi"
OVMF.fd: !template "$LG_BUILDDIR/OVMF.fd"
-tools:
- qemu: /usr/bin/qemu-system-x86_64
imports:
- ../strategy.py
diff --git a/test/x86/q35 at efi_defconfig.yaml b/test/x86/q35 at efi_defconfig.yaml
index dcb3f604c0ac..71c44e8cd45f 100644
--- a/test/x86/q35 at efi_defconfig.yaml
+++ b/test/x86/q35 at efi_defconfig.yaml
@@ -2,7 +2,7 @@ targets:
main:
drivers:
QEMUDriver:
- qemu_bin: qemu
+ qemu_bin: qemu-system-x86_64
machine: q35
cpu: Nehalem
memory: 1024M
@@ -25,7 +25,5 @@ targets:
images:
barebox.efi: !template "$LG_BUILDDIR/barebox.efi"
OVMF.fd: !template "$LG_BUILDDIR/OVMF.fd"
-tools:
- qemu: /usr/bin/qemu-system-x86_64
imports:
- ../strategy.py
diff --git a/test/x86/virtio at efi_defconfig.yaml b/test/x86/virtio at efi_defconfig.yaml
index 326fcbc68999..389089363872 100644
--- a/test/x86/virtio at efi_defconfig.yaml
+++ b/test/x86/virtio at efi_defconfig.yaml
@@ -2,7 +2,7 @@ targets:
main:
drivers:
QEMUDriver:
- qemu_bin: qemu
+ qemu_bin: qemu-system-x86_64
machine: pc
cpu: Nehalem
memory: 1024M
@@ -26,7 +26,5 @@ targets:
images:
barebox.efi: !template "$LG_BUILDDIR/barebox.efi"
OVMF.fd: !template "$LG_BUILDDIR/OVMF.fd"
-tools:
- qemu: /usr/bin/qemu-system-x86_64
imports:
- ../strategy.py
--
2.39.2
More information about the barebox
mailing list