bitbake: toaster: mark dependency packages

We need to mark the package entries that are
created solely for dependency tracking purposes.

In order to avoid altering the database schema,
we mark the dependency targets with size = -1, since
this is not a valid size anyway and makes for easy
filtering.

	[YOCTO #5803]

(Bitbake rev: d11ed273dd6c520b16e9ccfe79476f340006a55d)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Alexandru DAMIAN 2014-02-10 14:26:12 +00:00 committed by Richard Purdie
parent 3d0bb418a0
commit 6fc246232a
2 changed files with 7 additions and 3 deletions

View File

@ -239,7 +239,11 @@ class ORMWrapper(object):
size = package_info['FILES_INFO'][path] )
def _po_byname(p):
return Package.objects.get_or_create(build = build_obj, name = p)[0]
pkg, created = Package.objects.get_or_create(build = build_obj, name = p)
if created:
pkg.size = -1
pkg.save()
return pkg
# save soft dependency information
if 'RDEPENDS' in package_info and package_info['RDEPENDS']:

View File

@ -366,7 +366,7 @@ def recipe(request, build_id, recipe_id):
layer_version = Layer_Version.objects.filter(pk=object.layer_version_id)[0]
layer = Layer.objects.filter(pk=layer_version.layer_id)[0]
tasks = Task.objects.filter(recipe_id = recipe_id).filter(build_id = build_id)
packages = Package.objects.filter(recipe_id = recipe_id).filter(build_id = build_id)
packages = Package.objects.filter(recipe_id = recipe_id).filter(build_id = build_id).filter(size__gte=0)
context = {
'build' : Build.objects.filter(pk=build_id)[0],
@ -725,7 +725,7 @@ def bpackage(request, build_id):
if retval:
return _redirect_parameters( 'packages', request.GET, mandatory_parameters, build_id = build_id)
(filter_string, search_term, ordering_string) = _search_tuple(request, Package)
queryset = Package.objects.filter(build = build_id)
queryset = Package.objects.filter(build = build_id).filter(size__gte=0)
queryset = _get_queryset(Package, queryset, filter_string, search_term, ordering_string)
packages = _build_page_range(Paginator(queryset, request.GET.get('count', 100)),request.GET.get('page', 1))