diff options
Diffstat (limited to 'bitbake')
4 files changed, 24 insertions, 7 deletions
diff --git a/bitbake/lib/toaster/orm/models.py b/bitbake/lib/toaster/orm/models.py index f70c0066ad..0f85c8fd0a 100644 --- a/bitbake/lib/toaster/orm/models.py +++ b/bitbake/lib/toaster/orm/models.py @@ -194,7 +194,7 @@ class Build(models.Model): eta = timezone.now() completeper = self.completeper() if self.completeper() > 0: - eta = timezone.now() + ((timezone.now() - self.started_on)*(100-completeper)/completeper) + eta += ((eta - self.started_on)*100)/completeper return eta diff --git a/bitbake/lib/toaster/toastergui/static/js/projectapp.js b/bitbake/lib/toaster/toastergui/static/js/projectapp.js index bee3c56be2..4d00f40ff1 100644 --- a/bitbake/lib/toaster/toastergui/static/js/projectapp.js +++ b/bitbake/lib/toaster/toastergui/static/js/projectapp.js @@ -136,6 +136,16 @@ projectApp.filter('timediff', function() { } }); +// add "time to future" eta that computes time from now to a point in the future +projectApp.filter('toeta', function() { + return function(input) { + var crtmiliseconds = new Date().getTime(); + diff = (parseInt(input) - crtmiliseconds ) / 1000; + console.log("Debug: future time ", input, "crt time", crtmiliseconds, ":", diff); + return diff < 0 ? 300 : diff; + } +}); + /** * main controller for the project page */ @@ -259,7 +269,14 @@ projectApp.controller('prjCtrl', function($scope, $modal, $http, $interval, $loc var i = 0; for (i = 0 ; i < $scope.builds.length; i ++) { if ($scope.builds[i].id > elem.id) continue; - if ($scope.builds[i].id == elem.id) { found=true; break;} + if ($scope.builds[i].id == elem.id) { + found=true; + // do deep data copy + for (var attr in elem) { + $scope.builds[i][attr] = elem[attr]; + } + break; + } if ($scope.builds[i].id < elem.id) break; } if (!found) { @@ -272,8 +289,8 @@ projectApp.controller('prjCtrl', function($scope, $modal, $http, $interval, $loc var found = false; var i = 0; for (i = 0; i < $scope.builds.length; i ++) { - if ($scope.builds[i].id > elem.id) continue; - if ($scope.builds[i].id == elem.id) { found=true; break;} + if ($scope.builds[i].id > elem.id) continue; + if ($scope.builds[i].id == elem.id) { found=true; break; } if ($scope.builds[i].id < elem.id) break; } if (!found) { @@ -281,6 +298,7 @@ projectApp.controller('prjCtrl', function($scope, $modal, $http, $interval, $loc } }); + $scope.fetchLayersForTargets(); } if (_data.targets !== undefined) { diff --git a/bitbake/lib/toaster/toastergui/templates/managed_mrb_section.html b/bitbake/lib/toaster/toastergui/templates/managed_mrb_section.html index 6f31ee0239..b8d087ab6c 100644 --- a/bitbake/lib/toaster/toastergui/templates/managed_mrb_section.html +++ b/bitbake/lib/toaster/toastergui/templates/managed_mrb_section.html @@ -2,8 +2,7 @@ {% load projecttags %} {% load humanize %} - -{%if len.mru > 0%} +{%if mru|length > 0%} <div class="page-header top-air"> <h1> Latest builds diff --git a/bitbake/lib/toaster/toastergui/templates/project.html b/bitbake/lib/toaster/toastergui/templates/project.html index 7da2361460..a1cce33222 100644 --- a/bitbake/lib/toaster/toastergui/templates/project.html +++ b/bitbake/lib/toaster/toastergui/templates/project.html @@ -196,7 +196,7 @@ vim: expandtab tabstop=2 <div style="width: {[b.build[0].completeper]}%;" class="bar"></div> </div> </div> - <div class="text-right lead">ETA: {[b.build[0].eta|date:"HH:mm:ss"]}</div> + <div class="text-right lead">ETA in {[b.build[0].eta|toeta|timediff]}</div> </case> </case> |