[oe-commits] [bitbake] 13/20: toaster: only show "New custom image" button for builds with image targets
git at git.openembedded.org
git at git.openembedded.org
Tue Jul 19 08:01:17 UTC 2016
rpurdie pushed a commit to branch master
in repository bitbake.
commit 3c4b053e44ea512ef2ced67289a7b0161db6ce9b
Author: Elliot Smith <elliot.smith at intel.com>
AuthorDate: Tue Jul 12 15:54:51 2016 -0700
toaster: only show "New custom image" button for builds with image targets
Add a has_image_targets() method to Build, and use that to hide
the "New custom image" button on the build dashboard if a build
has no targets which build images.
[YOCTO #9514]
Signed-off-by: Elliot Smith <elliot.smith at intel.com>
Signed-off-by: bavery <brian.avery at intel.com>
Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
lib/toaster/orm/models.py | 13 +++++++
.../toastergui/templates/basebuildpage.html | 42 +++++++++++-----------
2 files changed, 35 insertions(+), 20 deletions(-)
diff --git a/lib/toaster/orm/models.py b/lib/toaster/orm/models.py
index 0443a45..a111916 100644
--- a/lib/toaster/orm/models.py
+++ b/lib/toaster/orm/models.py
@@ -449,6 +449,19 @@ class Build(models.Model):
break
return has_images
+ def has_image_targets(self):
+ """
+ Returns True if a build has any targets which were built from
+ image recipes.
+ """
+ targets = Target.objects.filter(build_id=self.id)
+ has_image_targets = False
+ for target in targets:
+ if target.is_image:
+ has_image_targets = True
+ break
+ return has_image_targets
+
def get_image_file_extensions(self):
"""
Get string of file name extensions for images produced by this build;
diff --git a/lib/toaster/toastergui/templates/basebuildpage.html b/lib/toaster/toastergui/templates/basebuildpage.html
index e9927eb..8d7c562 100644
--- a/lib/toaster/toastergui/templates/basebuildpage.html
+++ b/lib/toaster/toastergui/templates/basebuildpage.html
@@ -117,30 +117,32 @@
{% endwith %}
<!-- new custom image from image recipe in this build -->
- <button class="btn btn-default btn-block navbar-btn" data-role="new-custom-image-trigger">New custom image</button>
- {% include 'newcustomimage_modal.html' %}
- <script>
- // imageRecipes includes both custom image recipes and built-in
- // image recipes, any of which can be used as the basis for a
- // new custom image
- var imageRecipes = {{ build.get_image_recipes | objects_to_dictionaries:"id,name" | json }};
+ {% if build.has_image_targets %}
+ <button class="btn btn-default btn-block navbar-btn" data-role="new-custom-image-trigger">New custom image</button>
+ {% include 'newcustomimage_modal.html' %}
+ <script>
+ // imageRecipes includes both custom image recipes and built-in
+ // image recipes, any of which can be used as the basis for a
+ // new custom image
+ var imageRecipes = {{ build.get_image_recipes | objects_to_dictionaries:"id,name" | json }};
- $(document).ready(function () {
- var newCustomImageModal = $('#new-custom-image-modal');
- var newCustomImageTrigger = $('[data-role="new-custom-image-trigger"]');
+ $(document).ready(function () {
+ var newCustomImageModal = $('#new-custom-image-modal');
+ var newCustomImageTrigger = $('[data-role="new-custom-image-trigger"]');
- // show create new custom image modal to select an image built
- // during this build as the basis for the custom recipe
- newCustomImageTrigger.click(function () {
- if (!imageRecipes.length) {
- return;
- }
+ // show create new custom image modal to select an image built
+ // during this build as the basis for the custom recipe
+ newCustomImageTrigger.click(function () {
+ if (!imageRecipes.length) {
+ return;
+ }
- newCustomImageModalSetRecipes(imageRecipes);
- newCustomImageModal.modal('show');
+ newCustomImageModalSetRecipes(imageRecipes);
+ newCustomImageModal.modal('show');
+ });
});
- });
- </script>
+ </script>
+ {% endif %}
</ul>
</div>
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the Openembedded-commits
mailing list