mirror of
https://git.yoctoproject.org/poky
synced 2026-05-31 12:49:46 +00:00
testimage.bbclass: add support for passing runqemu params
This is particularly useful when setting up GL tests. (From OE-Core rev: 167a46775059b782c6f82ce8c5a47b27262e95d4) Signed-off-by: Alexander Kanavin <alex.kanavin@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
7ea988887c
commit
f7718fa8ae
@@ -32,6 +32,7 @@ TESTIMAGE_AUTO ??= "0"
|
|||||||
# Booting is handled by this class, and it's not a test in itself.
|
# Booting is handled by this class, and it's not a test in itself.
|
||||||
# TEST_QEMUBOOT_TIMEOUT can be used to set the maximum time in seconds the launch code will wait for the login prompt.
|
# TEST_QEMUBOOT_TIMEOUT can be used to set the maximum time in seconds the launch code will wait for the login prompt.
|
||||||
# TEST_QEMUPARAMS can be used to pass extra parameters to qemu, e.g. "-m 1024" for setting the amount of ram to 1 GB.
|
# TEST_QEMUPARAMS can be used to pass extra parameters to qemu, e.g. "-m 1024" for setting the amount of ram to 1 GB.
|
||||||
|
# TEST_RUNQEMUPARAMS can be used to pass extra parameters to runqemu, e.g. "gl" to enable OpenGL acceleration.
|
||||||
|
|
||||||
TEST_LOG_DIR ?= "${WORKDIR}/testimage"
|
TEST_LOG_DIR ?= "${WORKDIR}/testimage"
|
||||||
|
|
||||||
@@ -65,6 +66,7 @@ TEST_SUITES ?= "${DEFAULT_TEST_SUITES}"
|
|||||||
TEST_QEMUBOOT_TIMEOUT ?= "1000"
|
TEST_QEMUBOOT_TIMEOUT ?= "1000"
|
||||||
TEST_TARGET ?= "qemu"
|
TEST_TARGET ?= "qemu"
|
||||||
TEST_QEMUPARAMS ?= ""
|
TEST_QEMUPARAMS ?= ""
|
||||||
|
TEST_RUNQEMUPARAMS ?= ""
|
||||||
|
|
||||||
TESTIMAGEDEPENDS = ""
|
TESTIMAGEDEPENDS = ""
|
||||||
TESTIMAGEDEPENDS_append_qemuall = " qemu-native:do_populate_sysroot qemu-helper-native:do_populate_sysroot qemu-helper-native:do_addto_recipe_sysroot"
|
TESTIMAGEDEPENDS_append_qemuall = " qemu-native:do_populate_sysroot qemu-helper-native:do_populate_sysroot qemu-helper-native:do_addto_recipe_sysroot"
|
||||||
@@ -294,7 +296,7 @@ def testimage_main(d):
|
|||||||
try:
|
try:
|
||||||
# We need to check if runqemu ends unexpectedly
|
# We need to check if runqemu ends unexpectedly
|
||||||
# or if the worker send us a SIGTERM
|
# or if the worker send us a SIGTERM
|
||||||
tc.target.start(params=d.getVar("TEST_QEMUPARAMS"))
|
tc.target.start(params=d.getVar("TEST_QEMUPARAMS"), runqemuparams=d.getVar("TEST_RUNQEMUPARAMS"))
|
||||||
results = tc.runTests()
|
results = tc.runTests()
|
||||||
except (RuntimeError, BlockingIOError) as err:
|
except (RuntimeError, BlockingIOError) as err:
|
||||||
if isinstance(err, RuntimeError):
|
if isinstance(err, RuntimeError):
|
||||||
|
|||||||
@@ -33,11 +33,11 @@ class OEQemuTarget(OESSHTarget):
|
|||||||
use_kvm=kvm, use_slirp=slirp, dump_dir=dump_dir,
|
use_kvm=kvm, use_slirp=slirp, dump_dir=dump_dir,
|
||||||
dump_host_cmds=dump_host_cmds, logger=logger)
|
dump_host_cmds=dump_host_cmds, logger=logger)
|
||||||
|
|
||||||
def start(self, params=None, extra_bootparams=None):
|
def start(self, params=None, extra_bootparams=None, runqemuparams=''):
|
||||||
if self.use_slirp and not self.server_ip:
|
if self.use_slirp and not self.server_ip:
|
||||||
self.logger.error("Could not start qemu with slirp without server ip - provide 'TEST_SERVER_IP'")
|
self.logger.error("Could not start qemu with slirp without server ip - provide 'TEST_SERVER_IP'")
|
||||||
raise RuntimeError("FAILED to start qemu - check the task log and the boot log")
|
raise RuntimeError("FAILED to start qemu - check the task log and the boot log")
|
||||||
if self.runner.start(params, extra_bootparams=extra_bootparams):
|
if self.runner.start(params, extra_bootparams=extra_bootparams, runqemuparams=runqemuparams):
|
||||||
self.ip = self.runner.ip
|
self.ip = self.runner.ip
|
||||||
if self.use_slirp:
|
if self.use_slirp:
|
||||||
target_ip_port = self.runner.ip.split(':')
|
target_ip_port = self.runner.ip.split(':')
|
||||||
|
|||||||
Reference in New Issue
Block a user