diff options
Diffstat (limited to 'bitbake/lib/toaster/toastergui/templates')
9 files changed, 531 insertions, 4 deletions
diff --git a/bitbake/lib/toaster/toastergui/templates/bpackage.html b/bitbake/lib/toaster/toastergui/templates/bpackage.html index 3329ddae51..b78ae4644f 100644 --- a/bitbake/lib/toaster/toastergui/templates/bpackage.html +++ b/bitbake/lib/toaster/toastergui/templates/bpackage.html | |||
@@ -26,7 +26,7 @@ | |||
26 | {% for package in objects %} | 26 | {% for package in objects %} |
27 | 27 | ||
28 | <tr class="data"> | 28 | <tr class="data"> |
29 | <td><a name="#{{package.name}}" href="{% url "package" build.pk package.pk %}">{{package.name}} ({{package.filelist_bpackage.count}} files)</a></td> | 29 | <td><a name="#{{package.name}}" href="{% url "package_built_detail" build.pk package.pk %}">{{package.name}} ({{package.filelist_bpackage.count}} files)</a></td> |
30 | <td>{{package.version}}-{{package.revision}}</td> | 30 | <td>{{package.version}}-{{package.revision}}</td> |
31 | <td>{%if package.recipe%}<a href="{% url "layer_versions_recipes" package.recipe.layer_version_id %}#{{package.recipe.name}}">{{package.recipe.name}}</a>{{package.package_name}}</a>{%endif%}</td> | 31 | <td>{%if package.recipe%}<a href="{% url "layer_versions_recipes" package.recipe.layer_version_id %}#{{package.recipe.name}}">{{package.recipe.name}}</a>{{package.package_name}}</a>{%endif%}</td> |
32 | 32 | ||
diff --git a/bitbake/lib/toaster/toastergui/templates/package_built_dependencies.html b/bitbake/lib/toaster/toastergui/templates/package_built_dependencies.html new file mode 100644 index 0000000000..c67f60e20b --- /dev/null +++ b/bitbake/lib/toaster/toastergui/templates/package_built_dependencies.html | |||
@@ -0,0 +1,112 @@ | |||
1 | {% extends "package_detail_base.html" %} | ||
2 | {% load projecttags %} | ||
3 | |||
4 | {% block tabcontent %} | ||
5 | {% with fullPackageSpec=package.name|add:"-"|add:package.version|add:"-"|add:package.revision|filtered_packagespec %} | ||
6 | <ul class="nav nav-pills"> | ||
7 | <li class=""> | ||
8 | <a href="{% url 'package_built_detail' build.id package.id %}"> | ||
9 | <i class="icon-question-sign get-help" data-toggle="tooltip" title="Shows the files produced by this package."></i> | ||
10 | Generated files ({{package.buildfilelist_package.count}}) | ||
11 | </a> | ||
12 | </li> | ||
13 | <li class="active"> | ||
14 | <a href="{% url 'package_built_dependencies' build.id package.id %}"> | ||
15 | <i class="icon-question-sign get-help" data-toggle="tooltip" title="Shows the runtime packages required by this package."></i> | ||
16 | Runtime dependencies ({{dependency_count}}) | ||
17 | </a> | ||
18 | </li> | ||
19 | </ul> | ||
20 | <div class="tab-content"> | ||
21 | <div class="tab-pane active" id="dependencies"> | ||
22 | {% ifequal runtime_deps|length 0 %} | ||
23 | <div class="alert alert-info"> | ||
24 | <strong>{{fullPackageSpec}}</strong> has no runtime dependencies. | ||
25 | </div> | ||
26 | {% else %} | ||
27 | <div class="alert alert-info"> | ||
28 | <strong>{{fullPackageSpec}}</strong> is <strong>not included</strong> in any image. These are its projected runtime dependencies if you were to include it in future builds. | ||
29 | </div> | ||
30 | <table class="table table-bordered table-hover"> | ||
31 | <thead> | ||
32 | <tr> | ||
33 | <th>Package</th> | ||
34 | <th>Version</th> | ||
35 | <th>Size</th> | ||
36 | </tr> | ||
37 | </thead> | ||
38 | {% for runtime_dep in runtime_deps %} | ||
39 | <tbody> | ||
40 | {% ifequal runtime_dep.version '' %} | ||
41 | <tr class="muted"> | ||
42 | <td>{{runtime_dep.name}}</td> | ||
43 | <td>{{runtime_dep.version}}</td> | ||
44 | <td></td> | ||
45 | </div> | ||
46 | </tr> | ||
47 | {% else %} | ||
48 | <tr> | ||
49 | <td> | ||
50 | <a href="{% url 'package_built_detail' build.id runtime_dep.depends_on_id %}"> | ||
51 | {{runtime_dep.name}} | ||
52 | </a> | ||
53 | </td> | ||
54 | <td>{{runtime_dep.version}}</td> | ||
55 | <td>{{runtime_dep.size|filtered_filesizeformat}}</td> | ||
56 | </tr> | ||
57 | {% endifequal %} | ||
58 | </tbody> | ||
59 | {% endfor %} | ||
60 | </table> | ||
61 | {% endifequal %} | ||
62 | {% ifnotequal other_deps|length 0 %} | ||
63 | <h3>Other runtime relationships</h3> | ||
64 | <table class="table table-bordered table-hover"> | ||
65 | <thead> | ||
66 | <tr> | ||
67 | <th>Package</th> | ||
68 | <th>Version</th> | ||
69 | <th>Size</th> | ||
70 | |||
71 | <th> | ||
72 | <i class="icon-question-sign get-help" title="There are 5 relationship types: recommends, suggests, provides, replaces and conflicts"></i> | ||
73 | Relationship type | ||
74 | </th> | ||
75 | </tr> | ||
76 | </thead> | ||
77 | |||
78 | {% for other_dep in other_deps %} | ||
79 | <tbody> | ||
80 | {% ifequal other_dep.version '' %} | ||
81 | <tr class="muted"> | ||
82 | <td>{{other_dep.name}}</td> | ||
83 | <td>{{other_dep.version}}</td> | ||
84 | <td></td> | ||
85 | <td> | ||
86 | {{other_dep.dep_type_display}} | ||
87 | <i class="icon-question-sign get-help hover-help" title="{{other_dep.dep_type_help}}" ></i> | ||
88 | </td> | ||
89 | </tr> | ||
90 | {% else %} | ||
91 | <tr> | ||
92 | <td> | ||
93 | <a href="{% url 'package_built_detail' build.id other_dep.depends_on_id %}"> | ||
94 | {{other_dep.name}} | ||
95 | </a> | ||
96 | </td> | ||
97 | <td>{{other_dep.version}}</td> | ||
98 | <td>{{other_dep.size|filtered_filesizeformat}}</td> | ||
99 | <td> | ||
100 | {{other_dep.dep_type_display}} | ||
101 | <i class="icon-question-sign get-help hover-help" title="{{other_dep.dep_type_help}}" ></i> | ||
102 | </td> | ||
103 | </tr> | ||
104 | </tbody> | ||
105 | {% endifequal %} | ||
106 | {% endfor %} | ||
107 | </table> | ||
108 | {% endifnotequal %} | ||
109 | </div> <!-- tab-pane --> | ||
110 | </div> <!-- tab-content --> | ||
111 | {% endwith %} | ||
112 | {% endblock tabcontent %} | ||
diff --git a/bitbake/lib/toaster/toastergui/templates/package_built_detail.html b/bitbake/lib/toaster/toastergui/templates/package_built_detail.html new file mode 100644 index 0000000000..fe856a3cb6 --- /dev/null +++ b/bitbake/lib/toaster/toastergui/templates/package_built_detail.html | |||
@@ -0,0 +1,71 @@ | |||
1 | {% extends "package_detail_base.html" %} | ||
2 | {% load projecttags %} | ||
3 | |||
4 | {% block tabcontent %} | ||
5 | {% with fullPackageSpec=package.name|add:"-"|add:package.version|add:"-"|add:package.revision|filtered_packagespec packageFileCount=package.buildfilelist_package.count %} | ||
6 | <!-- Generated Files --> | ||
7 | {% if package.buildtargetlist_package.count == 0 %} | ||
8 | {# Not included case #} | ||
9 | <ul class="nav nav-pills"> | ||
10 | <li class="active"> <a href="#"> | ||
11 | <i class="icon-question-sign get-help" data-toggle="tooltip" title="Shows the files produced by this package."></i> | ||
12 | Generated files ({{packageFileCount}}) | ||
13 | </a></li> | ||
14 | <li class=""><a href="{% url 'package_built_dependencies' build.id package.id %}"> | ||
15 | <i class="icon-question-sign get-help" data-toggle="tooltip" title="Shows the runtime packages required by this package."></i> | ||
16 | Runtime dependencies ({{dependency_count}}) | ||
17 | </a></li> | ||
18 | </ul> | ||
19 | <div class="tab-content"> | ||
20 | <div class="tab-pane active" id="files"> | ||
21 | <!-- Package file list or if empty, alert pane --> | ||
22 | {% if packageFileCount > 0 %} | ||
23 | <div class="alert alert-info"> | ||
24 | {{fullPackageSpec}} is <strong>not included</strong> in any image. These are the files that would be added to an image root file system if you were to include it in future builds. | ||
25 | </div> | ||
26 | <table class="table table-bordered table-hover"> | ||
27 | <thead> | ||
28 | <tr> | ||
29 | <th>File</th> | ||
30 | <th>Size</th> | ||
31 | </tr> | ||
32 | </thead> | ||
33 | {% for file in package.buildfilelist_package.all|dictsort:"path" %} | ||
34 | <tbody> | ||
35 | <tr> | ||
36 | <td>{{file.path}}</td> | ||
37 | <td>{{file.size|filtered_filesizeformat}}</td> | ||
38 | </tr> | ||
39 | </tbody> | ||
40 | {% endfor %} | ||
41 | </table> | ||
42 | |||
43 | {% else %} | ||
44 | <div class="alert alert-info"> | ||
45 | <strong>{{fullPackageSpec}}</strong> does not generate any files. | ||
46 | </div> | ||
47 | {% endif %} | ||
48 | |||
49 | </div> <!-- tab-pane active --> | ||
50 | </div> <!-- tab-content --> | ||
51 | {% else %} | ||
52 | {# Included case #} | ||
53 | <div class="tab-content"> | ||
54 | <div class="tab-pane active"> | ||
55 | <div class="lead well"> | ||
56 | Package included in: | ||
57 | {% for itarget in package.buildtargetlist_package.all|dictsort:"target.target" %} | ||
58 | <a href="{% url 'package_included_detail' build.id itarget.target.id package.id %}"> | ||
59 | {% if forloop.counter0 > 0 %} | ||
60 | , | ||
61 | {% endif %} | ||
62 | {{itarget.target.target}} | ||
63 | </a> | ||
64 | {% endfor %} | ||
65 | </div> | ||
66 | </div> <!-- tab-pane active --> | ||
67 | </div> <!-- tab-content --> | ||
68 | {% endif %} | ||
69 | |||
70 | {% endwith %} | ||
71 | {% endblock tabcontent %} | ||
diff --git a/bitbake/lib/toaster/toastergui/templates/package_detail_base.html b/bitbake/lib/toaster/toastergui/templates/package_detail_base.html new file mode 100644 index 0000000000..a7aaab6de7 --- /dev/null +++ b/bitbake/lib/toaster/toastergui/templates/package_detail_base.html | |||
@@ -0,0 +1,125 @@ | |||
1 | {% extends "basebuilddetailpage.html" %} | ||
2 | {% load projecttags %} | ||
3 | |||
4 | {% block localbreadcrumb %} | ||
5 | {% with fullPackageSpec=package.name|add:"-"|add:package.version|add:"-"|add:package.revision|filtered_packagespec %} | ||
6 | {% if target %} | ||
7 | <li><a href="{% url "target" build.id target.id %}">{{target.target}}</a></li> | ||
8 | {% else %} | ||
9 | <li><a href="{% url "packages" build.id %}"> Packages </a></li> | ||
10 | {% endif %} | ||
11 | <li>{{fullPackageSpec}}</li> | ||
12 | {% endwith %} | ||
13 | {% endblock localbreadcrumb %} | ||
14 | |||
15 | {% block pagedetailinfomain %} | ||
16 | {% with fullPackageSpec=package.name|add:"-"|add:package.version|add:"-"|add:package.revision|filtered_packagespec %} | ||
17 | |||
18 | <div class="row span11"> | ||
19 | <div class="page-header"> | ||
20 | {% block title %} | ||
21 | <h1>{{fullPackageSpec}}</h1> | ||
22 | {% endblock title %} | ||
23 | </div> <!-- page-header --> | ||
24 | </div> <!-- row span11 page-header --> | ||
25 | |||
26 | {% block twocolumns %} | ||
27 | <div class="row span7 tabbable"> | ||
28 | {% block tabcontent %} | ||
29 | {% endblock tabcontent %} | ||
30 | </div> <!-- row span7 --> | ||
31 | |||
32 | <div class="row span4 well"> | ||
33 | <h2>Package information</h2> | ||
34 | |||
35 | <!-- info presented as definition list --> | ||
36 | <dl> | ||
37 | <dt> | ||
38 | Size | ||
39 | <i class="icon-question-sign get-help" data-toggle="tooltip" title="The size of the package"></i> | ||
40 | </dt> | ||
41 | <dd> | ||
42 | {% comment %} | ||
43 | if recipe is absent, filesize is not 0 | ||
44 | {% endcomment %} | ||
45 | {% if package.recipe_id > 0 %} | ||
46 | {{package.size|filtered_filesizeformat}} | ||
47 | {% if target.file_size %} | ||
48 | ({{package.size|multiply:100|divide:target.file_size}}% of included package size) | ||
49 | {% endif %} | ||
50 | |||
51 | {% endif %} | ||
52 | </dd> | ||
53 | |||
54 | <dt> | ||
55 | License | ||
56 | <i class="icon-question-sign get-help" data-toggle="tooltip" title="The license under which this package is distributed"></i> | ||
57 | </dt> | ||
58 | <dd>{{package.license}}</dd> | ||
59 | |||
60 | {% comment %} | ||
61 | # Removed per review on 1/18/2014 until license data population | ||
62 | # problemse are resolved. | ||
63 | <dt> | ||
64 | License files | ||
65 | <i class="icon-question-sign get-help" data-toggle="tooltip" title="Location in disk of the license files that apply to the package"></i> | ||
66 | </dt> | ||
67 | <dd></dd> | ||
68 | {% endcomment %} | ||
69 | |||
70 | <dt> | ||
71 | Recipe | ||
72 | <i class="icon-question-sign get-help" data-toggle="tooltip" title="The name of the recipe building this package"></i> | ||
73 | </dt> | ||
74 | <dd> | ||
75 | {% if package.recipe_id > 0 %} | ||
76 | <a href="{% url "recipe" build.id package.recipe_id %}"> {{package.recipe.name}} </a> | ||
77 | {% else %} | ||
78 | {{package.recipe.name}} | ||
79 | {% endif %} | ||
80 | </dd> | ||
81 | |||
82 | <dt> | ||
83 | Recipe version | ||
84 | <i class="icon-question-sign get-help" data-toggle="tooltip" title="The version of the recipe building this package"></i> | ||
85 | </dt> | ||
86 | <dd>{{package.recipe.version}}</dd> | ||
87 | |||
88 | <dt> | ||
89 | Layer | ||
90 | <i class="icon-question-sign get-help" data-toggle="tooltip" title="The name of the layer providing the recipe that builds this package"></i> | ||
91 | </dt> | ||
92 | <dd> | ||
93 | {{package.recipe.layer_version.layer.name}} | ||
94 | {% if package.recipe.layer_version.layer.name|format_none_and_zero != "" %} | ||
95 | {% comment %} | ||
96 | # Removed per team meeting of 1/29/2014 until | ||
97 | # decision on index search algorithm | ||
98 | <a href="http://layers.openembedded.org" target="_blank"> | ||
99 | <i class="icon-share get-info"></i> | ||
100 | {% endcomment %} | ||
101 | </a> | ||
102 | {% endif %} | ||
103 | </dd> | ||
104 | |||
105 | <dt> | ||
106 | Layer branch | ||
107 | <i class="icon-question-sign get-help" data-toggle="tooltip" title="The Git branch of the layer providing the recipe that builds this package"></i> | ||
108 | </dt> | ||
109 | <dd>{{package.recipe.layer_version.branch}}</dd> | ||
110 | <dt> | ||
111 | Layer commit | ||
112 | <i class="icon-question-sign get-help" data-toggle="tooltip" title="The Git commit of the layer providing the recipe that builds this package"></i> | ||
113 | </dt> | ||
114 | |||
115 | <dd class="iscommit">{{package.recipe.layer_version.commit}}</dd> | ||
116 | <dt> | ||
117 | Layer directory | ||
118 | <i class="icon-question-sign get-help" data-toggle="tooltip" title="Location in disk of the layer providing the recipe that builds this package"></i> | ||
119 | </dt> | ||
120 | <dd><code>{{package.recipe.layer_version.layer.local_path}}</code></dd> | ||
121 | </dl> | ||
122 | </div> <!-- row4 well --> | ||
123 | {% endblock twocolumns %} | ||
124 | {% endwith %} | ||
125 | {% endblock pagedetailinfomain %} | ||
diff --git a/bitbake/lib/toaster/toastergui/templates/package_included_dependencies.html b/bitbake/lib/toaster/toastergui/templates/package_included_dependencies.html new file mode 100644 index 0000000000..c8c2dddf29 --- /dev/null +++ b/bitbake/lib/toaster/toastergui/templates/package_included_dependencies.html | |||
@@ -0,0 +1,93 @@ | |||
1 | {% extends "package_detail_base.html" %} | ||
2 | {% load projecttags %} | ||
3 | |||
4 | {% block title %} | ||
5 | {% with fullPackageSpec=package.name|add:"-"|add:package.version|add:"-"|add:package.revision|filtered_packagespec %} | ||
6 | <h1>{{fullPackageSpec}} <small>({{target.target}})</small></h1> | ||
7 | {% endwith %} | ||
8 | {% endblock title %} | ||
9 | |||
10 | {% block tabcontent %} | ||
11 | {% with fullPackageSpec=package.name|add:"-"|add:package.version|add:"-"|add:package.revision|filtered_packagespec packageFileCount=package.buildfilelist_package.count %} | ||
12 | {% include "package_included_tabs.html" with active_tab="dependencies" %} | ||
13 | <div class="tab-content"> | ||
14 | <div class="tab-pane active" id="dependencies"> | ||
15 | {% ifnotequal runtime_deps|length 0 %} | ||
16 | <table class="table table-bordered table-hover"> | ||
17 | <thead> | ||
18 | <tr> | ||
19 | <th>Package</th> | ||
20 | <th>Version</th> | ||
21 | <th>Size</th> | ||
22 | </tr> | ||
23 | </thead> | ||
24 | {% for runtime_dep in runtime_deps %} | ||
25 | <tbody> | ||
26 | <tr> | ||
27 | <td> | ||
28 | <a href="{% url 'package_included_detail' build.id target.id runtime_dep.depends_on_id %}"> | ||
29 | {{runtime_dep.name}} | ||
30 | </a> | ||
31 | </td> | ||
32 | <td>{{runtime_dep.version}}</td> | ||
33 | <td>{{runtime_dep.size|filtered_filesizeformat}}</td> | ||
34 | </tr> | ||
35 | </tbody> | ||
36 | {% endfor %} | ||
37 | </table> | ||
38 | {% else %} | ||
39 | <div class="alert alert-info"> | ||
40 | <strong>{{fullPackageSpec}}</strong> has no runtime dependencies. | ||
41 | </div> | ||
42 | {% endifnotequal %} | ||
43 | |||
44 | {% ifnotequal other_deps|length 0 %} | ||
45 | <h3>Other runtime relationships</h3> | ||
46 | <table class="table table-bordered table-hover"> | ||
47 | <thead> | ||
48 | <tr> | ||
49 | <th>Package</th> | ||
50 | <th>Version</th> | ||
51 | <th>Size</th> | ||
52 | <th> | ||
53 | <i class="icon-question-sign get-help" title="There are 5 relationship types: recommends, suggests, provides, replaces and conflicts"></i> | ||
54 | Relationship type | ||
55 | </th> | ||
56 | </tr> | ||
57 | </thead> | ||
58 | |||
59 | {% for other_dep in other_deps %} | ||
60 | <tbody> | ||
61 | {% if other_dep.installed %} | ||
62 | <tr> | ||
63 | <td> | ||
64 | <a href="{% url 'package_included_detail' build.id target.id other_dep.depends_on_id %}"> | ||
65 | {{other_dep.name}} | ||
66 | </a> | ||
67 | </td> | ||
68 | <td>{{other_dep.version}}</td> | ||
69 | <td>{{other_dep.size|filtered_filesizeformat}}</td> | ||
70 | <td> | ||
71 | {{other_dep.dep_type_display}} | ||
72 | <i class="icon-question-sign get-help hover-help" title="{{other_dep.dep_type_help}}" ></i> | ||
73 | </td> | ||
74 | </tr> | ||
75 | {% else %} | ||
76 | <tr class="muted"> | ||
77 | <td>{{other_dep.name}}</td> | ||
78 | <td>{{other_dep.version}}</td> | ||
79 | <td></td> | ||
80 | <td> | ||
81 | {{other_dep.dep_type_display}} | ||
82 | <i class="icon-question-sign get-help hover-help" title="{{other_dep.dep_type_help}}" ></i> | ||
83 | </td> | ||
84 | </tr> | ||
85 | {% endif %} | ||
86 | </tbody> | ||
87 | {% endfor %} | ||
88 | </table> | ||
89 | {% endifnotequal %} | ||
90 | </div> <!-- end tab-pane --> | ||
91 | </div> <!-- end tab content --> | ||
92 | {% endwith %} | ||
93 | {% endblock tabcontent %} | ||
diff --git a/bitbake/lib/toaster/toastergui/templates/package_included_detail.html b/bitbake/lib/toaster/toastergui/templates/package_included_detail.html new file mode 100644 index 0000000000..018de3eb42 --- /dev/null +++ b/bitbake/lib/toaster/toastergui/templates/package_included_detail.html | |||
@@ -0,0 +1,46 @@ | |||
1 | {% extends "package_detail_base.html" %} | ||
2 | {% load projecttags %} | ||
3 | |||
4 | {% block title %} | ||
5 | {% with fullPackageSpec=package.name|add:"-"|add:package.version|add:"-"|add:package.revision|filtered_packagespec %} | ||
6 | <h1>{{fullPackageSpec}} <small>({{target.target}})</small></h1> | ||
7 | {% endwith %} | ||
8 | {% endblock title %} | ||
9 | |||
10 | {% block tabcontent %} | ||
11 | {% with fullPackageSpec=package.name|add:"-"|add:package.version|add:"-"|add:package.revision|filtered_packagespec packageFileCount=package.buildfilelist_package.count %} | ||
12 | {% include "package_included_tabs.html" with active_tab="detail" %} | ||
13 | <div class="tab-content"> | ||
14 | <div class="tab-pane active" id="files"> | ||
15 | {% if packageFileCount > 0 %} | ||
16 | <table class="table table-bordered table-hover"> | ||
17 | <thead> | ||
18 | <tr> | ||
19 | <th>File</th> | ||
20 | <th>Size</th> | ||
21 | </tr> | ||
22 | </thead> | ||
23 | {% for file in package.buildfilelist_package.all|dictsort:"path" %} | ||
24 | <tbody> | ||
25 | <tr> | ||
26 | <td> | ||
27 | <a href="{% url 'image_information_dir' build.id target.id file.id %}"> | ||
28 | {{file.path}} | ||
29 | </a> | ||
30 | </td> | ||
31 | <td>{{file.size|filtered_filesizeformat}}</td> | ||
32 | </tr> | ||
33 | </tbody> | ||
34 | {% endfor %} | ||
35 | </table> | ||
36 | |||
37 | {% else %} | ||
38 | <div class="alert alert-info"> | ||
39 | <strong>{{fullPackageSpec}}</strong> does not generate any files. | ||
40 | </div> | ||
41 | {% endif %} | ||
42 | </div> <!-- end tab-pane --> | ||
43 | </div> <!-- end tab content --> | ||
44 | |||
45 | {% endwith %} | ||
46 | {% endblock tabcontent %} | ||
diff --git a/bitbake/lib/toaster/toastergui/templates/package_included_reverse_dependencies.html b/bitbake/lib/toaster/toastergui/templates/package_included_reverse_dependencies.html new file mode 100644 index 0000000000..9cfc7fe7c2 --- /dev/null +++ b/bitbake/lib/toaster/toastergui/templates/package_included_reverse_dependencies.html | |||
@@ -0,0 +1,47 @@ | |||
1 | {% extends "package_detail_base.html" %} | ||
2 | {% load projecttags %} | ||
3 | |||
4 | {% block title %} | ||
5 | {% with fullPackageSpec=package.name|add:"-"|add:package.version|add:"-"|add:package.revision|filtered_packagespec %} | ||
6 | <h1>{{fullPackageSpec}} <small>({{target.target}})</small></h1> | ||
7 | {% endwith %} | ||
8 | {% endblock title %} | ||
9 | |||
10 | {% block tabcontent %} | ||
11 | {% with fullPackageSpec=package.name|add:"-"|add:package.version|add:"-"|add:package.revision|filtered_packagespec packageFileCount=package.buildfilelist_package.count %} | ||
12 | {% include "package_included_tabs.html" with active_tab="reverse" %} | ||
13 | <div class="tab-content"> | ||
14 | <div class="tab-pane active" id="brought-in-by"> | ||
15 | |||
16 | {% ifequal reverse_deps|length 0 %} | ||
17 | <div class="alert alert-info"> | ||
18 | <strong>{{fullPackageSpec}}</strong> has no reverse runtime dependencies. | ||
19 | </div> | ||
20 | {% else %} | ||
21 | <table class="table table-bordered table-hover"> | ||
22 | <thead> | ||
23 | <tr> | ||
24 | <th>Package</th> | ||
25 | <th>Package Version</th> | ||
26 | <th>Size</th> | ||
27 | </tr> | ||
28 | </thead> | ||
29 | {% for reverse_dep in reverse_deps|dictsort:"name" %} | ||
30 | <tbody> | ||
31 | <tr> | ||
32 | <td> | ||
33 | <a href="{% url 'package_included_detail' build.id target.id reverse_dep.dependent_id %}"> | ||
34 | {{reverse_dep.name}} | ||
35 | </a> | ||
36 | </td> | ||
37 | <td>{{reverse_dep.version}}</td> | ||
38 | <td>{{reverse_dep.size|filtered_filesizeformat}}</td> | ||
39 | </tr> | ||
40 | </tbody> | ||
41 | {% endfor %} | ||
42 | </table> | ||
43 | {% endifequal %} | ||
44 | </div> <!-- end tab-pane --> | ||
45 | </div> <!-- end tab content --> | ||
46 | {% endwith %} | ||
47 | {% endblock tabcontent %} | ||
diff --git a/bitbake/lib/toaster/toastergui/templates/package_included_tabs.html b/bitbake/lib/toaster/toastergui/templates/package_included_tabs.html new file mode 100644 index 0000000000..5a97ba36b3 --- /dev/null +++ b/bitbake/lib/toaster/toastergui/templates/package_included_tabs.html | |||
@@ -0,0 +1,33 @@ | |||
1 | |||
2 | <ul class="nav nav-pills"> | ||
3 | {% if active_tab == "detail" %} | ||
4 | <li class="active"> | ||
5 | {% else %} | ||
6 | <li class=""> | ||
7 | {% endif %} | ||
8 | <a href="{% url 'package_included_detail' build.id target.id package.id %}"> | ||
9 | <i class="icon-question-sign get-help" title="The files this package adds to the image root file system"></i> | ||
10 | Files in root file system ({{packageFileCount}}) | ||
11 | </a> | ||
12 | </li> | ||
13 | {% if active_tab == "dependencies" %} | ||
14 | <li class="active"> | ||
15 | {% else %} | ||
16 | <li class=""> | ||
17 | {% endif %} | ||
18 | <a href="{% url 'package_included_dependencies' build.id target.id package.id %}"> | ||
19 | <i class="icon-question-sign get-help" data-toggle="tooltip" title="Package runtime dependencies"></i> | ||
20 | Runtime dependencies ({{dependency_count}}) | ||
21 | </a> | ||
22 | </li> | ||
23 | {% if active_tab == "reverse" %} | ||
24 | <li class="active"> | ||
25 | {% else %} | ||
26 | <li class=""> | ||
27 | {% endif %} | ||
28 | <a href="{% url 'package_included_reverse_dependencies' build.id target.id package.id %}"> | ||
29 | <i class="icon-question-sign get-help" data-toggle="tooltip" title="The package runtime reverse dependencies (i.e. which other packages in this image depend on this package). Reverse dependencies reflect only the 'depends' dependency type"></i> | ||
30 | Reverse Runtime dependencies ({{reverse_count}}) | ||
31 | </a> | ||
32 | </li> | ||
33 | </ul> | ||
diff --git a/bitbake/lib/toaster/toastergui/templates/recipe.html b/bitbake/lib/toaster/toastergui/templates/recipe.html index 5dea75382f..eba15baad3 100644 --- a/bitbake/lib/toaster/toastergui/templates/recipe.html +++ b/bitbake/lib/toaster/toastergui/templates/recipe.html | |||
@@ -161,9 +161,9 @@ | |||
161 | {% for package in packages %} | 161 | {% for package in packages %} |
162 | 162 | ||
163 | <tr> | 163 | <tr> |
164 | <td><a href="{% url "package" build.pk package.pk %}">{{package.name}}</a></td> | 164 | <td><a href="{% url "package_built_detail" build.pk package.pk %}">{{package.name}}</a></td> |
165 | <td><a href="{% url "package" build.pk package.pk %}">{{package.version}}-{{package.revision}}</a></td> | 165 | <td><a href="{% url "package_built_detail" build.pk package.pk %}">{{package.version}}_{{package.revision}}</a></td> |
166 | <td><a href="{% url "package" build.pk package.pk %}">{{package.size}}</a></td> | 166 | <td><a href="{% url "package_built_detail" build.pk package.pk %}">{{package.size}}</a></td> |
167 | </tr> | 167 | </tr> |
168 | 168 | ||
169 | {% endfor %} | 169 | {% endfor %} |