зеркало из https://github.com/mozilla/treeherder.git
79 строки
4.1 KiB
HTML
79 строки
4.1 KiB
HTML
<!DOCTYPE html>
|
|
<html ng-app="logViewer">
|
|
<head>
|
|
<title>Treeherder Log Viewer </title>
|
|
<!-- build:css css/logviewer.min.css -->
|
|
<link href="css/bootstrap.css" rel="stylesheet" media="screen">
|
|
<link href="css/treeherder.css" rel="stylesheet" type="text/css">
|
|
<!-- endbuild -->
|
|
</head>
|
|
<body ng-controller="LogviewerCtrl" ng-init="init()">
|
|
<div class="container">
|
|
<div class="row">
|
|
<div class="col-md-6">
|
|
<table class="table table-condensed">
|
|
<tr ng-repeat="(label, value) in artifact.header">
|
|
<th>{{label}}</th><td>{{value}}</td>
|
|
</tr>
|
|
</table>
|
|
<p>Select one of these steps to see more details:</p>
|
|
<div ng-repeat="step in artifact.step_data.steps"
|
|
ng-class="{'btn-warning': (step.error_count > 0), 'btn-success': (step.error_count == 0)}"
|
|
ng-click="displayLog(step)"
|
|
class="btn btn-block logviewer-step clearfix">
|
|
<span class="pull-left clearfix">{{step.order+1}}. {{step.name}}</span>
|
|
<span ng-init="time=formatTime(step.duration)"
|
|
ng-mouseover="time=displayTime(step.started, step.finished)"
|
|
ng-mouseleave="time=formatTime(step.duration)"
|
|
class="pull-right clearfix">{{time}}</span>
|
|
<div ng-switch on="(step.error_count > 0)">
|
|
<p ng-switch-when="true" class="">
|
|
<div ng-repeat="error in step.errors"
|
|
ng-mouseover="check=(step==displayedStep)"
|
|
ng-mouseleave="check=false"
|
|
ng-class="{'lv-line-highlight': check}"
|
|
ng-click="scrollTo(step, error.linenumber);
|
|
$event.stopPropagation()"
|
|
class="text-left pull-left lv-error-line">
|
|
<span class="label label-default lv-line-no">{{error.linenumber}}</span>
|
|
<span title="{{error.line}}">{{error.line | limitTo: 67}}</span><span ng-if="error.line.length > 70">...</span>
|
|
</div>
|
|
</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="col-md-6 lv-log-container container well"
|
|
id="lv-log-container">
|
|
<div ng-repeat="lv_line in displayedStep.logPieces"
|
|
ng-class="{'text-danger': (lv_line.hasError == true)}"
|
|
class="lv-log-line"
|
|
id="lv-line-{{ lv_line.errLine }}">
|
|
{{ lv_line.text }}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<!-- build:js js/logviewer.min.js -->
|
|
<script src="vendor/angular/angular.js"></script>
|
|
<script src="vendor/angular/angular-route.js"></script>
|
|
<script src="vendor/angular/angular-resource.js"></script>
|
|
<script src="vendor/angular/angular-cookies.js"></script>
|
|
<script src="vendor/angular-local-storage.min.js"></script>
|
|
<script src="vendor/zeroclipboard/ZeroClipboard.min.js"></script>
|
|
<script src="vendor/ng-clip.min.js"></script>
|
|
<script src="vendor/underscore-min.js"></script>
|
|
<script src="vendor/ui-bootstrap-tpls-0.10.0.min.js"></script>
|
|
<script src="vendor/jquery-2.0.3.js"></script>
|
|
<script src="vendor/bootstrap.js"></script>
|
|
<script src="vendor/angular/angular-sanitize.min.js"></script>
|
|
<script src="js/config/local.conf.js"></script>
|
|
<script src="js/app.js"></script>
|
|
<script src="js/services/main.js"></script>
|
|
<script src="js/services/log.js"></script>
|
|
<script src="js/models/job_artifact.js"></script>
|
|
<script src="js/providers.js"></script>
|
|
<script src="js/controllers/logviewer.js"></script>
|
|
<!-- endbuild -->
|
|
</body>
|
|
</html>
|