diff options
Diffstat (limited to 'web-app/static/index.html')
-rw-r--r-- | web-app/static/index.html | 176 |
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> |