summaryrefslogtreecommitdiff
path: root/web-app/static/index.html
diff options
context:
space:
mode:
Diffstat (limited to 'web-app/static/index.html')
-rw-r--r--web-app/static/index.html176
1 files changed, 175 insertions, 1 deletions
diff --git a/web-app/static/index.html b/web-app/static/index.html
index d0a1030..3a88b88 100644
--- a/web-app/static/index.html
+++ b/web-app/static/index.html
@@ -1,3 +1,177 @@
<html>
-<body>Hello, world!</body>
+<head>
+ <link href='http://fonts.googleapis.com/css?family=Merriweather+Sans:400,700' rel='stylesheet' type='text/css'>
+ <link href='http://code.jquery.com/ui/1.11.4/themes/overcast/jquery-ui.css' rel='stylesheet' type='text/css'>
+
+ <script type='text/javascript' src="http://code.jquery.com/jquery-2.1.4.min.js"></script>
+ <script type='text/javascript' src="http://code.jquery.com/ui/1.11.4/jquery-ui.min.js"></script>
+ <script type='text/javascript' src="http://canvasjs.com/assets/script/canvasjs.min.js"></script>
+
+ <style>
+ h1,h2,h3 { font-family: ‘Merriweather Sans’, Arial, serif; font-weight: 700; }
+ BODY { font-family: ‘Merriweather Sans’, Arial, serif; font-weight: 400; }
+ </style>
+
+<script type="text/javascript">
+window.onload = function () {
+
+ // ubuntu/trusty
+ $.getJSON( "/results/tempest/operating-system/ubuntu/trusty?count=60", function( data ) {
+
+ var failureDataPoints = [];
+ var skippedDataPoints = [];
+ var passingDataPoints = [];
+
+ $.each(data, function (index,value) {
+ if (value['t.all_tests'] > 0) {
+ failureDataPoints.unshift({label: value['t.lava_job'], y: value['t.failing_tests']});
+ skippedDataPoints.unshift({label: value['t.lava_job'], y: value['t.skipped_tests']});
+ passingDataPoints.unshift({label: value['t.lava_job'], y: value['t.passing_tests']});
+ }
+ });
+
+ var chart = new CanvasJS.Chart("chartTrustyOverview",
+ {
+ title:{
+ text: "Tempest Results For \"ubuntu/trusty\" (most recent 60)"
+ },
+ legend: {
+ cursor: "pointer",
+ itemclick: function (e) {
+ //console.log("legend click: " + e.dataPointIndex);
+ //console.log(e);
+ if (typeof (e.dataSeries.visible) === "undefined" || e.dataSeries.visible) {
+ e.dataSeries.visible = false;
+ } else {
+ e.dataSeries.visible = true;
+ }
+
+ e.chart.render();
+ }
+ },
+ axisX:{prefix: "Job " },
+ toolTip:{
+ content: function(e){
+ var content;
+ content = e.entries[0].dataSeries.name + " <strong>"+e.entries[0].dataPoint.y ;
+ return content;
+ }
+ },
+ animationEnabled: true, zoomEnabled: true,
+ data: [
+ {
+ name: "Skipped Tests", showInLegend: true,
+ type: "stackedColumn",
+ color: "rgba(54,158,173,.7)",
+ dataPoints: skippedDataPoints
+ },
+ {
+ name: "Failing Tests", showInLegend: true,
+ type: "stackedColumn",
+ color: "rgba(194,70,66,.7)",
+ dataPoints: failureDataPoints
+ },
+ {
+ name: "Passing Tests", showInLegend: true,
+ type: "stackedColumn",
+ color: "rgba(54,200,30,.7)",
+ dataPoints: passingDataPoints
+ }
+ ]
+ });
+
+ chart.render();
+ });
+
+
+
+ // ubuntu/vivid
+ $.getJSON( "/results/tempest/operating-system/ubuntu/vivid?count=60", function( data ) {
+
+ var failureDataPoints = [];
+ var skippedDataPoints = [];
+ var passingDataPoints = [];
+
+ $.each(data, function (index,value) {
+ if (value['t.all_tests'] > 0) {
+ failureDataPoints.unshift({label: value['t.lava_job'], y: value['t.failing_tests']});
+ skippedDataPoints.unshift({label: value['t.lava_job'], y: value['t.skipped_tests']});
+ passingDataPoints.unshift({label: value['t.lava_job'], y: value['t.passing_tests']});
+ }
+ });
+
+ var chart = new CanvasJS.Chart("chartVividOverview",
+ {
+ title:{
+ text: "Tempest Results For \"ubuntu/vivid\" (most recent 60)"
+ },
+legend: {
+ cursor: "pointer",
+ itemclick: function (e) {
+ //console.log("legend click: " + e.dataPointIndex);
+ //console.log(e);
+ if (typeof (e.dataSeries.visible) === "undefined" || e.dataSeries.visible) {
+ e.dataSeries.visible = false;
+ } else {
+ e.dataSeries.visible = true;
+ }
+
+ e.chart.render();
+ }
+ },
+ axisX:{prefix: "Job " },
+ toolTip:{
+ content: function(e){
+ var content;
+ content = e.entries[0].dataSeries.name + " <strong>"+e.entries[0].dataPoint.y ;
+ return content;
+ }
+ },
+ animationEnabled: true, zoomEnabled: true,
+ data: [
+ {
+
+ click: function(e){
+ alert( "dataSeries Event => Type: "+ e.dataSeries.type+ ", dataPoint { x:" + e.dataPoint.x + ", y: "+ e.dataPoint.y + " }" );
+ },
+ name: "Skipped Tests", showInLegend: true,
+ type: "stackedColumn",
+ color: "rgba(54,158,173,.7)",
+ dataPoints: skippedDataPoints
+ },
+ {
+ name: "Failing Tests", showInLegend: true,
+ type: "stackedColumn",
+ color: "rgba(194,70,66,.7)",
+ dataPoints: failureDataPoints
+ },
+ {
+ name: "Passing Tests", showInLegend: true,
+ type: "stackedColumn",
+ color: "rgba(54,200,30,.7)",
+ dataPoints: passingDataPoints
+ }
+ ]
+ });
+
+ chart.render();
+ });
+
+
+ }
+ </script>
+
+
+</head>
+<body>
+<img src="http://www.linaro.org/app/images/linaro-logo-web.png"/>
+<h1>Linaro Openstack CI</h1>
+
+<p>
+Linaro runs Openstack Tempest on arm64 on a nighty schedule. For more information on the hardware and test methodology, see <a href="https://wiki.linaro.org/OpenStack/OpenstackTempestCI">https://wiki.linaro.org/OpenStack/OpenstackTempestCI</a>.
+</p>
+<p>In the charts below, you can click on the data series labels in the chart legends to show/hide the series.</p>
+<div id="chartTrustyOverview" style="height: 450px; width: 90%;"></div>
+<div id="chartVividOverview" style="height: 450px; width: 90%;"></div>
+</body>
</html>