openstack-health/app/views/job.html

112 lines
4.6 KiB
HTML

<header class="bs-header">
<div class="container">
<h1 class="page-header">{{ job.name }} tests</h1>
<crumb-menu show-resolution="true" show-period="true">
<li>Job: {{ job.name }}</li>
</crumb-menu>
</div>
</header>
<div class="container">
<div class="row">
<div class="col-lg-12">
<loading-indicator></loading-indicator>
<fresh-check></fresh-check>
</div>
</div>
<div class="row">
<div class="col-lg-12">
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title">Tests</h3>
</div>
<div class="panel-body">
<chart-line data="job.chartData" width="100%" height="250"
tick-format-x="d"></chart-line>
</div>
</div>
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title">Tests Failure Rate</h3>
</div>
<div class="panel-body">
<chart-line data="job.chartDataRate" width="100%" height="250"
forceY="[0,1]" tick-format-x="%"></chart-line>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-lg-12">
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title">Recent Runs</h3>
</div>
<div class="panel-body table-responsive">
<table class="table table-hover status-table">
<thead>
<tr>
<th>Link</th>
<th>Status</th>
<th>Run At</th>
</tr>
</thead>
<tbody>
<tr ng-repeat="run in job.recentRuns"
ng-class="run.status == 'fail' ? 'danger' : 'success'">
<td><a href="{{ run.link }}">{{ run.link }}</a></td>
<td>{{ run.status }}</td>
<td>{{ run.start_date }}</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-lg-12">
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title">Tests</h3>
</div>
<div class="panel-body">
<form>
<div class="form-group">
<div class="input-group">
<div class="input-group-addon"><i class="fa fa-search"></i></div>
<input type="text" class="form-control" placeholder="Search for test" ng-model="job.searchTest" ng-change="job.onSearchChange()">
</div>
</div>
</form>
<div class="table-responsive">
<table table-sort class="table table-hover status-table" data="job.tests">
<thead>
<tr>
<th sort-field="name">Test Name</a></th>
<th sort-field="passes">Passes</th>
<th sort-field="failures">Failures</th>
<th sort-field="skips">Skips</th>
<th sort-default sort-field="failuresRate">% Failures</th>
<th sort-field="meanRuntime">Mean Runtime</th>
</tr>
</thead>
<tbody>
<tr table-ref="table" ng-repeat="test in table.dataSorted | filter:{name:job.searchTest}"
ng-class="test.failuresRate / 100 | ctxcls">
<td><a ui-sref="test({ testId: test.name })">{{ test.name|limitTo:110 }}</a></td>
<td>{{ test.passes|number }}</td>
<td>{{ test.failures|number }}</td>
<td>{{ test.skips|number }}</td>
<td>{{ test.failuresRate|number:2 }}</td>
<td>{{ test.meanRuntime|number:2 }}</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
</div>