mirror of
https://git.yoctoproject.org/poky
synced 2026-05-07 16:59:22 +00:00
oeqa: allow customizing image used by runqemu()
runqemu() takes all parameters for the virtual machine from the
variables of the given recipe. By allowing the caller to provide a
hash with variables that get applied locally, the caller gets more
control.
Here's the intended usage:
<prepare internal-image in self.resultdir>
overrides = {
'DEPLOY_DIR_IMAGE': self.resultdir,
'IMAGE_LINK_NAME': 'internal-image-%s' % self.image_arch,
}
with runqemu('refkit-installer-image', ssh=False,
overrides=overrides) as qemu:
....
This can be used to replace the image completely with something else
or to copy it before allowing runqemu() to write into it.
(From OE-Core rev: 4c6ba32abd6b9de33f4b8a0b87e8a56432ed7825)
Signed-off-by: Patrick Ohly <patrick.ohly@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
41b67f1176
commit
9a94208600
@@ -225,7 +225,7 @@ def create_temp_layer(templayerdir, templayername, priority=999, recipepathspec=
|
||||
|
||||
|
||||
@contextlib.contextmanager
|
||||
def runqemu(pn, ssh=True, runqemuparams='', image_fstype=None, launch_cmd=None, qemuparams=None):
|
||||
def runqemu(pn, ssh=True, runqemuparams='', image_fstype=None, launch_cmd=None, qemuparams=None, overrides={}):
|
||||
"""
|
||||
launch_cmd means directly run the command, don't need set rootfs or env vars.
|
||||
"""
|
||||
@@ -247,6 +247,8 @@ def runqemu(pn, ssh=True, runqemuparams='', image_fstype=None, launch_cmd=None,
|
||||
tinfoil.config_data.setVar("FIND_ROOTFS", '1')
|
||||
|
||||
recipedata = tinfoil.parse_recipe(pn)
|
||||
for key, value in overrides.items():
|
||||
recipedata.setVar(key, value)
|
||||
|
||||
# The QemuRunner log is saved out, but we need to ensure it is at the right
|
||||
# log level (and then ensure that since it's a child of the BitBake logger,
|
||||
|
||||
Reference in New Issue
Block a user