TT#43813 panel: fixes and improvements

* build: don't fail if no builds on done property
* fix progress stats on panel_uuid
* stop sending queries if release is done

Change-Id: I4fb4c6c161a852bb8f5ee978cec053d98e38a1f8
changes/87/38487/2
Victor Seva 6 years ago
parent e6a6f46e26
commit 2a448a089e

@ -113,6 +113,8 @@ class BuildRelease(models.Model):
@property
def done(self):
if self.built_projects is None:
return False
built_len = len(self.built_projects)
return built_len == self.release_jobs_len + 1 + len(self.projects)

@ -65,7 +65,7 @@ function update_stats_progress() {
var total = $.release.projects.size;
if ( $.release.uuid ) {
total += $.release.stats.queued.size;
total = parseInt( $( "#stats-total" ).text(), 10 );
}
for ( var label of labels ) {

@ -174,6 +174,18 @@ function is_project_done( project ) {
}
function is_done() {
var success = parseInt( $( "#stats-success" ).text(), 10 );
var failed = parseInt( $( "#stats-danger" ).text(), 10 );
var queued = parseInt( $( "#stats-queued" ).text(), 10 );
var building = parseInt( $( "#stats-created" ).text(), 10 );
if ( failed === 0 && queued === 0 && building === 0 && success > 0 ) {
return true;
}
return false;
}
function is_stuck() {
var success = parseInt( $( "#stats-success" ).text(), 10 );
var failed = parseInt( $( "#stats-danger" ).text(), 10 );
@ -199,7 +211,12 @@ function update_release_info( release ) {
get_uuids_for_project( release, project );
}
}
if ( is_stuck() ) {
if ( is_done() ) {
clearInterval( $.release.timer );
clearInterval( $.release.update_info_timer );
$( "#update-info-all" ).addClass( "hidden" );
$( "#resume" ).prop( "disabled", true );
} else if ( is_stuck() ) {
$( "#resume" ).prop( "disabled", false );
}
}

@ -1,6 +1,8 @@
<div class="panel-heading">
<span class="panel-title">Statistics</span>
<div class="pull-right">next info refresh in <span class="badge" id="update-info">0</span> seconds</div>
<div id="update-info-all" class="pull-right">
next info refresh in <span class="badge" id="update-info">0</span> seconds
</div>
</div>
<div class="panel-body">
<div>

@ -38,8 +38,10 @@ $( document ).ready(function() {
$.release.uuid = '{{ build_release.uuid }}';
$.release.release_jobs_size = {{ release_jobs_size }};
$.release.max_uuids = 1;
$.release.interval = 30000;
update_release_info('{{ build_release.release }}');
{% if build_release.done %}
$( "#update-info-all" ).addClass( "hidden" );
{% else %}
$.release.interval = 15000;
$( "#update-info" ).text($.release.interval/1000);
$.release.timer = setInterval(function(){
update_release_info('{{ build_release.release }}');
@ -49,6 +51,7 @@ $( document ).ready(function() {
var step = parseInt($( "#update-info" ).text());
$( "#update-info" ).text(step - 1);
}, 1000);
{% endif %}
set_stats_total('{{ total }}');
{% for projectname in queued_projects %}
set_project_stats('{{ projectname }}', 'queued');
@ -72,6 +75,8 @@ create_new_release_job(values);
{% endif %}
{% endfor %}
{% endfor %}
update_stats();
update_release_info('{{ build_release.release }}');
});
</script>
{% endblock %}

Loading…
Cancel
Save