96 lines
3.8 KiB
HTML
96 lines
3.8 KiB
HTML
<header class="bs-header">
|
|
<div class="container">
|
|
<div class="row">
|
|
<div class="col-lg-12">
|
|
<h1 class="page-header">OpenStack Health</h1>
|
|
<crumb-menu show-group-key="true"
|
|
show-resolution="true"
|
|
show-period="true"></crumb-menu>
|
|
<loading-indicator></loading-indicator>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</header>
|
|
|
|
<div class="container">
|
|
<div class="row">
|
|
<div class="col-lg-12">
|
|
<div class="panel panel-default">
|
|
<div class="panel-heading">
|
|
<h3 class="panel-title">Total Jobs</h3>
|
|
</div>
|
|
<div class="panel-body">
|
|
<chart-line data="home.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">Job Failure Rate</h3>
|
|
</div>
|
|
<div class="panel-body">
|
|
<chart-line data="home.chartDataRate" width="100%" height="250"
|
|
force-y="[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">Failed Tests in Last 10 Failed Runs</h3>
|
|
</div>
|
|
<div class="panel-body">
|
|
<table class="table">
|
|
<thead>
|
|
<tr>
|
|
<th>Test ID</th>
|
|
<th>Run Link</th>
|
|
<th>Start Time</th>
|
|
<th>Stop Time</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr ng-repeat="testRun in home.recentTests">
|
|
<td><a ui-sref="test({ testId: testRun.test_id })"}>{{ testRun.test_id | limitTo: 80 }}</td>
|
|
<td><a href="{{ testRun.link }}">{{ testRun.link | limitTo: -30 }}</a></td>
|
|
<td>{{ testRun.start_time }}</td>
|
|
<td>{{ testRun.stop_time }}</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="row">
|
|
<div class="col-lg-12">
|
|
<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 {{ home.groupKey }}"
|
|
ng-model="home.searchProject"
|
|
ng-model-options="{debounce: 250}"
|
|
ng-change="home.onSearchChange()">
|
|
</div>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
<div class="col-lg-4" ng-repeat="project in home.projects | filter:home.searchProject">
|
|
<div class="panel panel-default">
|
|
<div class="panel-heading">
|
|
<a ui-sref="groupedRuns({ runMetadataKey: home.groupKey, name: project.name })">
|
|
<h3 class="panel-title">{{project.name}}</h3>
|
|
</a>
|
|
</div>
|
|
<div class="panel-body">
|
|
<chart-gauge data="project.data" width="100%" height="250"></chart-gauge>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|