tartiflette/app/templates/appci_app.html
2021-03-21 22:07:10 +01:00

162 lines
5.8 KiB
HTML

{% extends "base.html" %}
{% block content %}
<h2 class="text-center my-3">{{ app.name.title() }}
<a href="{{ app.repo }}" style="font-size:15px">
<span class="oi oi-external-link text-info"
aria-hidden="true"
title="To the Git repo!"></span>
</a></h2>
<div class="row">
<div class="mx-auto">
<div>
<table class="table table-responsive ci-app-table">
<thead>
<tr>
<th class="ci-app-row-title"></th>
<th class="ci-app-test-title"><div>Level</div></th>
{% for test in test_categories %}
<th class="ci-app-test-title"><div><span>{{ test[1] }}</span></div></th>
{% endfor %}
<th class="ci-app-test-title"></th>
</tr>
</thead>
<tbody>
{% for result in branch_results %}
<tr branch="{{ result.branch.name }}" {% if result.outdated %}style="opacity: 0.5"{% endif %} >
<td class="ci-app-row-title">
<a href="{{ url_for('main.appci_branch', branch=result.branch.name) }}">
<span title="Branch">
<strong>{{ result.branch.display_name }}</strong></span>
</a>
</td>
<td class="ci-app-level" value="{{ result.level }}">
<div title="Level"><strong>{{ result.level if result.level >= 0 else "?" }}</strong></div></td>
{% for test in test_categories %}
{% set r = result.results[test[0]] %}
<td class="ci-app-test-result">
<div title="{{ test[1] }}" value="{{ r }}"></div>
</td>
{% endfor %}
<td class="ci-app-test-info">
{% if result.date == None %}
<span class="daysAgo" href="{{ result.branch.last_build_url(app) }}">???</span>
{% else %}
<span class="daysAgo" timestamp="{{ result.date.timestamp() }}" href="{{ result.branch.last_build_url(app) }}"></span>
{% endif %}
{% if result.outdated %}
<span class="oi oi-clock text-warning"
aria-hidden="true"
title="This test is outdated"></span>
{% endif %}
</td>
</tr>
{% endfor %}
</tbody>
</table>
</div>
</div>
</div>
<br>
<br>
<div class="row">
<div class="col-sm-4 offset-sm-4">
<div class="card">
<div class="card-body">
{% if app.testing_pr %}
<p class="card-text text-info">
<span class="oi oi-fork" aria-hidden="true"></span>
A testing PR is open for this app.
</p>
{% else %}
<p class="card-text text-muted">
<span class="oi oi-fork" aria-hidden="true"></span>
No active testing branch for this app.
</p>
{% endif %}
{% if app.opened_issues > 0 %}
<p class="card-text text-warning">
<span class="oi oi-bug" aria-hidden="true"></span>
There are <a class="text-warning" href="{{ app.repo }}/issues">{{ app.opened_issues }} opened issues</a> for this app.
</p>
{% else %}
<p class="card-text text-success">
<span class="oi oi-task" aria-hidden="true"></span>
No issues opened for this app !
</p>
{% endif %}
{% if app.opened_prs > 0 %}
<p class="card-text text-info">
<span class="oi oi-beaker" aria-hidden="true"></span>
There are <a class="text-beaker" href="{{ app.repo }}/pulls">{{ app.opened_prs }} opened pull requests</a> for this app.
</p>
{% else %}
<p class="card-text text-muted">
<span class="oi oi-beaker" aria-hidden="true"></span>
There are no pull requests opened.
</p>
{% endif %}
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm-6 offset-sm-3 mt-3">
<div id="levelHistory" style="height: 270px;"></div>
</div>
</div>
<script src="{{ url_for('static', filename='js/canvasjs.min.js') }}"></script>
<script>
window.onload = function () {
var colors_per_level = [
"#d9534f",
"#E26D4F",
"#E98D4E",
"#f0ad4e",
"#CBB052",
"#A6B255",
"#7AB659",
"#5cb85c",
"#4695d5"
];
var chart = new CanvasJS.Chart("levelHistory", {
animationEnabled: false,
title:{
text: "App level history (in apps.json)"
},
data: [
{
markerType: "circle",
markerSize: 10,
type: "line",
dataPoints: [
{% for d in history %}
{ label: "{{ d.date }}",
{% if d["level"] >= 0 %}
y: {{ d["level"] }},
markerColor: colors_per_level[{{ d["level"] }}]
{% else %}
y: 0,
markerSize: 1
{% endif %}
},
{% endfor %}
]
},
]
});
chart.render();
}
</script>
{% endblock %}