summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/toaster/toastergui/templates
diff options
context:
space:
mode:
authorElliot Smith <elliot.smith@intel.com>2016-07-12 15:54:48 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2016-07-19 08:56:51 +0100
commit00c2c0be5ead435601a21a676401674b7045f6f0 (patch)
tree32295fe980f44dfae3353ed7bf58691aee356ecb /bitbake/lib/toaster/toastergui/templates
parentf39ae146eadf92f650ed6340158e780a65d483b1 (diff)
downloadpoky-00c2c0be5ead435601a21a676401674b7045f6f0.tar.gz
bitbake: toaster: improve scan for SDK artifacts
SDK artifacts were previously picked up by toaster.bbclass and notified to buildinfohelper (via toasterui). The artifacts were then added to the Build object, so that it wasn't clear which artifact went with which target; we were also unable to attach SDK artifacts to a Build if they had already been attached to a previous build. Now, toaster.bbclass just notifies the TOOLCHAIN_OUTPUTNAME when a populate_sdk* target completes. The scan is moved to buildinfohelper, where we search the SDK deploy directory for files matching TOOLCHAIN_OUTPUTNAME and attach them to targets (not builds). If an SDK file is not produced by a target, we now look for a similar, previously-run target which did produce artifacts. If there is one, we clone the SDK artifacts from that target onto the current one. This all means that we can show SDK artifacts by target, and should always get artifacts associated with a target, regardless of whether it really build them. This requires an additional model, TargetSDKFile, which tracks the size and path of SDK artifact files with respect to Target objects. [YOCTO #8556] (Bitbake rev: 5e650c611605507e1e0d1588cd5eb6535c2d34fc) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: bavery <brian.avery@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake/lib/toaster/toastergui/templates')
-rw-r--r--bitbake/lib/toaster/toastergui/templates/builddashboard.html64
1 files changed, 41 insertions, 23 deletions
diff --git a/bitbake/lib/toaster/toastergui/templates/builddashboard.html b/bitbake/lib/toaster/toastergui/templates/builddashboard.html
index f6d62b9951..e1bde21e99 100644
--- a/bitbake/lib/toaster/toastergui/templates/builddashboard.html
+++ b/bitbake/lib/toaster/toastergui/templates/builddashboard.html
@@ -80,29 +80,30 @@
80 <dd><a href="{% url 'target' build.pk target.target.pk %}">{{target.npkg}}</a></dd> 80 <dd><a href="{% url 'target' build.pk target.target.pk %}">{{target.npkg}}</a></dd>
81 <dt>Total package size</dt> 81 <dt>Total package size</dt>
82 <dd>{{target.pkgsz|filtered_filesizeformat}}</dd> 82 <dd>{{target.pkgsz|filtered_filesizeformat}}</dd>
83 {% if target.targetHasNoImages %} 83 </dl>
84 </dl> 84 {% if target.targetHasNoImages %}
85 <div class="row"> 85 <div class="row">
86 <div class="col-md-7"> 86 <div class="col-md-7">
87 <div class="alert alert-info"> 87 <div class="alert alert-info">
88 <p> 88 <p>
89 <strong>This build did not create any image files</strong> 89 <strong>This build did not create any image files</strong>
90 </p> 90 </p>
91 <p> 91 <p>
92 This is probably because valid image and license manifest 92 This is probably because valid image and license manifest
93 files from a previous build already exist in your 93 files from a previous build already exist in your
94 <code>build/tmp/deploy</code> 94 <code>build/tmp/deploy</code>
95 directory. You can 95 directory. You can
96 also <a href="{% url 'target' build.pk target.target.pk %}">view the 96 also <a href="{% url 'target' build.pk target.target.pk %}">view the
97 license manifest information</a> in Toaster. 97 license manifest information</a> in Toaster.
98 </p> 98 </p>
99 </div>
100 </div>
101 </div> 99 </div>
102 {% else %} 100 </div>
101 </div>
102 {% endif %}
103 {% if not target.targetHasNoImages %}
104 <dl class="dl-horizontal">
103 <dt> 105 <dt>
104 <span class="glyphicon glyphicon-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"></span> 106 <span class="glyphicon glyphicon-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"></span>
105
106 License manifest 107 License manifest
107 </dt> 108 </dt>
108 <dd> 109 <dd>
@@ -129,15 +130,32 @@
129 </dt> 130 </dt>
130 <dd> 131 <dd>
131 <ul class="list-unstyled"> 132 <ul class="list-unstyled">
132 {% for artifact in target.target_artifacts|dictsort:"basename" %} 133 {% for artifact in target.target_kernel_artifacts|dictsort:"basename" %}
133 <li> 134 <li>
134 <a href="{% url 'build_artifact' build.id 'targetartifactfile' artifact.id %}">{{artifact.basename}}</a> 135 <a href="{% url 'build_artifact' build.id 'targetkernelartifact' artifact.id %}">{{artifact.basename}}</a>
135 ({{artifact.file_size|filtered_filesizeformat}}) 136 ({{artifact.file_size|filtered_filesizeformat}})
136 </li> 137 </li>
137 {% endfor %} 138 {% endfor %}
138 </ul> 139 </ul>
139 </dd> 140 </dd>
140 </dl> 141 </dl>
142 {% endif %}
143 {% if target.target_sdk_artifacts_count > 0 %}
144 <dl class="dl-horizontal">
145 <dt>
146 SDK artifacts
147 </dt>
148 <dd>
149 <ul class="list-unstyled">
150 {% for artifact in target.target_sdk_artifacts|dictsort:"basename" %}
151 <li>
152 <a href="{% url 'build_artifact' build.id 'targetsdkartifact' artifact.id %}">{{artifact.basename}}</a>
153 ({{artifact.file_size|filtered_filesizeformat}})
154 </li>
155 {% endfor %}
156 </ul>
157 </dd>
158 </dl>
141 {% endif %} 159 {% endif %}
142 </div> 160 </div>
143 {% endif %} 161 {% endif %}