summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/toaster/toastergui/templates
diff options
context:
space:
mode:
authorMichael Wood <michael.g.wood@intel.com>2015-11-04 15:46:24 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2016-02-10 13:29:17 +0000
commitce7289613bc24e0f3b17dd79ab4e8aa52edc70ce (patch)
tree0b80c37aa571710215167198fe5828445748e6e2 /bitbake/lib/toaster/toastergui/templates
parent5f52614a878269fe7837b7198e653377b25b91d8 (diff)
downloadpoky-ce7289613bc24e0f3b17dd79ab4e8aa52edc70ce.tar.gz
bitbake: toaster: Add recipe details page
This page provides the details of recipes, showing their packages and additional metadata. It also allows you to build the recipe or customise the recipe if it is an image recipe. [YOCTO #8070] (Bitbake rev: b6023619397f679791b7eff1faac06f4246133ce) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: brian avery <avery.brian@gmail.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/recipedetails.html180
1 files changed, 180 insertions, 0 deletions
diff --git a/bitbake/lib/toaster/toastergui/templates/recipedetails.html b/bitbake/lib/toaster/toastergui/templates/recipedetails.html
new file mode 100644
index 0000000000..aed0492aeb
--- /dev/null
+++ b/bitbake/lib/toaster/toastergui/templates/recipedetails.html
@@ -0,0 +1,180 @@
1{% extends "base.html" %}
2{% load projecttags %}
3{% load humanize %}
4{% load static %}
5{% block pagecontent %}
6
7<div class="section">
8 <ul class="breadcrumb">
9 <li class="muted">
10 {{project.name}}
11 </li>
12 <li>
13 <a href="{% url 'project' project.id %}">Configuration</a>
14 <span class="divider">&rarr;</span>
15 </li>
16 <li>
17 {% if recipe.is_image %}
18 <a href="{% url 'projectimagerecipes' project.id %}">Image recipes</a>
19 {% else %}
20 <a href="{% url 'projectsoftwarerecipes' project.id %}">Software recipes</a>
21 {% endif %}
22 <span class="divider">&rarr;</span>
23 </li>
24 <li class="active">
25 {{recipe.name}} ({{recipe.layer_version.layer.name}})
26 </li>
27 </ul>
28</div>
29
30<script src="{% static 'js/recipedetails.js' %}"></script>
31<script>
32 $(document).ready(function (){
33 var ctx = {
34 recipe : {
35 id: {{recipe.pk}},
36 name: "{{recipe.name}}",
37 totalPackages: {{packages.count}},
38 layer_version : {
39 id: {{recipe.layer_version.pk}},
40 name: "{{recipe.layer_version.layer.name}}",
41 layerdetailurl: "{% url 'layerdetails' project.pk recipe.layer_version.pk %}"
42 }
43 }
44 };
45
46 try {
47 recipeDetailsPageInit(ctx);
48 } catch (e) {
49 document.write("Sorry, An error has occurred loading this page");
50 console.warn(e);
51 }
52 });
53</script>
54
55{% include 'newcustomimage_modal.html' %}
56
57<div class="row-fluid span11">
58 <div class="alert alert-success lead" id="image-created-notification" style="margin-top: 15px; display: none">
59 <button type="button" data-dismiss="alert" class="close">x</button>
60 Your custom image <strong>{{recipe.name}}</strong> has been created. You can now add or remove packages as needed.
61 </div>
62 <div class="page-header air">
63 <h1>
64 {{recipe.name}}
65 <small>({{recipe.layer_version.layer.name}})</small>
66 </h1>
67 </div>
68</div>
69
70<div class="row-fluid span11">
71 <div class="span8">
72 <div class="button-place btn-group" id="customise-build-btns"
73 style="width: 100%;
74 {% if not in_project %}
75 display:none;
76 {% endif %}">
77 <button class="btn btn-large span6 build-recipe-btn" style="width: 50%">
78 Build {{recipe.name}}
79 </button>
80 {% if recipe.is_image %}
81 <button class="btn btn-large span6 customise-btn" data-recipe="{{recipe.pk}}" style="width: 50%">
82 Customise {{recipe.name}}
83 </button>
84 {% endif %}
85 </div>
86 <div class="button-place">
87 <button class="btn btn-block btn-large" id="add-layer-btn"
88 style="width:100%;
89 {% if in_project %}
90 display:none;
91 {% endif %}">
92 <i class="icon-plus"></i>
93 Add the {{recipe.layer_version.layer.name}} layer to your project to build or customise this image recipe
94 </button>
95 </div>
96
97 <div id="packages-table">
98 {% if packages.count %}
99 {% url 'recipepackages' project.id recipe.id as xhr_table_url %}
100 <h2>{{title}} (<span class="table-count-{{table_name}}">0</span>) </h2>
101 {% include "toastertable.html" %}
102 {% else %}
103 <h2>{{title}}</h2>
104 {% endif %}
105
106 <div class="alert alert-info air" id="build-to-get-packages-msg"
107 {# if there are packages and it's in the project don't show this msg #}
108 {% if packages.count or not packages.count and not in_project %}
109 style="display:none"
110 {% endif %} >
111 <p class="lead">Toaster has no package information for {{recipe.name}}. To generate package information, build {{recipe.name}}</p>
112 <button class="btn btn-info btn-large build-recipe-btn" style="margin:20px 0 10px 0;">Build {{recipe.name}}</button>
113 </div>
114
115 <div class="alert alert-info air" id="packages-alert"
116 {% if packages.count or in_project %}
117 style="display:none"
118 {% endif %}
119 >
120 <p class="lead">Toaster has no package information for {{recipe.name}}
121 </p>
122 </div>
123 </div>
124 </div>
125 <div class="span4 well">
126 <h2 style="margin-bottom:20px;">About {{recipe.name}}</h2>
127 <dl>
128 <dt>
129 Approx. packages included
130 <i class="icon-question-sign get-help" title="" data-original-title="The number of packages included is based on information from previous builds and from parsing layers, so we can never be sure it is 100% accurate"></i>
131 </dt>
132 <dd class="no-packages">{{packages.count}}</dd>
133 <dt>
134 Approx. package size
135 <i class="icon-question-sign get-help" title="" data-original-title="Package size is based on information from previous builds, so we can never be sure it is 100% accurate"></i>
136 </dt>
137 <dd>{{approx_pkg_size.size__sum|filtered_filesizeformat}}</dd>
138 {% if last_build %}
139 <dt>Last build</dt>
140 <dd>
141 <i class="icon-ok-sign success"></i>
142 <a href="{% url 'projectbuilds' project.id%}">{{last_build.completed_on|date:"d/m/y H:i"}}</a>
143 </dd>
144 {% endif %}
145 <dt>Recipe file</dt>
146 <dd>
147 <code>{{recipe.file_path|cut_path_prefix:recipe.layer_version.local_path}}</code>
148 <a href="{{recipe.get_vcs_recipe_file_link_url}}"><i class="icon-share" title="" data-original-title="View recipe file"></i></a>
149 </dd>
150 <dt>Layer</dt>
151 <dd><a href="{% url 'layerdetails' project.id recipe.layer_version.pk %}">{{recipe.layer_version.layer.name}}</a></dd>
152 <dt>
153 Summary
154 </dt>
155 <dd>
156 {{recipe.summary}}
157 </dd>
158 <dt>
159 Description
160 </dt>
161 <dd>
162 {{recipe.description}}
163 </dd>
164 <dt>Version</dt>
165 <dd>
166 {{recipe.version}}
167 </dd>
168 <dt>Section</dt>
169 <dd>
170 {{recipe.section}}
171 </dd>
172 <dt>License</dt>
173 <dd>
174 {{recipe.license}}
175 </dd>
176 </dl>
177 </div>
178</div>
179
180{% endblock %}