{% extends "header.html" %} {% block content %} {% for name, state in data.ctrls_state.items() %} {% for notification in state %} {% if notification['level'] in ['WARNING', 'ERROR'] %}

{{name}} {{notification['message'] | linkify | safe}}

{% endif %} {% if notification['level'] == 'INFO' %}

{{name}} {{notification['message'] | linkify | safe}}

{% endif %} {% endfor %} {% endfor %}
{% for l in data.locations %} {% endfor %}
{% for g in data.generations|sort(reverse=True) %}

{{ g }}

{{ data.generations[g] }}

{% if g in data.builders %} {% for t in data.builders[g]['tiers'] %} {% set d = data.builders[g]['tiers'][t]['DONE'] %} {% set b = data.builders[g]['tiers'][t]['BUILD'] + data.builders[g]['tiers'][t]['none'] + data.builders[g]['tiers'][t]['IDLE'] + data.builders[g]['tiers'][t]['FAILURE'] %} {% set s = b + d if b + d > 0 else 1 %} {{ t }}: {{ d }} of {{ s }}
{{ (100 * d / s)|round(method='floor')|int }}%
{% endfor %} {% endif %}
{% for location in data.locations.values() %}
{% for tier_name in location['generations'][g] %} {% set tier = location['generations'][g][tier_name] %} {% set total = tier['deploy'].total %} {% set deploy_first = tier['deploy'].first %} {% set deploy_all = tier['deploy'].all %} {% set search_first = tier['search'].first %} {% set search_all = tier['search'].all %} {{ tier_name }}: {{ deploy_first }} of {{ total }} {% for c_deploy, c_search in [[deploy_first, search_first], [deploy_all, search_all]] %}
{{ (100 * c_deploy / total)|round(method='floor')|int }}%
{% endfor %} {% endfor %}
{% endfor %}
 
{% endfor %}
{% endblock %}