On 02/05/2015 11:37, "Ed Bartosh" <[email protected]> wrote:
>Strip topdir from paths to config files in configvars view. >Got rid of specific filter cut_layer_path_prefix. The paths in the variables table are not looking as expected when I apply this. The paths to local.conf and bblayers.conf do show now as relative paths, but paths to files inside a layer become full paths (instead of relative paths). So instead of seeing meta/conf/bitbake.conf I see /home/<user>/<poky_dir>/meta/conf/bitbake.conf I've uploaded an screenshot here http://imgur.com/BhehRxF All paths in this table should be relative paths. Cheers Belén > >[YOCTO #7463] > >Signed-off-by: Ed Bartosh <[email protected]> >--- > .../lib/toaster/toastergui/templates/configvars.html | 4 ++-- > .../lib/toaster/toastergui/templatetags/projecttags.py | 17 >++++------------- > bitbake/lib/toaster/toastergui/views.py | 8 ++------ > 3 files changed, 8 insertions(+), 21 deletions(-) > >diff --git a/bitbake/lib/toaster/toastergui/templates/configvars.html >b/bitbake/lib/toaster/toastergui/templates/configvars.html >index 3e4c7e8..42d8fa7 100644 >--- a/bitbake/lib/toaster/toastergui/templates/configvars.html >+++ b/bitbake/lib/toaster/toastergui/templates/configvars.html >@@ -55,7 +55,7 @@ > <td class="variable_value"><a data-toggle="modal" >href="#variable-{{variable.pk}}">{{variable.variable_value|truncatechars:1 >53}}</a></td> > <td class="file"><a data-toggle="modal" >href="#variable-{{variable.pk}}"> > {% if variable.vhistory.all %} {% autoescape off %} >- {{variable.vhistory.all | filter_setin_files:file_filter >| cut_layer_path_prefix:layer_names}} >+ {{variable.vhistory.all | filter_setin_files:file_filter >| cut_path_prefix:topdir}} > {% endautoescape %} {% endif %} > </a></td> > <td class="description"> >@@ -115,7 +115,7 @@ > <tbody> > {% for vh in variable.vhistory.all %} > <tr> >- ><td>{{forloop.counter}}</td><td>{{vh.file_name|cut_layer_path_prefix:layer >_names}}</td><td>{{vh.operation}}</td><td>{{vh.line_number}}</td> >+ ><td>{{forloop.counter}}</td><td>{{vh.file_name|cut_path_prefix:topdir}}</t >d><td>{{vh.operation}}</td><td>{{vh.line_number}}</td> > </tr> > {%endfor%} > </tbody> >diff --git a/bitbake/lib/toaster/toastergui/templatetags/projecttags.py >b/bitbake/lib/toaster/toastergui/templatetags/projecttags.py >index 54700e3..4c3bffd 100644 >--- a/bitbake/lib/toaster/toastergui/templatetags/projecttags.py >+++ b/bitbake/lib/toaster/toastergui/templatetags/projecttags.py >@@ -20,6 +20,7 @@ > # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. > > from datetime import datetime, timedelta >+from os.path import relpath > import re > from django import template > from django.utils import timezone >@@ -313,16 +314,6 @@ def is_shaid(text): > return False > > @register.filter >-def cut_layer_path_prefix(fullpath,layer_names): >- ### if some part of the full local path to a layer matches >- ### an entry in layer_names (sorted desc), return the layer >- ### name relative path. >- for lname in layer_names: >- # import rpdb; rpdb.set_trace() >- # only try layer names that are non-trivial to avoid false >matches >- if len(lname) >= 4: >- # match layer name with as a subdir / or for remote layers /_ >- if re.search('/' + lname, fullpath) or re.search('/_' + >lname, fullpath): >- parts = re.split(lname, fullpath, 1) >- return lname + parts[1] >- return fullpath >+def cut_path_prefix(fullpath, topdir): >+ """Cut topdir from the fullpath.""" >+ return relpath(fullpath, topdir) if fullpath.startswith(topdir) else >fullpath >diff --git a/bitbake/lib/toaster/toastergui/views.py >b/bitbake/lib/toaster/toastergui/views.py >index b5c4d87..e7110c8 100755 >--- a/bitbake/lib/toaster/toastergui/views.py >+++ b/bitbake/lib/toaster/toastergui/views.py >@@ -39,6 +39,7 @@ from datetime import timedelta, datetime, date > from django.utils import formats > from toastergui.templatetags.projecttags import json as jsonfilter > import json >+from os.path import dirname > > # all new sessions should come through the landing page; > # determine in which mode we are running in, and redirect appropriately >@@ -1326,11 +1327,6 @@ def configvars(request, build_id): > > variables = _build_page_range(Paginator(queryset, pagesize), >request.GET.get('page', 1)) > >- layers = >Layer.objects.filter(layer_version_layer__projectlayer__project__build=bui >ld_id).order_by("-name") >- layer_names = map(lambda layer : layer.name, layers) >- # special case for meta built-in layer >- layer_names.append('meta') >- > # show all matching files (not just the last one) > file_filter= search_term + ":" > if filter_string.find('/conf/') > 0: >@@ -1353,7 +1349,7 @@ def configvars(request, build_id): > 'total_count':queryset_with_search.count(), > 'default_orderby' : 'variable_name:+', > 'search_term':search_term, >- 'layer_names' : layer_names, >+ 'topdir': dirname(build_dir), > # Specifies the display of columns for the table, appearance >in "Edit columns" box, toggling default show/hide, and specifying filters >for columns > 'tablecols' : [ > {'name': 'Variable', >-- >2.1.4 > >-- >_______________________________________________ >toaster mailing list >[email protected] >https://lists.yoctoproject.org/listinfo/toaster -- _______________________________________________ toaster mailing list [email protected] https://lists.yoctoproject.org/listinfo/toaster
