Age | Commit message (Collapse) | Author | Files |
|
Defined variable 'out' to fix this exception:
UnboundLocalError: local variable 'out' referenced before assignment
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
|
|
Added search paths to the debug message to make it
easier to see where the native command is searched.
[YOCTO #11017]
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
|
|
Switched from using wic-tools recipe sysroot to using
image sysroot in wic script. This way is more logical
and consistent with the way wic uses other artifacts.
[YOCTO #11017]
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
|
|
Currently there is no way to specify a dependency on native
tools for wic without modifying wic-tools recipe. Obvious
way to make it more flexible is to use image sysroot and
wic-tools together to find an executable.
Modified run_native_cmd to use image and wic-tools sysroots
to find native executable.
[YOCTO #11017]
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
|
|
Made PluginMeta to populate global PLUGINS dictionary that
is accessed by PluginMgr. This should make the code more
understandable as PluginMgr don't need to get data directly
from PlugnMeta attribute.
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
|
|
As PluginMgr class contains only one method it's
better to move it to pluginbase to have all plugin
related APIs in one module.
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
|
|
Store results of PluginMgr.get_plugins to avoid
loading plugins more than once.
This should speed up finding plugins.
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
|
|
Call methods directly instead of getting them with
get_plugin_methods and then calling.
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
|
|
Throw WicError if do_create method of imager plugin is
not implemented.
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
|
|
Used more readable syntax to specify metaclass for
the base plugin classes.
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
|
|
Removed all private methods and complicated logic.
Put all code to get plugins into get_plugins method.
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
|
|
Simplified the implementation of get_plugin_methods:
- get rid of looping over the dicrtionary, used access by key instead
- get rid of filling a dictionary that passed as a parameter
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
|
|
Used get_plugins('source') instead of get_source_plugins to
unify and simplify API to get plugins.
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
|
|
Instead of making a singleton object of PluginMgr class
it's simpler to use PluginMgr class directly as any class
is a singleton.
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
|
|
Removed unused exceptions from error.py
Moved definition of WicError to lib/wic/__init__.py
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
|
|
There is no need to raise special exceptions. Raising
WicError should be enough.
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
|
|
Replaced sys.exit with raising WicError in wic plugins.
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
|
|
Replaced sys.exit with raising WicError in the core wic modules.
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
|
|
Replaced sys.exit with raising WicError in main module.
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
|
|
Moved from lib/wic/utils/ to lib/wic as this is a core module.
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
|
|
Removed custom logger module msger as it's replaced
by wic logger.
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
|
|
Replaced msger with wic logger in wic source plugins.
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
|
|
Replaced msger with wic logger in the direct plugin.
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
|
|
Replaced msger with wic logger in the core wic modules.
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
|
|
Set up wic logger using standerd logging module.
This is going to replace custom msger module.
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
|
|
|
|
Enabling building the Intel Memory Protection Extension library for x86.
Leave this disabled in musl builds as it doesn't build there yet.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Other linux-yocto recipes have the virtio fragment added to qemu* targets.
If you plan on booting a kernel with qemu, we need these options .. or
things like the virtual disk won't be present.
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The 4.10 kernel has been released, so we can bump our libc-headers
to match.
We also drop the 4.9 headers, since we only want one variant in the
tree.
Tested against glibc and muslc core-image* variants.
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The 4.10 kernel has been released, so we introduce the linux-yocto
variant.
This version supercedes the 4.4 and 4.8 versions in the tree, leaving us
with 4.1 (LTSI), 4.9 (LTS) and 4.10 (most recent) as the three active
versions.
Build tested against all qemu variants, core-image-kernel-dev + sato,
with musl and glibc as the C libraries.
Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
In the previous lock removal patch I mixed up the two tasks and broke sdk
testing. Fix this by removing locks for both sdk and extsdk.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
auto.conf is included before local.conf. Instead of keeping them separate, merge
them into the extsdk local.conf. As it happens we can do this quite neatly, more
neatly than the current code IMO and it makes the configuration easier for the end
user to understand too.
This means auto.conf is then available for the testsdk code to use for testing
purposes.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
We need to appent to SSTATE_MIRRORS in case other areas of code are also
setting the variable.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
We should be able to test sdks in parallel. As far as I can tell, this
restriction crept in for no good reason, based on locks that testimage used
for the non-qemu case.
Therefore remove the lock and allow sdks to test in parallel.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
test_extend_autotools_recipe_creation are present
test_extend_autotools_recipe_creation needs libxml2 so ensure this is
installed/present as it may not be in the minimal eSDK case.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Forcing the use of "\n" in mirror variables is pointless, we can just require that
there are pairs of values. With the bitbake restriction relaxed, we can relax
the sanity check too.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The local.conf file can get overritten and changed by the SDK so (ab)use
auto.conf instead to ensure our configuration tweaks get applied.
Also ensure we append to any other configured SSTATE_MIRROR variable
that already exists.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
do_locked_sigs() uses ${D} to hold a file as input to the sstate staging code.
Generally this isn't a problem as it happens after packaging, but sometimes (if
the recipe is rebuild, perhaps) do_package() will see the file inside ${D} and
fail because there is an uninstalled file.
Solve this by using a directory under ${WORKDIR} so it can't be packaged.
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
We're on the margin of the 4GB size limit for certain image types with
this configuration. This is a temporary workaround to avoid total
failures whilst we figure out better ways to save space. On such a
large image, the standard 1.3 is large and 1.2 is reasonable.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Skipping the tests if a toolchain wasn't installed out of the box (for example,
a minimal eSDK) doesn't make sense as the first thing the tests should do is
install a toolchain.
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Use the finally: block to always to cleanup.
Now that the test harness in testsdk.bbclass has monkey-patched
CalledProcessException to display the output we don't need to do that in the
test case.
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Out of the box subprocess.CalledProcessError.__str__() just displays the command
and exit code, which isn't very useful for debugging.
Add a function to oeqa.utils.subprocesstweak to monkey-patch __str__() so that
it can also display the value of stdout and stderr.
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
These methods are class not instance methods, so the argument should be cls not
self.
Also don't put variables into cls that we don't need there.
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
Using httpServer from python for sharing sstate is known to be buggy, it can't
cope with the number/type of requests coming from bitbake and quietly fails
to share files.
This causes intermittent build failures which are hard to debug. We can
use a file:// url for the sstate mirror instead, removing the need for
the http server.
The sdk-update test is simply dropped since the SDK is never published
to this location and hence it would never have any update. Its equiavalent
to pointing at an empty web server. There is a better eSDK update test in
testsdk so rather than improve this one, lets drop it and concentrate on
the one there.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
SDKs
If you build a minimal eSDK currently, you don't build meta-extesdk-toolchain
even if you will have built most of its dependencies. This means when you try
and install a toolchain into the eSDK, it fails, breaking our automated testing
of the eSDK.
Therefore add the dependency unconditionally even when a minimal eSDK is being
built and allow the automated testing to work.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
running
This is admitted a bit of a hack but it does allow a number of significant sdk
tests to run successfully and hence improves testing of eSDK which is good.
I'm therefore proposing we do this until we come up with a better solution
since the current lack of testing is worrying and would have caught other issues
had it been present.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
This removes the need for some of the ugly decode calls with hardcoded
locales.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
The directory list of sdk tests to run can vary so this code effectively selects
a random set of SDK tests to run in the eSDK. We want to attemp all the SDK tests
so remove the element selection.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
After running sdk-install we need to ensure that the standalone sysroots are
updated as done when the eSDK is originally built. Add such a call so this
happens automatically and the envrionment scripts in the SDK work correctly
after updates.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
|
When using a minimal eSDK, testing currently fails as the sdk isn't
populated. We therefore setup the eSDK under test to point at local
sstate and execute a command to ensure the toolchain is populated
since most of the tests depend on this being present.
At the same time, add in a link to DL_DIR through own-mirrors so
that tests which fetch source (e.g. the kernel module one) can
use the local stash. This cuts test execution of the kernel module
test from 2000s to 120s.
We did try using DL_DIR directly but that causes uninative issues
requiring other workarounds so own-mirrors is neater.
Together these fixes unbreak eSDK testing on the autobuilder.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|