bitbake: toaster: show suffix for image files and basename for artifact files

The build dashboard doesn't show image and artifact files correctly,
as it shows the full filename for images and the filename plus
path relative to DEPLOY_DIR for artifacts.

Instead, show just the suffix for image files, and the basename
for artifact files.

(Bitbake rev: 8084dcdc283b4dc170f066c202f89d56ce1abbef)

Signed-off-by: Elliot Smith <elliot.smith@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Elliot Smith 2016-02-23 12:17:04 +00:00 committed by Richard Purdie
parent 88b56603ce
commit 98d462c8e6
3 changed files with 25 additions and 12 deletions

View File

@ -550,6 +550,8 @@ class BuildArtifact(models.Model):
return self.file_name
def get_basename(self):
return os.path.basename(self.file_name)
def is_available(self):
return self.build.buildrequest.environment.has_artifact(self.file_name)
@ -588,6 +590,12 @@ class Target_Image_File(models.Model):
file_name = models.FilePathField(max_length=254)
file_size = models.IntegerField()
@property
def suffix(self):
filename, suffix = os.path.splitext(self.file_name)
suffix = suffix.lstrip('.')
return suffix
class Target_File(models.Model):
ITYPE_REGULAR = 1
ITYPE_DIRECTORY = 2

View File

@ -110,7 +110,7 @@
</p>
</div>
</div>
{% else %}
{% else %}
<dt>
<i class="icon-question-sign get-help" title="The location in disk of the license manifest, a document listing all packages installed in your image and their licenses"></i>
@ -125,18 +125,18 @@
</dt>
<dd>
<ul>
{% for i in target.imageFiles %}
{% if build.project %}
<li><a href="{% url 'build_artifact' build.pk 'imagefile' i.id %}">{{i.path}}</a>
{% else %}
<li>{{i.path}}
{% endif %}
({{i.size|filtered_filesizeformat}})</li>
{% endfor %}
{% for i in target.imageFiles %}
<li>
<a href="{% url 'build_artifact' build.pk 'imagefile' i.id %}">
{{i.suffix}}
</a>
&nbsp;({{i.size|filtered_filesizeformat}})
</li>
{% endfor %}
</ul>
</dd>
</dl>
{% endif %}
{% endif %}
</div>
{% endif %}
{% endfor %}
@ -160,7 +160,7 @@
<dd><div>
{% for ba in build.buildartifact_set.all|dictsort:"file_name" %}
<a href="{%url 'build_artifact' build.id 'buildartifact' ba.id %}">
{{ba.get_local_file_name}}
{{ba.get_basename}}
</a>
({{ba.file_size|filtered_filesizeformat}}) <br/>

View File

@ -480,7 +480,12 @@ def builddashboard( request, build_id ):
if ( ndx < 0 ):
ndx = 0;
f = i.file_name[ ndx + 1: ]
imageFiles.append({ 'id': i.id, 'path': f, 'size' : i.file_size })
imageFiles.append({
'id': i.id,
'path': f,
'size': i.file_size,
'suffix': i.suffix
})
if t.is_image and (len(imageFiles) <= 0 or len(t.license_manifest_path) <= 0):
targetHasNoImages = True
elem[ 'imageFiles' ] = imageFiles