
The layer index module is expected to be used by various parts of the system in order to access a layerindex-web (such as layers.openembedded.org) and perform basic processing on the information, such as dependency scanning. Along with the layerindex implementation are associated tests. The tests properly honor BB_SKIP_NETTESTS='yes' to prevent test failures. Tests Implemented: - Branch, LayerItem, LayerBranch, LayerDependency, Recipe, Machine and Distro objects - LayerIndex setup using the layers.openembedded.org restapi - LayerIndex storing and retrieving from a file - LayerIndex verify dependency resolution ordering - LayerIndex setup using simulated cooker data (Bitbake rev: fd0ee6c10dbb5592731e56f4c592fe687682a3e6) Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
903 B
The layerindexlib module is designed to permit programs to work directly with layer index information. (See layers.openembedded.org...)
The layerindexlib module includes a plugin interface that is used to extend the basic functionality. There are two primary plugins available: restapi and cooker.
The restapi plugin works with a web based REST Api compatible with the layerindex-web project, as well as the ability to store and retried a the information for one or more files on the disk.
The cooker plugin works by reading the information from the current build project and processing it as if it were a layer index.
TODO:
init.py: Implement local on-disk caching (using the rest api store/load) Implement layer index style query operations on a combined index
common.py: Stop network access if BB_NO_NETWORK or allowed hosts is restricted
cooker.py: Cooker - Implement recipe parsing