mirror of
git://git.yoctoproject.org/layerindex-web.git
synced 2025-07-19 12:39:02 +02:00
update_layer.py: checkout dep layers as well
We have never been checking out dependent layers at the same release/branch. With the introduction of 'addpylib', this became obvious due to parsing errors. Ensure that known LayerDependency objects are checked out at the expected branch/release. Since openembedded-core has already been handled elsewhere, we skip it. [YOCTO #15236] Signed-off-by: Tim Orling <tim.orling@konsulko.com>
This commit is contained in:
parent
b3bfbd1479
commit
94d8f3f20e
|
@ -293,7 +293,7 @@ def main():
|
|||
|
||||
utils.setup_django()
|
||||
import settings
|
||||
from layerindex.models import LayerItem, LayerBranch, Recipe, RecipeFileDependency, Machine, Distro, BBAppend, BBClass, IncFile
|
||||
from layerindex.models import LayerItem, LayerBranch, LayerDependency, Recipe, RecipeFileDependency, Machine, Distro, BBAppend, BBClass, IncFile
|
||||
from django.db import transaction
|
||||
|
||||
logger.setLevel(options.loglevel)
|
||||
|
@ -374,10 +374,25 @@ def main():
|
|||
layerappends = BBAppend.objects.filter(layerbranch=layerbranch)
|
||||
layerclasses = BBClass.objects.filter(layerbranch=layerbranch)
|
||||
layerincfiles = IncFile.objects.filter(layerbranch=layerbranch)
|
||||
layerdependencies = LayerDependency.objects.filter(layerbranch=layerbranch)
|
||||
if layerbranch.vcs_last_rev != topcommit.hexsha or options.reload or options.initial:
|
||||
# Check out appropriate branch
|
||||
if not options.nocheckout:
|
||||
utils.checkout_layer_branch(layerbranch, repodir, logger=logger)
|
||||
# Ensure dependent layers are checked out at the same release
|
||||
for layerdependency in layerdependencies:
|
||||
logger.debug("layerdependency: %s" % layerdependency)
|
||||
try:
|
||||
# bitbake and openembedded-core are handled elsewhere
|
||||
if layerdependency.dependency == 'openembedded-core':
|
||||
continue
|
||||
dep_layer = utils.get_layer(layerdependency.dependency)
|
||||
dep_layerbranch = dep_layer.get_layerbranch(options.branch)
|
||||
dep_urldir = dep_layer.get_fetch_dir()
|
||||
dep_repodir = os.path.join(fetchdir, dep_urldir)
|
||||
utils.checkout_layer_branch(dep_layerbranch, dep_repodir, logger=logger)
|
||||
except Exception as e:
|
||||
logger.warn("Unable to checkout dependent layer %s - %s" % (layerdependency.dependency, str(e)))
|
||||
|
||||
logger.info("Collecting data for layer %s on branch %s" % (layer.name, branchdesc))
|
||||
try:
|
||||
|
|
Loading…
Reference in New Issue
Block a user