From 432505d5636a0303dfe3db26db15055d98624dc8 Mon Sep 17 00:00:00 2001 From: Paul Eggleton Date: Thu, 3 Apr 2014 11:16:23 +0100 Subject: bitbake: toaster: fix help texts not showing for most tasks These were not being collected properly because we were explicitly excluding variables defined as functions from being stored in the database. We don't want these to be shown in the variables list, and in any case it makes sense for these to be stored elsewhere, so create a separate model to store these. Fixes [YOCTO #6050]. (Bitbake rev: 0d76a5461ce4bd554ff70a465064969e53edf0a4) Signed-off-by: Paul Eggleton Signed-off-by: Richard Purdie --- bitbake/lib/bb/ui/buildinfohelper.py | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) (limited to 'bitbake/lib/bb/ui') diff --git a/bitbake/lib/bb/ui/buildinfohelper.py b/bitbake/lib/bb/ui/buildinfohelper.py index f448c8448b..2a9e0981c7 100644 --- a/bitbake/lib/bb/ui/buildinfohelper.py +++ b/bitbake/lib/bb/ui/buildinfohelper.py @@ -25,7 +25,7 @@ import ast os.environ.setdefault("DJANGO_SETTINGS_MODULE", "toaster.toastermain.settings") import toaster.toastermain.settings as toaster_django_settings -from toaster.orm.models import Build, Task, Recipe, Layer_Version, Layer, Target, LogMessage +from toaster.orm.models import Build, Task, Recipe, Layer_Version, Layer, Target, LogMessage, HelpText from toaster.orm.models import Target_Image_File from toaster.orm.models import Variable, VariableHistory from toaster.orm.models import Package, Package_File, Target_Installed_Package, Target_File @@ -445,18 +445,23 @@ class ORMWrapper(object): assert isinstance(build_obj, Build) for k in vardump: + desc = vardump[k]['doc']; + if desc is None: + var_words = [word for word in k.split('_')] + root_var = "_".join([word for word in var_words if word.isupper()]) + if root_var and root_var != k and root_var in vardump: + desc = vardump[root_var]['doc'] + if desc is None: + desc = '' + if desc: + helptext_obj = HelpText.objects.create(build=build_obj, + area=HelpText.VARIABLE, + key=k, + text=desc) if not bool(vardump[k]['func']): value = vardump[k]['v']; if value is None: value = '' - desc = vardump[k]['doc']; - if desc is None: - var_words = [word for word in k.split('_')] - root_var = "_".join([word for word in var_words if word.isupper()]) - if root_var and root_var != k and root_var in vardump: - desc = vardump[root_var]['doc'] - if desc is None: - desc = '' variable_obj = Variable.objects.create( build = build_obj, variable_name = k, variable_value = value, -- cgit v1.2.3-54-g00ecf