[yocto] adding meta-virtualization gives bitbake error

Bruce Ashfield bruce.ashfield at windriver.com
Fri Jan 26 05:05:38 PST 2018


On 2018-01-26 6:52 AM, Jakob Hasse wrote:
> Hello,
> 
> we're trying to include meta-virtualization in to our project, in 
> particular, we want to use docker. However, as soon as I include the 
> layer in to our project, bitbake complains:
> 
> bitbake -C compile core-image-base
> NOTE: Started PRServer with DBfile: 
> /home/jakob/workspace/beerstation/cache/prserv.sqlite3, IP: 127.0.0.1, 
> PORT: 46136, PID: 5713
> ERROR: Execution of event handler 'virt_bbappend_distrocheck' failed
> Traceback (most recent call last):
>    File 
> "/usr/local/dey-2.2/sources/meta-virtualization/classes/sanity-meta-virt.bbclass", 
> line 4, in virt_bbappend_distrocheck(e=<bb.event.SanityCheck object at 
> 0x7f945e05d3c8>):
>       python virt_bbappend_distrocheck() {
>      >    skip_check = e.data.getVar('SKIP_META_VIRT_SANITY_CHECK') == "1"
>           if 'virtualization' not in 
> e.data.getVar('DISTRO_FEATURES').split() and not skip_check:
> TypeError: getVar() missing 1 required positional argument: 'expand'
> 
> ERROR: Command execution failed: Traceback (most recent call last):
>    File "/usr/local/dey-2.2/sources/poky/bitbake/lib/bb/command.py", 
> line 101, in runAsyncCommand
>      self.cooker.updateCache()
>    File "/usr/local/dey-2.2/sources/poky/bitbake/lib/bb/cooker.py", line 
> 1627, in updateCache
>      bb.event.fire(bb.event.SanityCheck(False), 
> self.databuilder.mcdata[mc])
>    File "/usr/local/dey-2.2/sources/poky/bitbake/lib/bb/event.py", line 
> 201, in fire
>      fire_class_handlers(event, d)
>    File "/usr/local/dey-2.2/sources/poky/bitbake/lib/bb/event.py", line 
> 124, in fire_class_handlers
>      execute_handler(name, handler, event, d)
>    File "/usr/local/dey-2.2/sources/poky/bitbake/lib/bb/event.py", line 
> 96, in execute_handler
>      ret = handler(event)
>    File 
> "/usr/local/dey-2.2/sources/meta-virtualization/classes/sanity-meta-virt.bbclass", 
> line 4, in virt_bbappend_distrocheck
>      skip_check = e.data.getVar('SKIP_META_VIRT_SANITY_CHECK') == "1"
> TypeError: getVar() missing 1 required positional argument: 'expand'
> 
> 
> Summary: There were 2 ERROR messages shown, returning a non-zero exit code.
> 
> 
> Do we need to checkout a specific branch or so (though I can't find one 
> right now)?
> Do we need to change some kernel configuration? I added all 
> virtualization drivers in the "drivers" section of the kernel config 
> already.
> 
> We're using DIGI embedded Yocto 2.2 (poky).
> 

You need to check out the matching branch to the release you've
been given as an enablement, since some of the APIs, etc, have
changed and the meta-virt sanity check that was added later than
the 2.2 release isn't working.

2.2 was the 'morty' release, and meta-virt does have a branch for
that:

----------
% git whatchanged origin/morty

commit eb6b5129561eda9ea1f47e85ab9ed9e5a6b8f64c
Author: Fabio Berton <fabio.berton at ossystems.com.br>
Date:   Tue Nov 28 09:15:59 2017 -0200

     python-*: use https for pypi URLs

     Several of the recipes here were using http URLs for source hosted on
     pypi - pypi apparently no longer supports http so switch to https
     instead.

     Apply this commit [1] to morty branch.
     [1] 
https://www.mail-archive.com/meta-virtualization@yoctoproject.org/msg02821.html

     Signed-off-by: Fabio Berton <fabio.berton at ossystems.com.br>
     Signed-off-by: Bruce Ashfield <bruce.ashfield at windriver.com>
---------

So check out the morty branch and you'll have better luck.

Bruce


> Thanks and all the best,
> Jakob
> 




More information about the yocto mailing list