diff options
63 files changed, 5351 insertions, 349 deletions
diff --git a/docs/results/danube/1.0/apex.html b/docs/results/danube/1.0/apex.html new file mode 100644 index 000000000..2ef0a197f --- /dev/null +++ b/docs/results/danube/1.0/apex.html @@ -0,0 +1,919 @@ + <html> + <head> + <meta charset="utf-8"> + <!-- Bootstrap core CSS --> + <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css" rel="stylesheet"> + <link href="../../js/default.css" rel="stylesheet"> + <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script> + <script type="text/javascript" src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script> + <script type="text/javascript" src="http://d3js.org/d3.v2.min.js"></script> + <script type="text/javascript" src="../../js/gauge.js"></script> + <script type="text/javascript" src="../../js/trend.js"></script> + <script> + function onDocumentReady() { + // Gauge management + var gaugeScenario1 = gauge('#gaugeScenario1');var gaugeScenario2 = gauge('#gaugeScenario2');var gaugeScenario3 = gauge('#gaugeScenario3');var gaugeScenario4 = gauge('#gaugeScenario4');var gaugeScenario5 = gauge('#gaugeScenario5');var gaugeScenario6 = gauge('#gaugeScenario6');var gaugeScenario7 = gauge('#gaugeScenario7');var gaugeScenario8 = gauge('#gaugeScenario8');var gaugeScenario9 = gauge('#gaugeScenario9');var gaugeScenario10 = gauge('#gaugeScenario10');var gaugeScenario11 = gauge('#gaugeScenario11');var gaugeScenario12 = gauge('#gaugeScenario12'); + + // assign success rate to the gauge + function updateReadings() { + gaugeScenario1.update(50.0);gaugeScenario2.update(83.3333333333);gaugeScenario3.update(83.3333333333);gaugeScenario4.update(66.6666666667);gaugeScenario5.update(58.3333333333);gaugeScenario6.update(96.9696969697);gaugeScenario7.update(20.0);gaugeScenario8.update(81.8181818182);gaugeScenario9.update(6.06060606061);gaugeScenario10.update(6.06060606061);gaugeScenario11.update(80.5555555556);gaugeScenario12.update(100.0); + } + updateReadings(); + } + + // trend line management + d3.csv("./scenario_history.txt", function(data) { + // *************************************** + // Create the trend line + // for scenario os-nosdn-fdio-noha + // Filter results + var trend1 = data.filter(function(row) { + return row["scenario"]=="os-nosdn-fdio-noha" && row["installer"]=="apex"; + }) + // Parse the date + trend1.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg1",trend1) + // ****************************************// for scenario os-odl-gluon-noha + // Filter results + var trend2 = data.filter(function(row) { + return row["scenario"]=="os-odl-gluon-noha" && row["installer"]=="apex"; + }) + // Parse the date + trend2.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg2",trend2) + // ****************************************// for scenario os-odl_l2-fdio-noha + // Filter results + var trend3 = data.filter(function(row) { + return row["scenario"]=="os-odl_l2-fdio-noha" && row["installer"]=="apex"; + }) + // Parse the date + trend3.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg3",trend3) + // ****************************************// for scenario os-odl_l3-fdio-noha + // Filter results + var trend4 = data.filter(function(row) { + return row["scenario"]=="os-odl_l3-fdio-noha" && row["installer"]=="apex"; + }) + // Parse the date + trend4.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg4",trend4) + // ****************************************// for scenario os-odl-bgpvpn-ha + // Filter results + var trend5 = data.filter(function(row) { + return row["scenario"]=="os-odl-bgpvpn-ha" && row["installer"]=="apex"; + }) + // Parse the date + trend5.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg5",trend5) + // ****************************************// for scenario os-nosdn-kvm-ha + // Filter results + var trend6 = data.filter(function(row) { + return row["scenario"]=="os-nosdn-kvm-ha" && row["installer"]=="apex"; + }) + // Parse the date + trend6.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg6",trend6) + // ****************************************// for scenario os-nosdn-fdio-ha + // Filter results + var trend7 = data.filter(function(row) { + return row["scenario"]=="os-nosdn-fdio-ha" && row["installer"]=="apex"; + }) + // Parse the date + trend7.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg7",trend7) + // ****************************************// for scenario os-odl_l3-nofeature-ha + // Filter results + var trend8 = data.filter(function(row) { + return row["scenario"]=="os-odl_l3-nofeature-ha" && row["installer"]=="apex"; + }) + // Parse the date + trend8.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg8",trend8) + // ****************************************// for scenario os-odl_l3-ovs-ha + // Filter results + var trend9 = data.filter(function(row) { + return row["scenario"]=="os-odl_l3-ovs-ha" && row["installer"]=="apex"; + }) + // Parse the date + trend9.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg9",trend9) + // ****************************************// for scenario os-nosdn-ovs-ha + // Filter results + var trend10 = data.filter(function(row) { + return row["scenario"]=="os-nosdn-ovs-ha" && row["installer"]=="apex"; + }) + // Parse the date + trend10.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg10",trend10) + // ****************************************// for scenario os-odl_l2-fdio-ha + // Filter results + var trend11 = data.filter(function(row) { + return row["scenario"]=="os-odl_l2-fdio-ha" && row["installer"]=="apex"; + }) + // Parse the date + trend11.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg11",trend11) + // ****************************************// for scenario os-nosdn-nofeature-ha + // Filter results + var trend12 = data.filter(function(row) { + return row["scenario"]=="os-nosdn-nofeature-ha" && row["installer"]=="apex"; + }) + // Parse the date + trend12.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg12",trend12) + // **************************************** + }); + if ( !window.isLoaded ) { + window.addEventListener("load", function() { + onDocumentReady(); + }, false); + } else { + onDocumentReady(); + } +</script> +<script type="text/javascript"> +$(document).ready(function (){ + $(".btn-more").click(function() { + $(this).hide(); + $(this).parent().find(".panel-default").show(); + }); +}) +</script> + + </head> + <body> + <div class="container"> + <div class="masthead"> + <h3 class="text-muted">Functest Danube 1.0 status page (2017-03-31 01:45)</h3> + <nav> + <ul class="nav nav-justified"> + <li class="active"><a href="http://testresults.opnfv.org/reporting/index.html">Home</a></li> + <li><a href="./apex.html">Apex</a></li> + <li><a href="./compass.html">Compass</a></li> + <li><a href="./fuel.html">Fuel</a></li> + <li><a href="./joid.html">Joid</a></li> + </ul> + </nav> + </div> +<div class="row"> + <div class="col-md-1"></div> + <div class="col-md-10"> + <div class="page-header"> + <h2>apex</h2> + </div> + + <div class="scenario-overview"> + <div class="panel-heading"><h4><b>List of last scenarios (danube) run over the last 10 days </b></h4></div> + <table class="table"> + <tr> + <th width="40%">Scenario</th> + <th width="20%">Status</th> + <th width="20%">Trend</th> + <th width="10%">Score</th> + <th width="10%">Iteration</th> + </tr> + <tr class="tr-ok"> + <td><a href=http://testresultS.opnfv.org/reporting>os-nosdn-fdio-noha</a></td> + <td><div id="gaugeScenario1"></div></td> + <td><div id="trend_svg1"></div></td> + <td>15/30</td> + <td>2</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-apex-apex-daily-danube-daily-danube/71/console>os-odl-gluon-noha</a></td> + <td><div id="gaugeScenario2"></div></td> + <td><div id="trend_svg2"></div></td> + <td>30/36</td> + <td>6</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-apex-apex-daily-danube-daily-danube/72/console>os-odl_l2-fdio-noha</a></td> + <td><div id="gaugeScenario3"></div></td> + <td><div id="trend_svg3"></div></td> + <td>30/36</td> + <td>14</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-apex-apex-daily-danube-daily-danube/75/console>os-odl_l3-fdio-noha</a></td> + <td><div id="gaugeScenario4"></div></td> + <td><div id="trend_svg4"></div></td> + <td>20/30</td> + <td>5</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-apex-apex-daily-danube-daily-danube/70/console>os-odl-bgpvpn-ha</a></td> + <td><div id="gaugeScenario5"></div></td> + <td><div id="trend_svg5"></div></td> + <td>21/36</td> + <td>6</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-apex-apex-daily-danube-daily-danube/74/console>os-nosdn-kvm-ha</a></td> + <td><div id="gaugeScenario6"></div></td> + <td><div id="trend_svg6"></div></td> + <td>32/33</td> + <td>5</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-apex-apex-daily-danube-daily-danube/76/console>os-nosdn-fdio-ha</a></td> + <td><div id="gaugeScenario7"></div></td> + <td><div id="trend_svg7"></div></td> + <td>6/30</td> + <td>4</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-apex-apex-daily-danube-daily-danube/69/console>os-odl_l3-nofeature-ha</a></td> + <td><div id="gaugeScenario8"></div></td> + <td><div id="trend_svg8"></div></td> + <td>27/33</td> + <td>6</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-apex-apex-daily-danube-daily-danube/78/console>os-odl_l3-ovs-ha</a></td> + <td><div id="gaugeScenario9"></div></td> + <td><div id="trend_svg9"></div></td> + <td>2/33</td> + <td>1</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-apex-apex-daily-danube-daily-danube/77/console>os-nosdn-ovs-ha</a></td> + <td><div id="gaugeScenario10"></div></td> + <td><div id="trend_svg10"></div></td> + <td>2/33</td> + <td>1</td> + </tr><tr class="tr-ok"> + <td><a href=http://testresultS.opnfv.org/reporting>os-odl_l2-fdio-ha</a></td> + <td><div id="gaugeScenario11"></div></td> + <td><div id="trend_svg11"></div></td> + <td>29/36</td> + <td>8</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-apex-apex-daily-danube-daily-danube/79/console>os-nosdn-nofeature-ha</a></td> + <td><div id="gaugeScenario12"></div></td> + <td><div id="trend_svg12"></div></td> + <td>33/33</td> + <td>6</td> + </tr> + </table> + </div> + + + <div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-nosdn-fdio-noha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (ssh) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + SNAPS + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-overcast.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-few-clouds.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-odl-gluon-noha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + ODL + + </th><th> + SNAPS + + </th><th> + Doctor + + </th><th> + Domino + + </th><th> + Netready + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-few-clouds.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-odl_l2-fdio-noha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (ssh) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + ODL + + </th><th> + FDS + + </th><th> + SNAPS + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-overcast.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-odl_l3-fdio-noha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + ODL + + </th><th> + SNAPS + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-few-clouds.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-odl-bgpvpn-ha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + ODL + + </th><th> + SNAPS + + </th><th> + Doctor + + </th><th> + bgpvpn + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-few-clouds.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-nosdn-kvm-ha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (ssh) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + SNAPS + + </th><th> + Doctor + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-nosdn-fdio-ha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (ssh) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + SNAPS + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-odl_l3-nofeature-ha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + ODL + + </th><th> + SNAPS + + </th><th> + Doctor + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-overcast.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-odl_l3-ovs-ha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + ODL + + </th><th> + SNAPS + + </th><th> + Doctor + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-overcast.png"></td><td><img src="../../img/weather-overcast.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-nosdn-ovs-ha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (ssh) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + SNAPS + + </th><th> + Doctor + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-overcast.png"></td><td><img src="../../img/weather-overcast.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-odl_l2-fdio-ha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (ssh) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + ODL + + </th><th> + FDS + + </th><th> + SNAPS + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-overcast.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-nosdn-nofeature-ha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (ssh) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + SNAPS + + </th><th> + Doctor + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td> + </tr> + </table> + </div> + </div> + see <a href="https://wiki.opnfv.org/pages/viewpage.action?pageId=6828617">Functest scoring wiki page</a> for details on scenario scoring + </div> + <div class="col-md-1"></div> +</div> diff --git a/docs/results/danube/1.0/compass.html b/docs/results/danube/1.0/compass.html new file mode 100644 index 000000000..954793069 --- /dev/null +++ b/docs/results/danube/1.0/compass.html @@ -0,0 +1,490 @@ + <html> + <head> + <meta charset="utf-8"> + <!-- Bootstrap core CSS --> + <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css" rel="stylesheet"> + <link href="../../js/default.css" rel="stylesheet"> + <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script> + <script type="text/javascript" src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script> + <script type="text/javascript" src="http://d3js.org/d3.v2.min.js"></script> + <script type="text/javascript" src="../../js/gauge.js"></script> + <script type="text/javascript" src="../../js/trend.js"></script> + <script> + function onDocumentReady() { + // Gauge management + var gaugeScenario1 = gauge('#gaugeScenario1');var gaugeScenario2 = gauge('#gaugeScenario2');var gaugeScenario3 = gauge('#gaugeScenario3');var gaugeScenario4 = gauge('#gaugeScenario4');var gaugeScenario5 = gauge('#gaugeScenario5');var gaugeScenario6 = gauge('#gaugeScenario6'); + + // assign success rate to the gauge + function updateReadings() { + gaugeScenario1.update(76.6666666667);gaugeScenario2.update(10.0);gaugeScenario3.update(84.8484848485);gaugeScenario4.update(84.8484848485);gaugeScenario5.update(93.3333333333);gaugeScenario6.update(96.6666666667); + } + updateReadings(); + } + + // trend line management + d3.csv("./scenario_history.txt", function(data) { + // *************************************** + // Create the trend line + // for scenario os-odl_l3-nofeature-ha + // Filter results + var trend1 = data.filter(function(row) { + return row["scenario"]=="os-odl_l3-nofeature-ha" && row["installer"]=="compass"; + }) + // Parse the date + trend1.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg1",trend1) + // ****************************************// for scenario os-ocl-nofeature-ha + // Filter results + var trend2 = data.filter(function(row) { + return row["scenario"]=="os-ocl-nofeature-ha" && row["installer"]=="compass"; + }) + // Parse the date + trend2.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg2",trend2) + // ****************************************// for scenario os-onos-nofeature-ha + // Filter results + var trend3 = data.filter(function(row) { + return row["scenario"]=="os-onos-nofeature-ha" && row["installer"]=="compass"; + }) + // Parse the date + trend3.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg3",trend3) + // ****************************************// for scenario os-odl_l2-nofeature-ha + // Filter results + var trend4 = data.filter(function(row) { + return row["scenario"]=="os-odl_l2-nofeature-ha" && row["installer"]=="compass"; + }) + // Parse the date + trend4.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg4",trend4) + // ****************************************// for scenario os-nosdn-openo-ha + // Filter results + var trend5 = data.filter(function(row) { + return row["scenario"]=="os-nosdn-openo-ha" && row["installer"]=="compass"; + }) + // Parse the date + trend5.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg5",trend5) + // ****************************************// for scenario os-nosdn-nofeature-ha + // Filter results + var trend6 = data.filter(function(row) { + return row["scenario"]=="os-nosdn-nofeature-ha" && row["installer"]=="compass"; + }) + // Parse the date + trend6.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg6",trend6) + // **************************************** + }); + if ( !window.isLoaded ) { + window.addEventListener("load", function() { + onDocumentReady(); + }, false); + } else { + onDocumentReady(); + } +</script> +<script type="text/javascript"> +$(document).ready(function (){ + $(".btn-more").click(function() { + $(this).hide(); + $(this).parent().find(".panel-default").show(); + }); +}) +</script> + + </head> + <body> + <div class="container"> + <div class="masthead"> + <h3 class="text-muted">Functest Danube 1.0 status page (2017-03-31 01:45)</h3> + <nav> + <ul class="nav nav-justified"> + <li class="active"><a href="http://testresults.opnfv.org/reporting/index.html">Home</a></li> + <li><a href="./apex.html">Apex</a></li> + <li><a href="./compass.html">Compass</a></li> + <li><a href="./fuel.html">Fuel</a></li> + <li><a href="./joid.html">Joid</a></li> + </ul> + </nav> + </div> +<div class="row"> + <div class="col-md-1"></div> + <div class="col-md-10"> + <div class="page-header"> + <h2>compass</h2> + </div> + + <div class="scenario-overview"> + <div class="panel-heading"><h4><b>List of last scenarios (danube) run over the last 10 days </b></h4></div> + <table class="table"> + <tr> + <th width="40%">Scenario</th> + <th width="20%">Status</th> + <th width="20%">Trend</th> + <th width="10%">Score</th> + <th width="10%">Iteration</th> + </tr> + <tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-compass-baremetal-daily-danube/79/console>os-odl_l3-nofeature-ha</a></td> + <td><div id="gaugeScenario1"></div></td> + <td><div id="trend_svg1"></div></td> + <td>23/30</td> + <td>18</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-compass-baremetal-daily-danube/71/console>os-ocl-nofeature-ha</a></td> + <td><div id="gaugeScenario2"></div></td> + <td><div id="trend_svg2"></div></td> + <td>3/30</td> + <td>8</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-compass-virtual-daily-danube/67/console>os-onos-nofeature-ha</a></td> + <td><div id="gaugeScenario3"></div></td> + <td><div id="trend_svg3"></div></td> + <td>28/33</td> + <td>20</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-compass-virtual-daily-danube/69/console>os-odl_l2-nofeature-ha</a></td> + <td><div id="gaugeScenario4"></div></td> + <td><div id="trend_svg4"></div></td> + <td>28/33</td> + <td>20</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-compass-baremetal-daily-danube/77/console>os-nosdn-openo-ha</a></td> + <td><div id="gaugeScenario5"></div></td> + <td><div id="trend_svg5"></div></td> + <td>28/30</td> + <td>19</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-compass-virtual-daily-danube/70/console>os-nosdn-nofeature-ha</a></td> + <td><div id="gaugeScenario6"></div></td> + <td><div id="trend_svg6"></div></td> + <td>29/30</td> + <td>19</td> + </tr> + </table> + </div> + + + <div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-odl_l3-nofeature-ha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + ODL + + </th><th> + SNAPS + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-overcast.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-clear.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-ocl-nofeature-ha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (ssh) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + SNAPS + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-onos-nofeature-ha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (ssh) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + ONOS + + </th><th> + SNAPS + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-clear.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-odl_l2-nofeature-ha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (ssh) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + ODL + + </th><th> + SNAPS + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-clear.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-nosdn-openo-ha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (ssh) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + SNAPS + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-clear.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-nosdn-nofeature-ha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (ssh) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + SNAPS + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-clear.png"></td> + </tr> + </table> + </div> + </div> + see <a href="https://wiki.opnfv.org/pages/viewpage.action?pageId=6828617">Functest scoring wiki page</a> for details on scenario scoring + </div> + <div class="col-md-1"></div> +</div> diff --git a/docs/results/danube/1.0/fuel.html b/docs/results/danube/1.0/fuel.html new file mode 100644 index 000000000..3d08e7d01 --- /dev/null +++ b/docs/results/danube/1.0/fuel.html @@ -0,0 +1,1444 @@ + <html> + <head> + <meta charset="utf-8"> + <!-- Bootstrap core CSS --> + <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css" rel="stylesheet"> + <link href="../../js/default.css" rel="stylesheet"> + <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script> + <script type="text/javascript" src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script> + <script type="text/javascript" src="http://d3js.org/d3.v2.min.js"></script> + <script type="text/javascript" src="../../js/gauge.js"></script> + <script type="text/javascript" src="../../js/trend.js"></script> + <script> + function onDocumentReady() { + // Gauge management + var gaugeScenario1 = gauge('#gaugeScenario1');var gaugeScenario2 = gauge('#gaugeScenario2');var gaugeScenario3 = gauge('#gaugeScenario3');var gaugeScenario4 = gauge('#gaugeScenario4');var gaugeScenario5 = gauge('#gaugeScenario5');var gaugeScenario6 = gauge('#gaugeScenario6');var gaugeScenario7 = gauge('#gaugeScenario7');var gaugeScenario8 = gauge('#gaugeScenario8');var gaugeScenario9 = gauge('#gaugeScenario9');var gaugeScenario10 = gauge('#gaugeScenario10');var gaugeScenario11 = gauge('#gaugeScenario11');var gaugeScenario12 = gauge('#gaugeScenario12');var gaugeScenario13 = gauge('#gaugeScenario13');var gaugeScenario14 = gauge('#gaugeScenario14');var gaugeScenario15 = gauge('#gaugeScenario15');var gaugeScenario16 = gauge('#gaugeScenario16');var gaugeScenario17 = gauge('#gaugeScenario17');var gaugeScenario18 = gauge('#gaugeScenario18'); + + // assign success rate to the gauge + function updateReadings() { + gaugeScenario1.update(100.0);gaugeScenario2.update(14.2857142857);gaugeScenario3.update(97.4358974359);gaugeScenario4.update(100.0);gaugeScenario5.update(15.3846153846);gaugeScenario6.update(83.3333333333);gaugeScenario7.update(79.4871794872);gaugeScenario8.update(100.0);gaugeScenario9.update(100.0);gaugeScenario10.update(92.3076923077);gaugeScenario11.update(88.0952380952);gaugeScenario12.update(95.5555555556);gaugeScenario13.update(100.0);gaugeScenario14.update(88.0952380952);gaugeScenario15.update(100.0);gaugeScenario16.update(94.8717948718);gaugeScenario17.update(97.2222222222);gaugeScenario18.update(97.4358974359); + } + updateReadings(); + } + + // trend line management + d3.csv("./scenario_history.txt", function(data) { + // *************************************** + // Create the trend line + // for scenario os-nosdn-kvm_ovs_dpdk-noha + // Filter results + var trend1 = data.filter(function(row) { + return row["scenario"]=="os-nosdn-kvm_ovs_dpdk-noha" && row["installer"]=="fuel"; + }) + // Parse the date + trend1.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg1",trend1) + // ****************************************// for scenario os-nosdn-kvm_ovs_dpdk_bar-ha + // Filter results + var trend2 = data.filter(function(row) { + return row["scenario"]=="os-nosdn-kvm_ovs_dpdk_bar-ha" && row["installer"]=="fuel"; + }) + // Parse the date + trend2.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg2",trend2) + // ****************************************// for scenario os-nosdn-ovs-ha + // Filter results + var trend3 = data.filter(function(row) { + return row["scenario"]=="os-nosdn-ovs-ha" && row["installer"]=="fuel"; + }) + // Parse the date + trend3.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg3",trend3) + // ****************************************// for scenario os-nosdn-ovs-noha + // Filter results + var trend4 = data.filter(function(row) { + return row["scenario"]=="os-nosdn-ovs-noha" && row["installer"]=="fuel"; + }) + // Parse the date + trend4.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg4",trend4) + // ****************************************// for scenario os-nosdn-kvm_ovs_dpdk-ha + // Filter results + var trend5 = data.filter(function(row) { + return row["scenario"]=="os-nosdn-kvm_ovs_dpdk-ha" && row["installer"]=="fuel"; + }) + // Parse the date + trend5.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg5",trend5) + // ****************************************// for scenario os-odl_l2-sfc-noha + // Filter results + var trend6 = data.filter(function(row) { + return row["scenario"]=="os-odl_l2-sfc-noha" && row["installer"]=="fuel"; + }) + // Parse the date + trend6.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg6",trend6) + // ****************************************// for scenario os-odl_l3-nofeature-ha + // Filter results + var trend7 = data.filter(function(row) { + return row["scenario"]=="os-odl_l3-nofeature-ha" && row["installer"]=="fuel"; + }) + // Parse the date + trend7.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg7",trend7) + // ****************************************// for scenario os-nosdn-kvm-noha + // Filter results + var trend8 = data.filter(function(row) { + return row["scenario"]=="os-nosdn-kvm-noha" && row["installer"]=="fuel"; + }) + // Parse the date + trend8.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg8",trend8) + // ****************************************// for scenario os-nosdn-nofeature-noha + // Filter results + var trend9 = data.filter(function(row) { + return row["scenario"]=="os-nosdn-nofeature-noha" && row["installer"]=="fuel"; + }) + // Parse the date + trend9.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg9",trend9) + // ****************************************// for scenario os-odl_l2-nofeature-noha + // Filter results + var trend10 = data.filter(function(row) { + return row["scenario"]=="os-odl_l2-nofeature-noha" && row["installer"]=="fuel"; + }) + // Parse the date + trend10.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg10",trend10) + // ****************************************// for scenario os-odl_l2-bgpvpn-ha + // Filter results + var trend11 = data.filter(function(row) { + return row["scenario"]=="os-odl_l2-bgpvpn-ha" && row["installer"]=="fuel"; + }) + // Parse the date + trend11.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg11",trend11) + // ****************************************// for scenario os-odl_l2-sfc-ha + // Filter results + var trend12 = data.filter(function(row) { + return row["scenario"]=="os-odl_l2-sfc-ha" && row["installer"]=="fuel"; + }) + // Parse the date + trend12.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg12",trend12) + // ****************************************// for scenario os-nosdn-kvm_ovs_dpdk_bar-noha + // Filter results + var trend13 = data.filter(function(row) { + return row["scenario"]=="os-nosdn-kvm_ovs_dpdk_bar-noha" && row["installer"]=="fuel"; + }) + // Parse the date + trend13.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg13",trend13) + // ****************************************// for scenario os-odl_l2-bgpvpn-noha + // Filter results + var trend14 = data.filter(function(row) { + return row["scenario"]=="os-odl_l2-bgpvpn-noha" && row["installer"]=="fuel"; + }) + // Parse the date + trend14.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg14",trend14) + // ****************************************// for scenario os-odl_l2-nofeature-ha + // Filter results + var trend15 = data.filter(function(row) { + return row["scenario"]=="os-odl_l2-nofeature-ha" && row["installer"]=="fuel"; + }) + // Parse the date + trend15.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg15",trend15) + // ****************************************// for scenario os-nosdn-kvm-ha + // Filter results + var trend16 = data.filter(function(row) { + return row["scenario"]=="os-nosdn-kvm-ha" && row["installer"]=="fuel"; + }) + // Parse the date + trend16.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg16",trend16) + // ****************************************// for scenario os-odl_l3-nofeature-noha + // Filter results + var trend17 = data.filter(function(row) { + return row["scenario"]=="os-odl_l3-nofeature-noha" && row["installer"]=="fuel"; + }) + // Parse the date + trend17.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg17",trend17) + // ****************************************// for scenario os-nosdn-nofeature-ha + // Filter results + var trend18 = data.filter(function(row) { + return row["scenario"]=="os-nosdn-nofeature-ha" && row["installer"]=="fuel"; + }) + // Parse the date + trend18.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg18",trend18) + // **************************************** + }); + if ( !window.isLoaded ) { + window.addEventListener("load", function() { + onDocumentReady(); + }, false); + } else { + onDocumentReady(); + } +</script> +<script type="text/javascript"> +$(document).ready(function (){ + $(".btn-more").click(function() { + $(this).hide(); + $(this).parent().find(".panel-default").show(); + }); +}) +</script> + + </head> + <body> + <div class="container"> + <div class="masthead"> + <h3 class="text-muted">Functest Danube 1.0 status page (2017-03-31 01:45)</h3> + <nav> + <ul class="nav nav-justified"> + <li class="active"><a href="http://testresults.opnfv.org/reporting/index.html">Home</a></li> + <li><a href="./apex.html">Apex</a></li> + <li><a href="./compass.html">Compass</a></li> + <li><a href="./fuel.html">Fuel</a></li> + <li><a href="./joid.html">Joid</a></li> + </ul> + </nav> + </div> +<div class="row"> + <div class="col-md-1"></div> + <div class="col-md-10"> + <div class="page-header"> + <h2>fuel</h2> + </div> + + <div class="scenario-overview"> + <div class="panel-heading"><h4><b>List of last scenarios (danube) run over the last 10 days </b></h4></div> + <table class="table"> + <tr> + <th width="40%">Scenario</th> + <th width="20%">Status</th> + <th width="20%">Trend</th> + <th width="10%">Score</th> + <th width="10%">Iteration</th> + </tr> + <tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-fuel-virtual-daily-danube/66/console>os-nosdn-kvm_ovs_dpdk-noha</a></td> + <td><div id="gaugeScenario1"></div></td> + <td><div id="trend_svg1"></div></td> + <td>36/36</td> + <td>7</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-fuel-baremetal-daily-danube/67/console>os-nosdn-kvm_ovs_dpdk_bar-ha</a></td> + <td><div id="gaugeScenario2"></div></td> + <td><div id="trend_svg2"></div></td> + <td>6/42</td> + <td>7</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-fuel-baremetal-daily-danube/73/console>os-nosdn-ovs-ha</a></td> + <td><div id="gaugeScenario3"></div></td> + <td><div id="trend_svg3"></div></td> + <td>38/39</td> + <td>6</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-fuel-virtual-daily-danube/64/console>os-nosdn-ovs-noha</a></td> + <td><div id="gaugeScenario4"></div></td> + <td><div id="trend_svg4"></div></td> + <td>36/36</td> + <td>8</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-fuel-baremetal-daily-danube/69/console>os-nosdn-kvm_ovs_dpdk-ha</a></td> + <td><div id="gaugeScenario5"></div></td> + <td><div id="trend_svg5"></div></td> + <td>6/39</td> + <td>7</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-fuel-virtual-daily-danube/61/console>os-odl_l2-sfc-noha</a></td> + <td><div id="gaugeScenario6"></div></td> + <td><div id="trend_svg6"></div></td> + <td>35/42</td> + <td>7</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-fuel-baremetal-daily-danube/66/console>os-odl_l3-nofeature-ha</a></td> + <td><div id="gaugeScenario7"></div></td> + <td><div id="trend_svg7"></div></td> + <td>31/39</td> + <td>6</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-fuel-virtual-daily-danube/63/console>os-nosdn-kvm-noha</a></td> + <td><div id="gaugeScenario8"></div></td> + <td><div id="trend_svg8"></div></td> + <td>36/36</td> + <td>7</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-fuel-virtual-daily-danube/65/console>os-nosdn-nofeature-noha</a></td> + <td><div id="gaugeScenario9"></div></td> + <td><div id="trend_svg9"></div></td> + <td>36/36</td> + <td>8</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-fuel-virtual-daily-danube/57/console>os-odl_l2-nofeature-noha</a></td> + <td><div id="gaugeScenario10"></div></td> + <td><div id="trend_svg10"></div></td> + <td>36/39</td> + <td>6</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-fuel-baremetal-daily-danube/70/console>os-odl_l2-bgpvpn-ha</a></td> + <td><div id="gaugeScenario11"></div></td> + <td><div id="trend_svg11"></div></td> + <td>37/42</td> + <td>8</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-fuel-baremetal-daily-danube/68/console>os-odl_l2-sfc-ha</a></td> + <td><div id="gaugeScenario12"></div></td> + <td><div id="trend_svg12"></div></td> + <td>43/45</td> + <td>7</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-fuel-virtual-daily-danube/68/console>os-nosdn-kvm_ovs_dpdk_bar-noha</a></td> + <td><div id="gaugeScenario13"></div></td> + <td><div id="trend_svg13"></div></td> + <td>39/39</td> + <td>7</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-fuel-virtual-daily-danube/62/console>os-odl_l2-bgpvpn-noha</a></td> + <td><div id="gaugeScenario14"></div></td> + <td><div id="trend_svg14"></div></td> + <td>37/42</td> + <td>8</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-fuel-zte-pod1-daily-danube/6/console>os-odl_l2-nofeature-ha</a></td> + <td><div id="gaugeScenario15"></div></td> + <td><div id="trend_svg15"></div></td> + <td>42/42</td> + <td>11</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-fuel-baremetal-daily-danube/71/console>os-nosdn-kvm-ha</a></td> + <td><div id="gaugeScenario16"></div></td> + <td><div id="trend_svg16"></div></td> + <td>37/39</td> + <td>12</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-fuel-virtual-daily-danube/67/console>os-odl_l3-nofeature-noha</a></td> + <td><div id="gaugeScenario17"></div></td> + <td><div id="trend_svg17"></div></td> + <td>35/36</td> + <td>7</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-fuel-baremetal-daily-danube/72/console>os-nosdn-nofeature-ha</a></td> + <td><div id="gaugeScenario18"></div></td> + <td><div id="trend_svg18"></div></td> + <td>38/39</td> + <td>15</td> + </tr> + </table> + </div> + + + <div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-nosdn-kvm_ovs_dpdk-noha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (ssh) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + SNAPS + + </th><th> + Promise + + </th><th> + Doctor + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-nosdn-kvm_ovs_dpdk_bar-ha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (ssh) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + SNAPS + + </th><th> + Promise + + </th><th> + Doctor + + </th><th> + Parser + + </th><th> + Domino + + </th><th> + Barometer + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-nosdn-ovs-ha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (ssh) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + SNAPS + + </th><th> + Promise + + </th><th> + Doctor + + </th><th> + Parser + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-nosdn-ovs-noha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (ssh) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + SNAPS + + </th><th> + Promise + + </th><th> + Doctor + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-nosdn-kvm_ovs_dpdk-ha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (ssh) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + SNAPS + + </th><th> + Promise + + </th><th> + Doctor + + </th><th> + Parser + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-odl_l2-sfc-noha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (ssh) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + ODL + + </th><th> + SNAPS + + </th><th> + Promise + + </th><th> + Doctor + + </th><th> + SFC + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-clear.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-odl_l3-nofeature-ha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + ODL + + </th><th> + SNAPS + + </th><th> + Promise + + </th><th> + Doctor + + </th><th> + Parser + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-nosdn-kvm-noha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (ssh) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + SNAPS + + </th><th> + Promise + + </th><th> + Doctor + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-nosdn-nofeature-noha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (ssh) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + SNAPS + + </th><th> + Promise + + </th><th> + Doctor + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-odl_l2-nofeature-noha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (ssh) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + ODL + + </th><th> + SNAPS + + </th><th> + Promise + + </th><th> + Doctor + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-odl_l2-bgpvpn-ha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (ssh) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + ODL + + </th><th> + SNAPS + + </th><th> + Promise + + </th><th> + Doctor + + </th><th> + bgpvpn + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-clear.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-odl_l2-sfc-ha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (ssh) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + ODL + + </th><th> + SNAPS + + </th><th> + Promise + + </th><th> + Doctor + + </th><th> + SFC + + </th><th> + Parser + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-nosdn-kvm_ovs_dpdk_bar-noha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (ssh) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + SNAPS + + </th><th> + Promise + + </th><th> + Doctor + + </th><th> + Domino + + </th><th> + Barometer + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-odl_l2-bgpvpn-noha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (ssh) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + ODL + + </th><th> + SNAPS + + </th><th> + Promise + + </th><th> + Doctor + + </th><th> + bgpvpn + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-clear.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-odl_l2-nofeature-ha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (ssh) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + ODL + + </th><th> + SNAPS + + </th><th> + Promise + + </th><th> + Doctor + + </th><th> + Parser + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-nosdn-kvm-ha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (ssh) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + SNAPS + + </th><th> + Promise + + </th><th> + Doctor + + </th><th> + Parser + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-odl_l3-nofeature-noha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + ODL + + </th><th> + SNAPS + + </th><th> + Promise + + </th><th> + Doctor + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-nosdn-nofeature-ha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (ssh) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + SNAPS + + </th><th> + Promise + + </th><th> + Doctor + + </th><th> + Parser + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td> + </tr> + </table> + </div> + </div> + see <a href="https://wiki.opnfv.org/pages/viewpage.action?pageId=6828617">Functest scoring wiki page</a> for details on scenario scoring + </div> + <div class="col-md-1"></div> +</div> diff --git a/docs/results/danube/1.0/joid.html b/docs/results/danube/1.0/joid.html new file mode 100644 index 000000000..98c1e0ab9 --- /dev/null +++ b/docs/results/danube/1.0/joid.html @@ -0,0 +1,418 @@ + <html> + <head> + <meta charset="utf-8"> + <!-- Bootstrap core CSS --> + <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/css/bootstrap.min.css" rel="stylesheet"> + <link href="../../js/default.css" rel="stylesheet"> + <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script> + <script type="text/javascript" src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.4/js/bootstrap.min.js"></script> + <script type="text/javascript" src="http://d3js.org/d3.v2.min.js"></script> + <script type="text/javascript" src="../../js/gauge.js"></script> + <script type="text/javascript" src="../../js/trend.js"></script> + <script> + function onDocumentReady() { + // Gauge management + var gaugeScenario1 = gauge('#gaugeScenario1');var gaugeScenario2 = gauge('#gaugeScenario2');var gaugeScenario3 = gauge('#gaugeScenario3');var gaugeScenario4 = gauge('#gaugeScenario4');var gaugeScenario5 = gauge('#gaugeScenario5'); + + // assign success rate to the gauge + function updateReadings() { + gaugeScenario1.update(70.8333333333);gaugeScenario2.update(93.9393939394);gaugeScenario3.update(75.0);gaugeScenario4.update(96.9696969697);gaugeScenario5.update(25.0); + } + updateReadings(); + } + + // trend line management + d3.csv("./scenario_history.txt", function(data) { + // *************************************** + // Create the trend line + // for scenario os-nosdn-lxd-noha + // Filter results + var trend1 = data.filter(function(row) { + return row["scenario"]=="os-nosdn-lxd-noha" && row["installer"]=="joid"; + }) + // Parse the date + trend1.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg1",trend1) + // ****************************************// for scenario os-nosdn-nofeature-noha + // Filter results + var trend2 = data.filter(function(row) { + return row["scenario"]=="os-nosdn-nofeature-noha" && row["installer"]=="joid"; + }) + // Parse the date + trend2.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg2",trend2) + // ****************************************// for scenario os-nosdn-lxd-ha + // Filter results + var trend3 = data.filter(function(row) { + return row["scenario"]=="os-nosdn-lxd-ha" && row["installer"]=="joid"; + }) + // Parse the date + trend3.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg3",trend3) + // ****************************************// for scenario os-nosdn-nofeature-ha + // Filter results + var trend4 = data.filter(function(row) { + return row["scenario"]=="os-nosdn-nofeature-ha" && row["installer"]=="joid"; + }) + // Parse the date + trend4.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg4",trend4) + // ****************************************// for scenario os-odl_l2-nofeature-ha + // Filter results + var trend5 = data.filter(function(row) { + return row["scenario"]=="os-odl_l2-nofeature-ha" && row["installer"]=="joid"; + }) + // Parse the date + trend5.forEach(function(d) { + d.date = parseDate(d.date); + d.score = +d.score + }); + // Draw the trend line + var mytrend = trend("#trend_svg5",trend5) + // **************************************** + }); + if ( !window.isLoaded ) { + window.addEventListener("load", function() { + onDocumentReady(); + }, false); + } else { + onDocumentReady(); + } +</script> +<script type="text/javascript"> +$(document).ready(function (){ + $(".btn-more").click(function() { + $(this).hide(); + $(this).parent().find(".panel-default").show(); + }); +}) +</script> + + </head> + <body> + <div class="container"> + <div class="masthead"> + <h3 class="text-muted">Functest Danube 1.0 status page (2017-03-31 01:45)</h3> + <nav> + <ul class="nav nav-justified"> + <li class="active"><a href="http://testresults.opnfv.org/reporting/index.html">Home</a></li> + <li><a href="./apex.html">Apex</a></li> + <li><a href="./compass.html">Compass</a></li> + <li><a href="./fuel.html">Fuel</a></li> + <li><a href="./joid.html">Joid</a></li> + </ul> + </nav> + </div> +<div class="row"> + <div class="col-md-1"></div> + <div class="col-md-10"> + <div class="page-header"> + <h2>joid</h2> + </div> + + <div class="scenario-overview"> + <div class="panel-heading"><h4><b>List of last scenarios (danube) run over the last 10 days </b></h4></div> + <table class="table"> + <tr> + <th width="40%">Scenario</th> + <th width="20%">Status</th> + <th width="20%">Trend</th> + <th width="10%">Score</th> + <th width="10%">Iteration</th> + </tr> + <tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-joid-baremetal-daily-danube/57/console>os-nosdn-lxd-noha</a></td> + <td><div id="gaugeScenario1"></div></td> + <td><div id="trend_svg1"></div></td> + <td>17/24</td> + <td>6</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-joid-baremetal-daily-danube/55/console>os-nosdn-nofeature-noha</a></td> + <td><div id="gaugeScenario2"></div></td> + <td><div id="trend_svg2"></div></td> + <td>31/33</td> + <td>6</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-joid-baremetal-daily-danube/56/console>os-nosdn-lxd-ha</a></td> + <td><div id="gaugeScenario3"></div></td> + <td><div id="trend_svg3"></div></td> + <td>18/24</td> + <td>5</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-joid-baremetal-daily-danube/62/console>os-nosdn-nofeature-ha</a></td> + <td><div id="gaugeScenario4"></div></td> + <td><div id="trend_svg4"></div></td> + <td>32/33</td> + <td>6</td> + </tr><tr class="tr-ok"> + <td><a href=https://build.opnfv.org/ci/view/functest/job/functest-joid-baremetal-daily-danube/46/console>os-odl_l2-nofeature-ha</a></td> + <td><div id="gaugeScenario5"></div></td> + <td><div id="trend_svg5"></div></td> + <td>9/36</td> + <td>4</td> + </tr> + </table> + </div> + + + <div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-nosdn-lxd-noha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + vPing (ssh) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + Promise + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-nosdn-nofeature-noha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (ssh) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + SNAPS + + </th><th> + Promise + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-nosdn-lxd-ha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + vPing (ssh) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + Promise + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-nosdn-nofeature-ha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (ssh) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + SNAPS + + </th><th> + Promise + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-few-clouds.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td> + </tr> + </table> + </div> + </div><div class="scenario-part"> + <div class="page-header"> + <h3><span class="glyphicon glyphicon-chevron-right"> <b>os-odl_l2-nofeature-ha</b></h3> + </div> + <div class="panel panel-default"> + <div class="panel-heading"> + <span class="panel-header-item"> + </span> + </div> + <table class="table"> + <tr> + <th> + Health (connection) + + </th><th> + Health (api) + + </th><th> + Health (dhcp) + + </th><th> + vPing (ssh) + + </th><th> + vPing (userdata) + + </th><th> + Tempest (smoke) + + </th><th> + Rally (smoke) + + </th><th> + Refstack + + </th><th> + ODL + + </th><th> + SNAPS + + </th><th> + Promise + + </th><th> + Domino + + </th> + </tr> + <tr class="tr-weather-weather"> + <td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-clear.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td><td><img src="../../img/weather-storm.png"></td> + </tr> + </table> + </div> + </div> + see <a href="https://wiki.opnfv.org/pages/viewpage.action?pageId=6828617">Functest scoring wiki page</a> for details on scenario scoring + </div> + <div class="col-md-1"></div> +</div> diff --git a/docs/results/danube/1.0/scenario_history.txt b/docs/results/danube/1.0/scenario_history.txt new file mode 100644 index 000000000..078258e66 --- /dev/null +++ b/docs/results/danube/1.0/scenario_history.txt @@ -0,0 +1,622 @@ +date,scenario,installer,detail,score +2017-03-13 10:00,os-odl_l2-fdio-noha,apex,5/33,15.0 +2017-03-13 10:00,os-odl_l2-fdio-ha,apex,1/33,3.0 +2017-03-14 01:45,os-odl_l2-fdio-noha,apex,12/33,36.0 +2017-03-14 01:45,os-odl_l2-fdio-ha,apex,1/33,3.0 +2017-03-15 01:45,os-odl_l2-fdio-noha,apex,29/33,88.0 +2017-03-15 01:45,os-odl_l2-fdio-ha,apex,4/33,12.0 +2017-03-16 01:45,os-odl_l2-fdio-noha,apex,29/36,81.0 +2017-03-16 01:45,os-odl_l2-fdio-ha,apex,13/36,36.0 +2017-03-16 10:23,os-odl_l2-fdio-noha,apex,33/36,92.0 +2017-03-16 10:23,os-odl_l2-fdio-ha,apex,13/36,36.0 +2017-03-17 01:45,os-odl_l2-fdio-noha,apex,33/36,92.0 +2017-03-17 01:45,os-odl_l2-fdio-ha,apex,20/36,56.0 +2017-03-17 07:33,os-odl_l2-fdio-noha,apex,33/36,92.0 +2017-03-17 07:33,os-odl_l2-fdio-ha,apex,20/36,56.0 +2017-03-17 08:49,os-odl_l2-fdio-noha,apex,33/36,92.0 +2017-03-17 08:49,os-nosdn-nofeature-ha,apex,9/33,27.0 +2017-03-17 08:49,os-odl_l2-fdio-ha,apex,20/36,56.0 +2017-03-18 01:45,os-odl-gluon-noha,apex,12/39,31.0 +2017-03-18 01:45,os-odl_l2-fdio-noha,apex,33/36,92.0 +2017-03-18 01:45,os-odl_l3-fdio-noha,apex,15/30,50.0 +2017-03-18 01:45,os-odl_l3-nofeature-ha,apex,8/33,24.0 +2017-03-18 01:45,os-odl_l2-fdio-ha,apex,19/36,53.0 +2017-03-18 01:45,os-odl-bgpvpn-ha,apex,11/39,28.0 +2017-03-18 01:45,os-nosdn-nofeature-ha,apex,11/33,33.0 +2017-03-19 01:45,os-odl_l2-fdio-noha,apex,33/36,92.0 +2017-03-19 01:45,os-odl_l3-fdio-noha,apex,21/30,70.0 +2017-03-19 01:45,os-odl_l3-nofeature-ha,apex,15/33,45.0 +2017-03-19 01:45,os-odl_l2-fdio-ha,apex,19/36,53.0 +2017-03-19 01:45,os-odl-bgpvpn-ha,apex,14/39,36.0 +2017-03-19 01:45,os-nosdn-kvm-ha,apex,11/33,33.0 +2017-03-19 01:45,os-nosdn-nofeature-ha,apex,22/33,67.0 +2017-03-19 01:45,os-odl-gluon-noha,apex,22/39,56.0 +2017-03-19 01:45,os-odl_l2-fdio-noha,apex,33/36,92.0 +2017-03-19 01:45,os-odl_l3-fdio-noha,apex,21/30,70.0 +2017-03-19 01:45,os-odl_l3-nofeature-ha,apex,15/33,45.0 +2017-03-19 01:45,os-odl_l2-fdio-ha,apex,19/36,53.0 +2017-03-19 01:45,os-odl-bgpvpn-ha,apex,14/39,36.0 +2017-03-19 01:45,os-nosdn-kvm-ha,apex,11/33,33.0 +2017-03-19 01:45,os-nosdn-nofeature-ha,apex,22/33,67.0 +2017-03-20 01:45,os-odl-gluon-noha,apex,23/39,59.0 +2017-03-20 01:45,os-odl_l2-fdio-noha,apex,33/36,92.0 +2017-03-20 01:45,os-odl_l3-fdio-noha,apex,21/30,70.0 +2017-03-20 01:45,os-odl_l3-nofeature-ha,apex,15/33,45.0 +2017-03-20 01:45,os-odl_l2-fdio-ha,apex,19/36,53.0 +2017-03-20 01:45,os-nosdn-fdio-ha,apex,2/30,7.0 +2017-03-20 01:45,os-odl-bgpvpn-ha,apex,14/39,36.0 +2017-03-20 01:45,os-nosdn-kvm-ha,apex,12/33,36.0 +2017-03-20 01:45,os-nosdn-nofeature-ha,apex,22/33,67.0 +2017-03-17 01:45,os-nosdn-nofeature-ha,compass,10/30,33.0 +2017-03-17 07:33,os-ocl-nofeature-ha,compass,1/30,3.0 +2017-03-17 07:33,os-nosdn-nofeature-ha,compass,10/30,33.0 +2017-03-17 08:49,os-ocl-nofeature-ha,compass,1/30,3.0 +2017-03-17 08:49,os-nosdn-nofeature-ha,compass,10/30,33.0 +2017-03-18 01:45,os-ocl-nofeature-ha,compass,1/30,3.0 +2017-03-18 01:45,os-odl_l2-nofeature-ha,compass,20/33,61.0 +2017-03-18 01:45,os-nosdn-openo-ha,compass,10/30,33.0 +2017-03-18 01:45,os-odl_l3-nofeature-ha,compass,16/30,53.0 +2017-03-18 01:45,os-nosdn-nofeature-ha,compass,20/30,67.0 +2017-03-19 01:45,os-odl_l3-nofeature-ha,compass,25/30,83.0 +2017-03-19 01:45,os-ocl-nofeature-ha,compass,4/30,13.0 +2017-03-19 01:45,os-onos-nofeature-ha,compass,11/33,33.0 +2017-03-19 01:45,os-odl_l2-nofeature-ha,compass,26/33,79.0 +2017-03-19 01:45,os-nosdn-openo-ha,compass,10/30,33.0 +2017-03-19 01:45,os-nosdn-nofeature-ha,compass,30/30,100.0 +2017-03-20 01:45,os-odl_l3-nofeature-ha,compass,27/30,90.0 +2017-03-20 01:45,os-ocl-nofeature-ha,compass,4/30,13.0 +2017-03-20 01:45,os-onos-nofeature-ha,compass,22/33,67.0 +2017-03-20 01:45,os-odl_l2-nofeature-ha,compass,28/33,85.0 +2017-03-20 01:45,os-nosdn-openo-ha,compass,10/30,33.0 +2017-03-20 01:45,os-nosdn-nofeature-ha,compass,30/30,100.0 +2017-03-19 01:45,os-odl_l2-nofeature-ha,fuel,13/42,31.0 +2017-03-19 01:45,os-odl_l2-nofeature-ha,fuel,13/42,31.0 +2017-03-20 01:45,os-odl_l2-nofeature-ha,fuel,13/42,31.0 +2017-03-20 01:45,os-odl_l2-bgpvpn-ha,fuel,3/42,7.0 +2017-03-16 10:23,os-nosdn-nofeature-ha,joid,10/33,30.0 +2017-03-17 01:45,os-nosdn-lxd-noha,joid,13/24,54.0 +2017-03-17 01:45,os-odl_l2-nofeature-ha,joid,2/36,6.0 +2017-03-17 01:45,os-nosdn-nofeature-ha,joid,10/33,30.0 +2017-03-17 07:33,os-nosdn-lxd-noha,joid,13/24,54.0 +2017-03-17 07:33,os-odl_l2-nofeature-ha,joid,2/36,6.0 +2017-03-17 07:33,os-nosdn-nofeature-ha,joid,11/33,33.0 +2017-03-17 07:33,os-nosdn-nofeature-noha,joid,11/33,33.0 +2017-03-17 08:49,os-nosdn-lxd-noha,joid,13/24,54.0 +2017-03-17 08:49,os-odl_l2-nofeature-ha,joid,2/36,6.0 +2017-03-17 08:49,os-nosdn-nofeature-ha,joid,11/33,33.0 +2017-03-17 08:49,os-nosdn-nofeature-noha,joid,11/33,33.0 +2017-03-18 01:45,os-nosdn-lxd-noha,joid,13/24,54.0 +2017-03-18 01:45,os-odl_l2-nofeature-ha,joid,2/36,6.0 +2017-03-18 01:45,os-nosdn-nofeature-ha,joid,11/33,33.0 +2017-03-18 01:45,os-nosdn-nofeature-noha,joid,11/33,33.0 +2017-03-19 01:45,os-nosdn-lxd-noha,joid,13/24,54.0 +2017-03-19 01:45,os-odl_l2-nofeature-ha,joid,3/36,8.0 +2017-03-19 01:45,os-nosdn-lxd-ha,joid,1/24,4.0 +2017-03-19 01:45,os-nosdn-nofeature-ha,joid,11/33,33.0 +2017-03-19 01:45,os-nosdn-nofeature-noha,joid,22/33,67.0 +2017-03-20 01:45,os-nosdn-lxd-noha,joid,13/24,54.0 +2017-03-20 01:45,os-odl_l2-nofeature-ha,joid,3/36,8.0 +2017-03-20 01:45,os-nosdn-lxd-ha,joid,1/24,4.0 +2017-03-20 01:45,os-nosdn-nofeature-ha,joid,11/33,33.0 +2017-03-20 01:45,os-nosdn-nofeature-noha,joid,22/33,67.0 +2017-03-21 01:45,os-odl-gluon-noha,apex,23/39,59.0 +2017-03-21 01:45,os-odl_l2-fdio-noha,apex,32/36,89.0 +2017-03-21 01:45,os-odl_l3-fdio-noha,apex,27/30,90.0 +2017-03-21 01:45,os-odl_l3-nofeature-ha,apex,15/33,45.0 +2017-03-21 01:45,os-odl_l2-fdio-ha,apex,28/36,78.0 +2017-03-21 01:45,os-nosdn-fdio-ha,apex,4/30,13.0 +2017-03-21 01:45,os-odl-bgpvpn-ha,apex,22/39,56.0 +2017-03-21 01:45,os-nosdn-kvm-ha,apex,22/33,67.0 +2017-03-21 01:45,os-nosdn-nofeature-ha,apex,27/33,82.0 +2017-03-21 01:45,os-odl_l3-nofeature-ha,compass,27/30,90.0 +2017-03-21 01:45,os-ocl-nofeature-ha,compass,7/30,23.0 +2017-03-21 01:45,os-onos-nofeature-ha,compass,31/33,94.0 +2017-03-21 01:45,os-odl_l2-nofeature-ha,compass,30/33,91.0 +2017-03-21 01:45,os-nosdn-openo-ha,compass,20/30,67.0 +2017-03-21 01:45,os-nosdn-nofeature-ha,compass,30/30,100.0 +2017-03-21 01:45,os-odl_l3-nofeature-noha,fuel,11/36,31.0 +2017-03-21 01:45,os-nosdn-nofeature-noha,fuel,12/36,33.0 +2017-03-21 01:45,os-odl_l2-nofeature-noha,fuel,12/39,31.0 +2017-03-21 01:45,os-odl_l2-bgpvpn-ha,fuel,15/42,36.0 +2017-03-21 01:45,os-nosdn-ovs-ha,fuel,26/39,67.0 +2017-03-21 01:45,os-odl_l2-nofeature-ha,fuel,13/42,31.0 +2017-03-21 01:45,os-nosdn-nofeature-ha,fuel,26/39,67.0 +2017-03-21 01:45,os-nosdn-lxd-noha,joid,13/24,54.0 +2017-03-21 01:45,os-odl_l2-nofeature-ha,joid,3/36,8.0 +2017-03-21 01:45,os-nosdn-lxd-ha,joid,1/24,4.0 +2017-03-21 01:45,os-nosdn-nofeature-ha,joid,11/33,33.0 +2017-03-21 01:45,os-nosdn-nofeature-noha,joid,22/33,67.0 +2017-03-22 01:45,os-odl-gluon-noha,apex,34/39,87.0 +2017-03-22 01:45,os-odl_l2-fdio-noha,apex,32/36,89.0 +2017-03-22 01:45,os-odl_l3-fdio-noha,apex,27/30,90.0 +2017-03-22 01:45,os-odl_l3-nofeature-ha,apex,22/33,67.0 +2017-03-22 01:45,os-odl_l2-fdio-ha,apex,28/36,78.0 +2017-03-22 01:45,os-nosdn-fdio-ha,apex,4/30,13.0 +2017-03-22 01:45,os-odl-bgpvpn-ha,apex,25/39,64.0 +2017-03-22 01:45,os-nosdn-kvm-ha,apex,23/33,70.0 +2017-03-22 01:45,os-nosdn-nofeature-ha,apex,33/33,100.0 +2017-03-22 01:45,os-odl_l3-nofeature-ha,compass,27/30,90.0 +2017-03-22 01:45,os-ocl-nofeature-ha,compass,7/30,23.0 +2017-03-22 01:45,os-onos-nofeature-ha,compass,31/33,94.0 +2017-03-22 01:45,os-odl_l2-nofeature-ha,compass,29/33,88.0 +2017-03-22 01:45,os-nosdn-openo-ha,compass,29/30,97.0 +2017-03-22 01:45,os-nosdn-nofeature-ha,compass,29/30,97.0 +2017-03-22 01:45,os-nosdn-ovs-noha,fuel,12/36,33.0 +2017-03-22 01:45,os-odl_l3-nofeature-noha,fuel,11/36,31.0 +2017-03-22 01:45,os-odl_l2-bgpvpn-noha,fuel,12/42,29.0 +2017-03-22 01:45,os-odl_l2-sfc-noha,fuel,2/42,5.0 +2017-03-22 01:45,os-odl_l3-nofeature-ha,fuel,19/39,49.0 +2017-03-22 01:45,os-nosdn-nofeature-noha,fuel,24/36,67.0 +2017-03-22 01:45,os-odl_l2-nofeature-noha,fuel,14/39,36.0 +2017-03-22 01:45,os-odl_l2-bgpvpn-ha,fuel,22/42,52.0 +2017-03-22 01:45,os-odl_l2-sfc-ha,fuel,13/45,29.0 +2017-03-22 01:45,os-nosdn-ovs-ha,fuel,26/39,67.0 +2017-03-22 01:45,os-odl_l2-nofeature-ha,fuel,26/42,62.0 +2017-03-22 01:45,os-nosdn-nofeature-ha,fuel,26/39,67.0 +2017-03-22 01:45,os-nosdn-lxd-noha,joid,14/24,58.0 +2017-03-22 01:45,os-odl_l2-nofeature-ha,joid,3/36,8.0 +2017-03-22 01:45,os-nosdn-lxd-ha,joid,2/24,8.0 +2017-03-22 01:45,os-nosdn-nofeature-ha,joid,11/33,33.0 +2017-03-22 01:45,os-nosdn-nofeature-noha,joid,22/33,67.0 +2017-03-23 01:45,os-odl-gluon-noha,apex,34/39,87.0 +2017-03-23 01:45,os-odl_l2-fdio-noha,apex,32/36,89.0 +2017-03-23 01:45,os-odl_l3-fdio-noha,apex,27/30,90.0 +2017-03-23 01:45,os-odl_l3-nofeature-ha,apex,21/33,64.0 +2017-03-23 01:45,os-odl_l2-fdio-ha,apex,28/36,78.0 +2017-03-23 01:45,os-nosdn-fdio-ha,apex,4/30,13.0 +2017-03-23 01:45,os-odl-bgpvpn-ha,apex,25/39,64.0 +2017-03-23 01:45,os-nosdn-kvm-ha,apex,23/33,70.0 +2017-03-23 01:45,os-nosdn-nofeature-ha,apex,32/33,97.0 +2017-03-23 01:45,os-odl_l3-nofeature-ha,compass,25/30,83.0 +2017-03-23 01:45,os-ocl-nofeature-ha,compass,7/30,23.0 +2017-03-23 01:45,os-onos-nofeature-ha,compass,30/33,91.0 +2017-03-23 01:45,os-odl_l2-nofeature-ha,compass,28/33,85.0 +2017-03-23 01:45,os-nosdn-openo-ha,compass,29/30,97.0 +2017-03-23 01:45,os-nosdn-nofeature-ha,compass,28/30,93.0 +2017-03-23 01:45,os-nosdn-kvm_ovs_dpdk-noha,fuel,12/36,33.0 +2017-03-23 01:45,os-nosdn-kvm_ovs_dpdk_bar-ha,fuel,2/42,5.0 +2017-03-23 01:45,os-nosdn-kvm-noha,fuel,12/36,33.0 +2017-03-23 01:45,os-nosdn-ovs-noha,fuel,24/36,67.0 +2017-03-23 01:45,os-odl_l3-nofeature-noha,fuel,22/36,61.0 +2017-03-23 01:45,os-nosdn-kvm_ovs_dpdk-ha,fuel,2/39,5.0 +2017-03-23 01:45,os-odl_l2-bgpvpn-noha,fuel,24/42,57.0 +2017-03-23 01:45,os-odl_l2-sfc-noha,fuel,2/42,5.0 +2017-03-23 01:45,os-odl_l3-nofeature-ha,fuel,19/39,49.0 +2017-03-23 01:45,os-nosdn-kvm-ha,fuel,25/39,64.0 +2017-03-23 01:45,os-nosdn-nofeature-noha,fuel,24/36,67.0 +2017-03-23 01:45,os-odl_l2-nofeature-noha,fuel,26/39,67.0 +2017-03-23 01:45,os-odl_l2-bgpvpn-ha,fuel,25/42,60.0 +2017-03-23 01:45,os-odl_l2-sfc-ha,fuel,13/45,29.0 +2017-03-23 01:45,os-nosdn-kvm_ovs_dpdk_bar-noha,fuel,24/39,62.0 +2017-03-23 01:45,os-nosdn-ovs-ha,fuel,26/39,67.0 +2017-03-23 01:45,os-odl_l2-nofeature-ha,fuel,26/42,62.0 +2017-03-23 01:45,os-nosdn-nofeature-ha,fuel,37/39,95.0 +2017-03-23 01:45,os-nosdn-lxd-noha,joid,20/24,83.0 +2017-03-23 01:45,os-odl_l2-nofeature-ha,joid,7/36,19.0 +2017-03-23 01:45,os-nosdn-lxd-ha,joid,7/24,29.0 +2017-03-23 01:45,os-nosdn-nofeature-ha,joid,11/33,33.0 +2017-03-23 01:45,os-nosdn-nofeature-noha,joid,33/33,100.0 +2017-03-24 01:45,os-odl-gluon-noha,apex,34/39,87.0 +2017-03-24 01:45,os-odl_l2-fdio-noha,apex,32/36,89.0 +2017-03-24 01:45,os-odl_l3-fdio-noha,apex,27/30,90.0 +2017-03-24 01:45,os-odl_l3-nofeature-ha,apex,21/33,64.0 +2017-03-24 01:45,os-odl_l2-fdio-ha,apex,28/36,78.0 +2017-03-24 01:45,os-nosdn-fdio-ha,apex,4/30,13.0 +2017-03-24 01:45,os-odl-bgpvpn-ha,apex,25/39,64.0 +2017-03-24 01:45,os-nosdn-kvm-ha,apex,31/33,94.0 +2017-03-24 01:45,os-nosdn-nofeature-ha,apex,32/33,97.0 +2017-03-24 01:45,os-odl_l3-nofeature-ha,compass,26/30,87.0 +2017-03-24 01:45,os-ocl-nofeature-ha,compass,6/30,20.0 +2017-03-24 01:45,os-onos-nofeature-ha,compass,31/33,94.0 +2017-03-24 01:45,os-odl_l2-nofeature-ha,compass,28/33,85.0 +2017-03-24 01:45,os-nosdn-openo-ha,compass,25/30,83.0 +2017-03-24 01:45,os-nosdn-nofeature-ha,compass,29/30,97.0 +2017-03-24 01:45,os-nosdn-kvm_ovs_dpdk-noha,fuel,24/36,67.0 +2017-03-24 01:45,os-nosdn-kvm_ovs_dpdk_bar-ha,fuel,4/42,10.0 +2017-03-24 01:45,os-nosdn-kvm-noha,fuel,24/36,67.0 +2017-03-24 01:45,os-nosdn-ovs-noha,fuel,24/36,67.0 +2017-03-24 01:45,os-odl_l3-nofeature-noha,fuel,23/36,64.0 +2017-03-24 01:45,os-nosdn-kvm_ovs_dpdk-ha,fuel,4/39,10.0 +2017-03-24 01:45,os-odl_l2-bgpvpn-noha,fuel,24/42,57.0 +2017-03-24 01:45,os-odl_l2-sfc-noha,fuel,14/42,33.0 +2017-03-24 01:45,os-odl_l3-nofeature-ha,fuel,24/39,62.0 +2017-03-24 01:45,os-nosdn-kvm-ha,fuel,25/39,64.0 +2017-03-24 01:45,os-nosdn-nofeature-noha,fuel,36/36,100.0 +2017-03-24 01:45,os-odl_l2-nofeature-noha,fuel,35/39,90.0 +2017-03-24 01:45,os-odl_l2-bgpvpn-ha,fuel,27/42,64.0 +2017-03-24 01:45,os-odl_l2-sfc-ha,fuel,24/45,53.0 +2017-03-24 01:45,os-nosdn-kvm_ovs_dpdk_bar-noha,fuel,24/39,62.0 +2017-03-24 01:45,os-nosdn-ovs-ha,fuel,39/39,100.0 +2017-03-24 01:45,os-odl_l2-nofeature-ha,fuel,26/42,62.0 +2017-03-24 01:45,os-nosdn-nofeature-ha,fuel,38/39,97.0 +2017-03-24 01:45,os-nosdn-lxd-noha,joid,20/24,83.0 +2017-03-24 01:45,os-odl_l2-nofeature-ha,joid,7/36,19.0 +2017-03-24 01:45,os-nosdn-lxd-ha,joid,13/24,54.0 +2017-03-24 01:45,os-nosdn-nofeature-ha,joid,11/33,33.0 +2017-03-24 01:45,os-nosdn-nofeature-noha,joid,32/33,97.0 +2017-03-25 01:45,os-odl-gluon-noha,apex,34/39,87.0 +2017-03-25 01:45,os-odl_l2-fdio-noha,apex,32/36,89.0 +2017-03-25 01:45,os-odl_l3-fdio-noha,apex,27/30,90.0 +2017-03-25 01:45,os-odl_l3-nofeature-ha,apex,23/33,70.0 +2017-03-25 01:45,os-odl_l2-fdio-ha,apex,28/36,78.0 +2017-03-25 01:45,os-nosdn-fdio-ha,apex,4/30,13.0 +2017-03-25 01:45,os-odl-bgpvpn-ha,apex,25/39,64.0 +2017-03-25 01:45,os-nosdn-kvm-ha,apex,31/33,94.0 +2017-03-25 01:45,os-nosdn-nofeature-ha,apex,32/33,97.0 +2017-03-25 01:45,os-odl_l3-nofeature-ha,compass,27/30,90.0 +2017-03-25 01:45,os-ocl-nofeature-ha,compass,6/30,20.0 +2017-03-25 01:45,os-onos-nofeature-ha,compass,27/33,82.0 +2017-03-25 01:45,os-odl_l2-nofeature-ha,compass,28/33,85.0 +2017-03-25 01:45,os-nosdn-openo-ha,compass,25/30,83.0 +2017-03-25 01:45,os-nosdn-nofeature-ha,compass,29/30,97.0 +2017-03-25 01:45,os-nosdn-kvm_ovs_dpdk-noha,fuel,24/36,67.0 +2017-03-25 01:45,os-nosdn-kvm_ovs_dpdk_bar-ha,fuel,4/42,10.0 +2017-03-25 01:45,os-nosdn-kvm-noha,fuel,24/36,67.0 +2017-03-25 01:45,os-nosdn-ovs-noha,fuel,36/36,100.0 +2017-03-25 01:45,os-odl_l3-nofeature-noha,fuel,35/36,97.0 +2017-03-25 01:45,os-nosdn-kvm_ovs_dpdk-ha,fuel,4/39,10.0 +2017-03-25 01:45,os-odl_l2-bgpvpn-noha,fuel,26/42,62.0 +2017-03-25 01:45,os-odl_l2-sfc-noha,fuel,24/42,57.0 +2017-03-25 01:45,os-odl_l3-nofeature-ha,fuel,36/39,92.0 +2017-03-25 01:45,os-nosdn-kvm-ha,fuel,37/39,95.0 +2017-03-25 01:45,os-nosdn-nofeature-noha,fuel,36/36,100.0 +2017-03-25 01:45,os-odl_l2-nofeature-noha,fuel,35/39,90.0 +2017-03-25 01:45,os-odl_l2-bgpvpn-ha,fuel,35/42,83.0 +2017-03-25 01:45,os-odl_l2-sfc-ha,fuel,25/45,56.0 +2017-03-25 01:45,os-nosdn-kvm_ovs_dpdk_bar-noha,fuel,24/39,62.0 +2017-03-25 01:45,os-nosdn-ovs-ha,fuel,39/39,100.0 +2017-03-25 01:45,os-odl_l2-nofeature-ha,fuel,41/42,98.0 +2017-03-25 01:45,os-nosdn-nofeature-ha,fuel,35/39,90.0 +2017-03-25 01:45,os-nosdn-lxd-noha,joid,19/24,79.0 +2017-03-25 01:45,os-odl_l2-nofeature-ha,joid,7/36,19.0 +2017-03-25 01:45,os-nosdn-lxd-ha,joid,13/24,54.0 +2017-03-25 01:45,os-nosdn-nofeature-ha,joid,21/33,64.0 +2017-03-25 01:45,os-nosdn-nofeature-noha,joid,32/33,97.0 +2017-03-26 01:45,os-odl-gluon-noha,apex,34/39,87.0 +2017-03-26 01:45,os-odl_l2-fdio-noha,apex,32/36,89.0 +2017-03-26 01:45,os-odl_l3-fdio-noha,apex,26/30,87.0 +2017-03-26 01:45,os-odl_l3-nofeature-ha,apex,23/33,70.0 +2017-03-26 01:45,os-odl_l2-fdio-ha,apex,22/36,61.0 +2017-03-26 01:45,os-nosdn-fdio-ha,apex,6/30,20.0 +2017-03-26 01:45,os-odl-bgpvpn-ha,apex,25/39,64.0 +2017-03-26 01:45,os-nosdn-kvm-ha,apex,32/33,97.0 +2017-03-26 01:45,os-nosdn-nofeature-ha,apex,32/33,97.0 +2017-03-26 01:45,os-odl_l3-nofeature-ha,compass,26/30,87.0 +2017-03-26 01:45,os-ocl-nofeature-ha,compass,6/30,20.0 +2017-03-26 01:45,os-onos-nofeature-ha,compass,28/33,85.0 +2017-03-26 01:45,os-odl_l2-nofeature-ha,compass,28/33,85.0 +2017-03-26 01:45,os-nosdn-openo-ha,compass,29/30,97.0 +2017-03-26 01:45,os-nosdn-nofeature-ha,compass,29/30,97.0 +2017-03-26 01:45,os-nosdn-kvm_ovs_dpdk-noha,fuel,24/36,67.0 +2017-03-26 01:45,os-nosdn-kvm_ovs_dpdk_bar-ha,fuel,4/42,10.0 +2017-03-26 01:45,os-nosdn-kvm-noha,fuel,24/36,67.0 +2017-03-26 01:45,os-nosdn-ovs-noha,fuel,36/36,100.0 +2017-03-26 01:45,os-odl_l3-nofeature-noha,fuel,35/36,97.0 +2017-03-26 01:45,os-nosdn-kvm_ovs_dpdk-ha,fuel,4/39,10.0 +2017-03-26 01:45,os-odl_l2-bgpvpn-noha,fuel,26/42,62.0 +2017-03-26 01:45,os-odl_l2-sfc-noha,fuel,24/42,57.0 +2017-03-26 01:45,os-odl_l3-nofeature-ha,fuel,36/39,92.0 +2017-03-26 01:45,os-nosdn-kvm-ha,fuel,37/39,95.0 +2017-03-26 01:45,os-nosdn-nofeature-noha,fuel,36/36,100.0 +2017-03-26 01:45,os-odl_l2-nofeature-noha,fuel,36/39,92.0 +2017-03-26 01:45,os-odl_l2-bgpvpn-ha,fuel,35/42,83.0 +2017-03-26 01:45,os-odl_l2-sfc-ha,fuel,25/45,56.0 +2017-03-26 01:45,os-nosdn-kvm_ovs_dpdk_bar-noha,fuel,24/39,62.0 +2017-03-26 01:45,os-nosdn-ovs-ha,fuel,39/39,100.0 +2017-03-26 01:45,os-odl_l2-nofeature-ha,fuel,41/42,98.0 +2017-03-26 01:45,os-nosdn-nofeature-ha,fuel,35/39,90.0 +2017-03-26 01:45,os-nosdn-lxd-noha,joid,19/24,79.0 +2017-03-26 01:45,os-odl_l2-nofeature-ha,joid,9/36,25.0 +2017-03-26 01:45,os-nosdn-lxd-ha,joid,13/24,54.0 +2017-03-26 01:45,os-nosdn-nofeature-ha,joid,22/33,67.0 +2017-03-26 01:45,os-nosdn-nofeature-noha,joid,32/33,97.0 +2017-03-27 01:45,os-odl-gluon-noha,apex,34/39,87.0 +2017-03-27 01:45,os-odl_l2-fdio-noha,apex,18/36,50.0 +2017-03-27 01:45,os-odl_l3-fdio-noha,apex,26/30,87.0 +2017-03-27 01:45,os-odl_l3-nofeature-ha,apex,26/33,79.0 +2017-03-27 01:45,os-odl_l2-fdio-ha,apex,21/36,58.0 +2017-03-27 01:45,os-nosdn-fdio-ha,apex,6/30,20.0 +2017-03-27 01:45,os-odl-bgpvpn-ha,apex,25/39,64.0 +2017-03-27 01:45,os-nosdn-kvm-ha,apex,32/33,97.0 +2017-03-27 01:45,os-nosdn-nofeature-ha,apex,32/33,97.0 +2017-03-27 01:45,os-odl_l3-nofeature-ha,compass,24/30,80.0 +2017-03-27 01:45,os-ocl-nofeature-ha,compass,5/30,17.0 +2017-03-27 01:45,os-onos-nofeature-ha,compass,28/33,85.0 +2017-03-27 01:45,os-odl_l2-nofeature-ha,compass,29/33,88.0 +2017-03-27 01:45,os-nosdn-openo-ha,compass,29/30,97.0 +2017-03-27 01:45,os-nosdn-nofeature-ha,compass,29/30,97.0 +2017-03-27 01:45,os-nosdn-kvm_ovs_dpdk-noha,fuel,24/36,67.0 +2017-03-27 01:45,os-nosdn-kvm_ovs_dpdk_bar-ha,fuel,4/42,10.0 +2017-03-27 01:45,os-nosdn-kvm-noha,fuel,24/36,67.0 +2017-03-27 01:45,os-nosdn-ovs-noha,fuel,36/36,100.0 +2017-03-27 01:45,os-odl_l3-nofeature-noha,fuel,35/36,97.0 +2017-03-27 01:45,os-nosdn-kvm_ovs_dpdk-ha,fuel,4/39,10.0 +2017-03-27 01:45,os-odl_l2-bgpvpn-noha,fuel,26/42,62.0 +2017-03-27 01:45,os-odl_l2-sfc-noha,fuel,24/42,57.0 +2017-03-27 01:45,os-odl_l3-nofeature-ha,fuel,36/39,92.0 +2017-03-27 01:45,os-nosdn-kvm-ha,fuel,37/39,95.0 +2017-03-27 01:45,os-nosdn-nofeature-noha,fuel,36/36,100.0 +2017-03-27 01:45,os-odl_l2-nofeature-noha,fuel,36/39,92.0 +2017-03-27 01:45,os-odl_l2-bgpvpn-ha,fuel,35/42,83.0 +2017-03-27 01:45,os-odl_l2-sfc-ha,fuel,25/45,56.0 +2017-03-27 01:45,os-nosdn-kvm_ovs_dpdk_bar-noha,fuel,24/39,62.0 +2017-03-27 01:45,os-nosdn-ovs-ha,fuel,39/39,100.0 +2017-03-27 01:45,os-odl_l2-nofeature-ha,fuel,41/42,98.0 +2017-03-27 01:45,os-nosdn-nofeature-ha,fuel,35/39,90.0 +2017-03-27 01:45,os-nosdn-lxd-noha,joid,13/24,54.0 +2017-03-27 01:45,os-nosdn-nofeature-noha,joid,32/33,97.0 +2017-03-27 01:45,os-nosdn-lxd-ha,joid,13/24,54.0 +2017-03-27 01:45,os-nosdn-nofeature-ha,joid,21/33,64.0 +2017-03-27 01:45,os-odl_l2-nofeature-ha,joid,9/36,25.0 +2017-03-28 01:45,os-odl-gluon-noha,apex,33/39,85.0 +2017-03-28 01:45,os-odl_l2-fdio-noha,apex,28/36,78.0 +2017-03-28 01:45,os-odl_l3-fdio-noha,apex,26/30,87.0 +2017-03-28 01:45,os-odl_l3-nofeature-ha,apex,26/33,79.0 +2017-03-28 01:45,os-nosdn-kvm-ha,apex,32/33,97.0 +2017-03-28 01:45,os-nosdn-fdio-ha,apex,6/30,20.0 +2017-03-28 01:45,os-odl-bgpvpn-ha,apex,24/39,62.0 +2017-03-28 01:45,os-odl_l2-fdio-ha,apex,20/36,56.0 +2017-03-28 01:45,os-nosdn-nofeature-ha,apex,32/33,97.0 +2017-03-28 01:45,os-odl_l3-nofeature-ha,compass,21/30,70.0 +2017-03-28 01:45,os-ocl-nofeature-ha,compass,5/30,17.0 +2017-03-28 01:45,os-onos-nofeature-ha,compass,28/33,85.0 +2017-03-28 01:45,os-odl_l2-nofeature-ha,compass,28/33,85.0 +2017-03-28 01:45,os-nosdn-openo-ha,compass,30/30,100.0 +2017-03-28 01:45,os-nosdn-nofeature-ha,compass,30/30,100.0 +2017-03-28 01:45,os-nosdn-kvm_ovs_dpdk-noha,fuel,36/36,100.0 +2017-03-28 01:45,os-nosdn-kvm_ovs_dpdk_bar-ha,fuel,6/42,14.0 +2017-03-28 01:45,os-nosdn-kvm-noha,fuel,36/36,100.0 +2017-03-28 01:45,os-nosdn-ovs-noha,fuel,36/36,100.0 +2017-03-28 01:45,os-odl_l3-nofeature-noha,fuel,35/36,97.0 +2017-03-28 01:45,os-nosdn-kvm_ovs_dpdk-ha,fuel,6/39,15.0 +2017-03-28 01:45,os-odl_l2-bgpvpn-noha,fuel,36/42,86.0 +2017-03-28 01:45,os-odl_l2-sfc-noha,fuel,27/42,64.0 +2017-03-28 01:45,os-odl_l3-nofeature-ha,fuel,36/39,92.0 +2017-03-28 01:45,os-nosdn-kvm-ha,fuel,37/39,95.0 +2017-03-28 01:45,os-nosdn-nofeature-noha,fuel,36/36,100.0 +2017-03-28 01:45,os-odl_l2-nofeature-noha,fuel,37/39,95.0 +2017-03-28 01:45,os-odl_l2-bgpvpn-ha,fuel,38/42,90.0 +2017-03-28 01:45,os-odl_l2-sfc-ha,fuel,37/45,82.0 +2017-03-28 01:45,os-nosdn-kvm_ovs_dpdk_bar-noha,fuel,37/39,95.0 +2017-03-28 01:45,os-nosdn-ovs-ha,fuel,38/39,97.0 +2017-03-28 01:45,os-odl_l2-nofeature-ha,fuel,41/42,98.0 +2017-03-28 01:45,os-nosdn-nofeature-ha,fuel,38/39,97.0 +2017-03-28 01:45,os-nosdn-lxd-noha,joid,18/24,75.0 +2017-03-28 01:45,os-nosdn-nofeature-noha,joid,32/33,97.0 +2017-03-28 01:45,os-nosdn-lxd-ha,joid,13/24,54.0 +2017-03-28 01:45,os-nosdn-nofeature-ha,joid,21/33,64.0 +2017-03-28 01:45,os-odl_l2-nofeature-ha,joid,9/36,25.0 +2017-03-28 13:20,os-odl-gluon-noha,apex,30/36,83.0 +2017-03-28 13:20,os-odl_l2-fdio-noha,apex,28/36,78.0 +2017-03-28 13:20,os-odl_l3-fdio-noha,apex,26/30,87.0 +2017-03-28 13:20,os-odl-bgpvpn-ha,apex,22/36,61.0 +2017-03-28 13:20,os-nosdn-kvm-ha,apex,32/33,97.0 +2017-03-28 13:20,os-nosdn-fdio-ha,apex,6/30,20.0 +2017-03-28 13:20,os-odl_l3-nofeature-ha,apex,26/33,79.0 +2017-03-28 13:20,os-odl_l2-fdio-ha,apex,25/36,69.0 +2017-03-28 13:20,os-nosdn-nofeature-ha,apex,32/33,97.0 +2017-03-28 13:20,os-odl_l3-nofeature-ha,compass,21/30,70.0 +2017-03-28 13:20,os-ocl-nofeature-ha,compass,4/30,13.0 +2017-03-28 13:20,os-onos-nofeature-ha,compass,27/33,82.0 +2017-03-28 13:20,os-odl_l2-nofeature-ha,compass,28/33,85.0 +2017-03-28 13:20,os-nosdn-openo-ha,compass,30/30,100.0 +2017-03-28 13:20,os-nosdn-nofeature-ha,compass,29/30,97.0 +2017-03-28 13:20,os-nosdn-kvm_ovs_dpdk-noha,fuel,36/36,100.0 +2017-03-28 13:20,os-nosdn-kvm_ovs_dpdk_bar-ha,fuel,6/42,14.0 +2017-03-28 13:20,os-nosdn-kvm-noha,fuel,36/36,100.0 +2017-03-28 13:20,os-nosdn-ovs-noha,fuel,36/36,100.0 +2017-03-28 13:20,os-odl_l3-nofeature-noha,fuel,35/36,97.0 +2017-03-28 13:20,os-nosdn-kvm_ovs_dpdk-ha,fuel,6/39,15.0 +2017-03-28 13:20,os-odl_l2-bgpvpn-noha,fuel,36/42,86.0 +2017-03-28 13:20,os-odl_l2-sfc-noha,fuel,36/42,86.0 +2017-03-28 13:20,os-odl_l3-nofeature-ha,fuel,36/39,92.0 +2017-03-28 13:20,os-nosdn-kvm-ha,fuel,37/39,95.0 +2017-03-28 13:20,os-nosdn-nofeature-noha,fuel,36/36,100.0 +2017-03-28 13:20,os-odl_l2-nofeature-noha,fuel,37/39,95.0 +2017-03-28 13:20,os-odl_l2-bgpvpn-ha,fuel,38/42,90.0 +2017-03-28 13:20,os-odl_l2-sfc-ha,fuel,37/45,82.0 +2017-03-28 13:20,os-nosdn-kvm_ovs_dpdk_bar-noha,fuel,37/39,95.0 +2017-03-28 13:20,os-nosdn-ovs-ha,fuel,38/39,97.0 +2017-03-28 13:20,os-odl_l2-nofeature-ha,fuel,42/42,100.0 +2017-03-28 13:20,os-nosdn-nofeature-ha,fuel,38/39,97.0 +2017-03-28 13:20,os-nosdn-lxd-noha,joid,18/24,75.0 +2017-03-28 13:20,os-odl_l2-nofeature-ha,joid,9/36,25.0 +2017-03-28 13:20,os-nosdn-nofeature-noha,joid,32/33,97.0 +2017-03-28 13:20,os-nosdn-nofeature-ha,joid,21/33,64.0 +2017-03-28 13:20,os-nosdn-lxd-ha,joid,13/24,54.0 +2017-03-28 13:56,os-odl-gluon-noha,apex,30/36,83.0 +2017-03-28 13:56,os-odl_l2-fdio-noha,apex,30/36,83.0 +2017-03-28 13:56,os-odl_l3-fdio-noha,apex,26/30,87.0 +2017-03-28 13:56,os-odl-bgpvpn-ha,apex,22/36,61.0 +2017-03-28 13:56,os-nosdn-kvm-ha,apex,32/33,97.0 +2017-03-28 13:56,os-nosdn-fdio-ha,apex,6/30,20.0 +2017-03-28 13:56,os-odl_l3-nofeature-ha,apex,26/33,79.0 +2017-03-28 13:56,os-odl_l2-fdio-ha,apex,28/36,78.0 +2017-03-28 13:56,os-nosdn-nofeature-ha,apex,32/33,97.0 +2017-03-28 13:56,os-odl_l3-nofeature-ha,compass,21/30,70.0 +2017-03-28 13:56,os-ocl-nofeature-ha,compass,4/30,13.0 +2017-03-28 13:56,os-onos-nofeature-ha,compass,27/33,82.0 +2017-03-28 13:56,os-odl_l2-nofeature-ha,compass,28/33,85.0 +2017-03-28 13:56,os-nosdn-openo-ha,compass,30/30,100.0 +2017-03-28 13:56,os-nosdn-nofeature-ha,compass,29/30,97.0 +2017-03-28 13:56,os-nosdn-kvm_ovs_dpdk-noha,fuel,36/36,100.0 +2017-03-28 13:56,os-nosdn-kvm_ovs_dpdk_bar-ha,fuel,6/42,14.0 +2017-03-28 13:56,os-nosdn-kvm-noha,fuel,36/36,100.0 +2017-03-28 13:56,os-nosdn-ovs-noha,fuel,36/36,100.0 +2017-03-28 13:56,os-odl_l3-nofeature-noha,fuel,35/36,97.0 +2017-03-28 13:56,os-nosdn-kvm_ovs_dpdk-ha,fuel,6/39,15.0 +2017-03-28 13:56,os-odl_l2-bgpvpn-noha,fuel,36/42,86.0 +2017-03-28 13:56,os-odl_l2-sfc-noha,fuel,36/42,86.0 +2017-03-28 13:56,os-odl_l3-nofeature-ha,fuel,36/39,92.0 +2017-03-28 13:56,os-nosdn-kvm-ha,fuel,37/39,95.0 +2017-03-28 13:56,os-nosdn-nofeature-noha,fuel,36/36,100.0 +2017-03-28 13:56,os-odl_l2-nofeature-noha,fuel,37/39,95.0 +2017-03-28 13:56,os-odl_l2-bgpvpn-ha,fuel,38/42,90.0 +2017-03-28 13:56,os-odl_l2-sfc-ha,fuel,37/45,82.0 +2017-03-28 13:56,os-nosdn-kvm_ovs_dpdk_bar-noha,fuel,37/39,95.0 +2017-03-28 13:56,os-nosdn-ovs-ha,fuel,38/39,97.0 +2017-03-28 13:56,os-odl_l2-nofeature-ha,fuel,42/42,100.0 +2017-03-28 13:56,os-nosdn-nofeature-ha,fuel,38/39,97.0 +2017-03-28 13:56,os-nosdn-lxd-noha,joid,18/24,75.0 +2017-03-28 13:56,os-odl_l2-nofeature-ha,joid,9/36,25.0 +2017-03-28 13:56,os-nosdn-nofeature-noha,joid,32/33,97.0 +2017-03-28 13:56,os-nosdn-nofeature-ha,joid,21/33,64.0 +2017-03-28 13:56,os-nosdn-lxd-ha,joid,13/24,54.0 +2017-03-28 16:16,os-odl-gluon-noha,apex,30/36,83.0 +2017-03-28 16:16,os-odl_l2-fdio-noha,apex,30/36,83.0 +2017-03-28 16:16,os-odl_l3-fdio-noha,apex,26/30,87.0 +2017-03-28 16:16,os-odl-bgpvpn-ha,apex,22/36,61.0 +2017-03-28 16:16,os-nosdn-kvm-ha,apex,32/33,97.0 +2017-03-28 16:16,os-nosdn-fdio-ha,apex,6/30,20.0 +2017-03-28 16:16,os-odl_l3-nofeature-ha,apex,26/33,79.0 +2017-03-28 16:16,os-odl_l2-fdio-ha,apex,28/36,78.0 +2017-03-28 16:16,os-nosdn-nofeature-ha,apex,33/33,100.0 +2017-03-28 16:16,os-odl_l3-nofeature-ha,compass,21/30,70.0 +2017-03-28 16:16,os-ocl-nofeature-ha,compass,4/30,13.0 +2017-03-28 16:16,os-onos-nofeature-ha,compass,27/33,82.0 +2017-03-28 16:16,os-odl_l2-nofeature-ha,compass,28/33,85.0 +2017-03-28 16:16,os-nosdn-openo-ha,compass,29/30,97.0 +2017-03-28 16:16,os-nosdn-nofeature-ha,compass,29/30,97.0 +2017-03-28 16:16,os-nosdn-kvm_ovs_dpdk-noha,fuel,36/36,100.0 +2017-03-28 16:16,os-nosdn-kvm_ovs_dpdk_bar-ha,fuel,6/42,14.0 +2017-03-28 16:16,os-nosdn-kvm-noha,fuel,36/36,100.0 +2017-03-28 16:16,os-nosdn-ovs-noha,fuel,36/36,100.0 +2017-03-28 16:16,os-odl_l3-nofeature-noha,fuel,34/36,94.0 +2017-03-28 16:16,os-nosdn-kvm_ovs_dpdk-ha,fuel,6/39,15.0 +2017-03-28 16:16,os-odl_l2-bgpvpn-noha,fuel,36/42,86.0 +2017-03-28 16:16,os-odl_l2-sfc-noha,fuel,36/42,86.0 +2017-03-28 16:16,os-odl_l3-nofeature-ha,fuel,36/39,92.0 +2017-03-28 16:16,os-nosdn-kvm-ha,fuel,37/39,95.0 +2017-03-28 16:16,os-nosdn-nofeature-noha,fuel,36/36,100.0 +2017-03-28 16:16,os-odl_l2-nofeature-noha,fuel,37/39,95.0 +2017-03-28 16:16,os-odl_l2-bgpvpn-ha,fuel,38/42,90.0 +2017-03-28 16:16,os-odl_l2-sfc-ha,fuel,40/45,89.0 +2017-03-28 16:16,os-nosdn-kvm_ovs_dpdk_bar-noha,fuel,37/39,95.0 +2017-03-28 16:16,os-nosdn-ovs-ha,fuel,38/39,97.0 +2017-03-28 16:16,os-odl_l2-nofeature-ha,fuel,42/42,100.0 +2017-03-28 16:16,os-nosdn-nofeature-ha,fuel,38/39,97.0 +2017-03-28 16:16,os-nosdn-lxd-noha,joid,18/24,75.0 +2017-03-28 16:16,os-odl_l2-nofeature-ha,joid,9/36,25.0 +2017-03-28 16:16,os-nosdn-nofeature-noha,joid,32/33,97.0 +2017-03-28 16:16,os-nosdn-nofeature-ha,joid,32/33,97.0 +2017-03-28 16:16,os-nosdn-lxd-ha,joid,13/24,54.0 +2017-03-29 01:45,os-odl-gluon-noha,apex,30/36,83.0 +2017-03-29 01:45,os-odl_l2-fdio-noha,apex,30/36,83.0 +2017-03-29 01:45,os-odl_l3-fdio-noha,apex,26/30,87.0 +2017-03-29 01:45,os-odl-bgpvpn-ha,apex,22/36,61.0 +2017-03-29 01:45,os-nosdn-kvm-ha,apex,32/33,97.0 +2017-03-29 01:45,os-nosdn-fdio-ha,apex,6/30,20.0 +2017-03-29 01:45,os-odl_l3-nofeature-ha,apex,27/33,82.0 +2017-03-29 01:45,os-odl_l2-fdio-ha,apex,28/36,78.0 +2017-03-29 01:45,os-nosdn-nofeature-ha,apex,33/33,100.0 +2017-03-29 01:45,os-odl_l3-nofeature-ha,compass,21/30,70.0 +2017-03-29 01:45,os-ocl-nofeature-ha,compass,4/30,13.0 +2017-03-29 01:45,os-onos-nofeature-ha,compass,27/33,82.0 +2017-03-29 01:45,os-odl_l2-nofeature-ha,compass,28/33,85.0 +2017-03-29 01:45,os-nosdn-openo-ha,compass,29/30,97.0 +2017-03-29 01:45,os-nosdn-nofeature-ha,compass,29/30,97.0 +2017-03-29 01:45,os-nosdn-kvm_ovs_dpdk-noha,fuel,36/36,100.0 +2017-03-29 01:45,os-nosdn-kvm_ovs_dpdk_bar-ha,fuel,6/42,14.0 +2017-03-29 01:45,os-nosdn-kvm-noha,fuel,36/36,100.0 +2017-03-29 01:45,os-nosdn-ovs-noha,fuel,36/36,100.0 +2017-03-29 01:45,os-nosdn-nofeature-noha,fuel,36/36,100.0 +2017-03-29 01:45,os-nosdn-kvm_ovs_dpdk-ha,fuel,6/39,15.0 +2017-03-29 01:45,os-odl_l2-bgpvpn-noha,fuel,36/42,86.0 +2017-03-29 01:45,os-odl_l2-sfc-noha,fuel,36/42,86.0 +2017-03-29 01:45,os-odl_l3-nofeature-ha,fuel,34/39,87.0 +2017-03-29 01:45,os-nosdn-kvm-ha,fuel,37/39,95.0 +2017-03-29 01:45,os-odl_l3-nofeature-noha,fuel,34/36,94.0 +2017-03-29 01:45,os-odl_l2-nofeature-noha,fuel,36/39,92.0 +2017-03-29 01:45,os-odl_l2-bgpvpn-ha,fuel,38/42,90.0 +2017-03-29 01:45,os-odl_l2-sfc-ha,fuel,40/45,89.0 +2017-03-29 01:45,os-nosdn-kvm_ovs_dpdk_bar-noha,fuel,38/39,97.0 +2017-03-29 01:45,os-odl_l2-nofeature-ha,fuel,42/42,100.0 +2017-03-29 01:45,os-nosdn-ovs-ha,fuel,38/39,97.0 +2017-03-29 01:45,os-nosdn-nofeature-ha,fuel,37/39,95.0 +2017-03-29 01:45,os-nosdn-lxd-noha,joid,17/24,71.0 +2017-03-29 01:45,os-nosdn-nofeature-noha,joid,31/33,94.0 +2017-03-29 01:45,os-odl_l2-nofeature-ha,joid,9/36,25.0 +2017-03-29 01:45,os-nosdn-nofeature-ha,joid,32/33,97.0 +2017-03-29 01:45,os-nosdn-lxd-ha,joid,18/24,75.0 +2017-03-30 01:45,os-nosdn-fdio-noha,apex,15/30,50.0 +2017-03-30 01:45,os-odl-gluon-noha,apex,31/36,86.0 +2017-03-30 01:45,os-odl_l2-fdio-noha,apex,30/36,83.0 +2017-03-30 01:45,os-odl_l3-fdio-noha,apex,26/30,87.0 +2017-03-30 01:45,os-odl-bgpvpn-ha,apex,22/36,61.0 +2017-03-30 01:45,os-nosdn-kvm-ha,apex,32/33,97.0 +2017-03-30 01:45,os-nosdn-fdio-ha,apex,6/30,20.0 +2017-03-30 01:45,os-odl_l3-nofeature-ha,apex,27/33,82.0 +2017-03-30 01:45,os-nosdn-ovs-ha,apex,2/33,6.0 +2017-03-30 01:45,os-odl_l2-fdio-ha,apex,29/36,81.0 +2017-03-30 01:45,os-nosdn-nofeature-ha,apex,33/33,100.0 +2017-03-30 01:45,os-odl_l3-nofeature-ha,compass,21/30,70.0 +2017-03-30 01:45,os-ocl-nofeature-ha,compass,4/30,13.0 +2017-03-30 01:45,os-onos-nofeature-ha,compass,28/33,85.0 +2017-03-30 01:45,os-odl_l2-nofeature-ha,compass,28/33,85.0 +2017-03-30 01:45,os-nosdn-openo-ha,compass,28/30,93.0 +2017-03-30 01:45,os-nosdn-nofeature-ha,compass,29/30,97.0 +2017-03-30 01:45,os-nosdn-kvm_ovs_dpdk-noha,fuel,36/36,100.0 +2017-03-30 01:45,os-nosdn-kvm_ovs_dpdk_bar-ha,fuel,6/42,14.0 +2017-03-30 01:45,os-nosdn-kvm-noha,fuel,36/36,100.0 +2017-03-30 01:45,os-nosdn-ovs-noha,fuel,36/36,100.0 +2017-03-30 01:45,os-nosdn-nofeature-noha,fuel,36/36,100.0 +2017-03-30 01:45,os-nosdn-kvm_ovs_dpdk-ha,fuel,6/39,15.0 +2017-03-30 01:45,os-odl_l2-bgpvpn-noha,fuel,36/42,86.0 +2017-03-30 01:45,os-odl_l2-sfc-noha,fuel,35/42,83.0 +2017-03-30 01:45,os-odl_l3-nofeature-ha,fuel,34/39,87.0 +2017-03-30 01:45,os-nosdn-kvm-ha,fuel,37/39,95.0 +2017-03-30 01:45,os-odl_l3-nofeature-noha,fuel,35/36,97.0 +2017-03-30 01:45,os-odl_l2-nofeature-noha,fuel,36/39,92.0 +2017-03-30 01:45,os-odl_l2-bgpvpn-ha,fuel,38/42,90.0 +2017-03-30 01:45,os-odl_l2-sfc-ha,fuel,42/45,93.0 +2017-03-30 01:45,os-nosdn-kvm_ovs_dpdk_bar-noha,fuel,38/39,97.0 +2017-03-30 01:45,os-odl_l2-nofeature-ha,fuel,42/42,100.0 +2017-03-30 01:45,os-nosdn-ovs-ha,fuel,38/39,97.0 +2017-03-30 01:45,os-nosdn-nofeature-ha,fuel,37/39,95.0 +2017-03-30 01:45,os-nosdn-lxd-noha,joid,17/24,71.0 +2017-03-30 01:45,os-nosdn-nofeature-noha,joid,31/33,94.0 +2017-03-30 01:45,os-odl_l2-nofeature-ha,joid,9/36,25.0 +2017-03-30 01:45,os-nosdn-nofeature-ha,joid,32/33,97.0 +2017-03-30 01:45,os-nosdn-lxd-ha,joid,18/24,75.0 +2017-03-31 01:45,os-nosdn-fdio-noha,apex,15/30,50.0 +2017-03-31 01:45,os-odl-gluon-noha,apex,30/36,83.0 +2017-03-31 01:45,os-odl_l2-fdio-noha,apex,30/36,83.0 +2017-03-31 01:45,os-odl_l3-fdio-noha,apex,20/30,67.0 +2017-03-31 01:45,os-odl-bgpvpn-ha,apex,21/36,58.0 +2017-03-31 01:45,os-nosdn-kvm-ha,apex,32/33,97.0 +2017-03-31 01:45,os-nosdn-fdio-ha,apex,6/30,20.0 +2017-03-31 01:45,os-odl_l3-nofeature-ha,apex,27/33,82.0 +2017-03-31 01:45,os-odl_l3-ovs-ha,apex,2/33,6.0 +2017-03-31 01:45,os-nosdn-ovs-ha,apex,2/33,6.0 +2017-03-31 01:45,os-odl_l2-fdio-ha,apex,29/36,81.0 +2017-03-31 01:45,os-nosdn-nofeature-ha,apex,33/33,100.0 +2017-03-31 01:45,os-odl_l3-nofeature-ha,compass,23/30,77.0 +2017-03-31 01:45,os-ocl-nofeature-ha,compass,3/30,10.0 +2017-03-31 01:45,os-onos-nofeature-ha,compass,28/33,85.0 +2017-03-31 01:45,os-odl_l2-nofeature-ha,compass,28/33,85.0 +2017-03-31 01:45,os-nosdn-openo-ha,compass,28/30,93.0 +2017-03-31 01:45,os-nosdn-nofeature-ha,compass,29/30,97.0 +2017-03-31 01:45,os-nosdn-kvm_ovs_dpdk-noha,fuel,36/36,100.0 +2017-03-31 01:45,os-nosdn-kvm_ovs_dpdk_bar-ha,fuel,6/42,14.0 +2017-03-31 01:45,os-nosdn-kvm-noha,fuel,36/36,100.0 +2017-03-31 01:45,os-nosdn-ovs-noha,fuel,36/36,100.0 +2017-03-31 01:45,os-nosdn-kvm_ovs_dpdk-ha,fuel,6/39,15.0 +2017-03-31 01:45,os-odl_l2-sfc-noha,fuel,35/42,83.0 +2017-03-31 01:45,os-odl_l3-nofeature-ha,fuel,31/39,79.0 +2017-03-31 01:45,os-nosdn-kvm-ha,fuel,37/39,95.0 +2017-03-31 01:45,os-nosdn-nofeature-noha,fuel,36/36,100.0 +2017-03-31 01:45,os-odl_l2-nofeature-noha,fuel,36/39,92.0 +2017-03-31 01:45,os-odl_l2-bgpvpn-ha,fuel,37/42,88.0 +2017-03-31 01:45,os-odl_l2-sfc-ha,fuel,43/45,96.0 +2017-03-31 01:45,os-nosdn-kvm_ovs_dpdk_bar-noha,fuel,39/39,100.0 +2017-03-31 01:45,os-odl_l2-bgpvpn-noha,fuel,37/42,88.0 +2017-03-31 01:45,os-odl_l2-nofeature-ha,fuel,42/42,100.0 +2017-03-31 01:45,os-odl_l3-nofeature-noha,fuel,35/36,97.0 +2017-03-31 01:45,os-nosdn-nofeature-ha,fuel,38/39,97.0 +2017-03-31 01:45,os-nosdn-ovs-ha,fuel,38/39,97.0 +2017-03-31 01:45,os-nosdn-lxd-noha,joid,17/24,71.0 +2017-03-31 01:45,os-nosdn-nofeature-noha,joid,31/33,94.0 +2017-03-31 01:45,os-odl_l2-nofeature-ha,joid,9/36,25.0 +2017-03-31 01:45,os-nosdn-nofeature-ha,joid,32/33,97.0 +2017-03-31 01:45,os-nosdn-lxd-ha,joid,18/24,75.0 + diff --git a/docs/results/danube/1.0/validated_scenario_history.txt b/docs/results/danube/1.0/validated_scenario_history.txt new file mode 100644 index 000000000..e867e3726 --- /dev/null +++ b/docs/results/danube/1.0/validated_scenario_history.txt @@ -0,0 +1,60 @@ +2017-03-19 02:03;compass;os-nosdn-nofeature-ha +2017-03-20 02:04;compass;os-nosdn-nofeature-ha +2017-03-21 02:03;compass;os-nosdn-nofeature-ha +2017-03-22 02:01;apex;os-nosdn-nofeature-ha +2017-03-23 02:14;joid;os-nosdn-nofeature-noha +2017-03-24 02:09;fuel;os-nosdn-nofeature-noha +2017-03-24 02:11;fuel;os-nosdn-ovs-ha +2017-03-25 02:06;fuel;os-nosdn-ovs-noha +2017-03-25 02:09;fuel;os-nosdn-nofeature-noha +2017-03-25 02:11;fuel;os-nosdn-ovs-ha +2017-03-26 02:06;fuel;os-nosdn-ovs-noha +2017-03-26 02:09;fuel;os-nosdn-nofeature-noha +2017-03-26 02:11;fuel;os-nosdn-ovs-ha +2017-03-27 02:06;fuel;os-nosdn-ovs-noha +2017-03-27 02:09;fuel;os-nosdn-nofeature-noha +2017-03-27 02:11;fuel;os-nosdn-ovs-ha +2017-03-28 02:04;compass;os-nosdn-openo-ha +2017-03-28 02:04;compass;os-nosdn-nofeature-ha +2017-03-28 02:04;fuel;os-nosdn-kvm_ovs_dpdk-noha +2017-03-28 02:05;fuel;os-nosdn-kvm-noha +2017-03-28 02:06;fuel;os-nosdn-ovs-noha +2017-03-28 02:09;fuel;os-nosdn-nofeature-noha +2017-03-28 13:40;compass;os-nosdn-openo-ha +2017-03-28 13:41;fuel;os-nosdn-kvm_ovs_dpdk-noha +2017-03-28 13:42;fuel;os-nosdn-kvm-noha +2017-03-28 13:42;fuel;os-nosdn-ovs-noha +2017-03-28 13:45;fuel;os-nosdn-nofeature-noha +2017-03-28 13:48;fuel;os-odl_l2-nofeature-ha +2017-03-28 14:15;compass;os-nosdn-openo-ha +2017-03-28 14:16;fuel;os-nosdn-kvm_ovs_dpdk-noha +2017-03-28 14:17;fuel;os-nosdn-kvm-noha +2017-03-28 14:18;fuel;os-nosdn-ovs-noha +2017-03-28 14:21;fuel;os-nosdn-nofeature-noha +2017-03-28 14:23;fuel;os-odl_l2-nofeature-ha +2017-03-28 16:33;apex;os-nosdn-nofeature-ha +2017-03-28 16:36;fuel;os-nosdn-kvm_ovs_dpdk-noha +2017-03-28 16:37;fuel;os-nosdn-kvm-noha +2017-03-28 16:38;fuel;os-nosdn-ovs-noha +2017-03-28 16:41;fuel;os-nosdn-nofeature-noha +2017-03-28 16:43;fuel;os-odl_l2-nofeature-ha +2017-03-29 02:02;apex;os-nosdn-nofeature-ha +2017-03-29 02:05;fuel;os-nosdn-kvm_ovs_dpdk-noha +2017-03-29 02:05;fuel;os-nosdn-kvm-noha +2017-03-29 02:06;fuel;os-nosdn-ovs-noha +2017-03-29 02:06;fuel;os-nosdn-nofeature-noha +2017-03-29 02:11;fuel;os-odl_l2-nofeature-ha +2017-03-30 02:02;apex;os-nosdn-nofeature-ha +2017-03-30 02:05;fuel;os-nosdn-kvm_ovs_dpdk-noha +2017-03-30 02:06;fuel;os-nosdn-kvm-noha +2017-03-30 02:06;fuel;os-nosdn-ovs-noha +2017-03-30 02:07;fuel;os-nosdn-nofeature-noha +2017-03-30 02:11;fuel;os-odl_l2-nofeature-ha +2017-03-31 02:04;apex;os-nosdn-nofeature-ha +2017-03-31 02:07;fuel;os-nosdn-kvm_ovs_dpdk-noha +2017-03-31 02:08;fuel;os-nosdn-kvm-noha +2017-03-31 02:09;fuel;os-nosdn-ovs-noha +2017-03-31 02:11;fuel;os-nosdn-nofeature-noha +2017-03-31 02:13;fuel;os-nosdn-kvm_ovs_dpdk_bar-noha +2017-03-31 02:14;fuel;os-odl_l2-nofeature-ha + diff --git a/docs/results/img/weather-clear.png b/docs/results/img/weather-clear.png Binary files differnew file mode 100644 index 000000000..a0d967750 --- /dev/null +++ b/docs/results/img/weather-clear.png diff --git a/docs/results/img/weather-few-clouds.png b/docs/results/img/weather-few-clouds.png Binary files differnew file mode 100644 index 000000000..acfa78398 --- /dev/null +++ b/docs/results/img/weather-few-clouds.png diff --git a/docs/results/img/weather-overcast.png b/docs/results/img/weather-overcast.png Binary files differnew file mode 100644 index 000000000..4296246d0 --- /dev/null +++ b/docs/results/img/weather-overcast.png diff --git a/docs/results/img/weather-storm.png b/docs/results/img/weather-storm.png Binary files differnew file mode 100644 index 000000000..956f0e20f --- /dev/null +++ b/docs/results/img/weather-storm.png diff --git a/docs/results/js/default.css b/docs/results/js/default.css new file mode 100644 index 000000000..e32fa5fba --- /dev/null +++ b/docs/results/js/default.css @@ -0,0 +1,194 @@ +.panel-header-item { + position: relative; + display: inline-block; + padding-left: 17px; + padding-right: 17px; +} + +.panel-pod-name { + margin-top: 10px; + margin-right: 27px; + float:right; + padding: 6px; +} + +.panel-default > .panel-heading .badge { + background-color: #007e88; + position: relative; + display: inline-block; +} + +.panel-default > .panel-heading .progress-bar { + height: 100%; + position: absolute; + left: 0; + top: 0; + width: 100%; + background-color: #0095a2 +} +.panel-default > .panel-heading h4 { + color: white; +} + +.panel-default > .panel-heading { + background-color: #00ADBB; + overflow: hidden; + position: relative; + width: 100%; +} + +th{ + text-align: center; +} + +td{ + text-align: center; +} + +.tr-danger { + background-color: #177870; + color: white; +} + +.btn-more { + color: white; + background-color: #0095a2; +} + +h1 { + display: block; + font-size: 2em; + margin-top: 0.67em; + margin-bottom: 0.67em; + margin-left: 0; + margin-right: 0; + font-weight: bold; +} + +h2 { + display: block; + font-size: 1.5em; + margin-top: 0.83em; + margin-bottom: 0.83em; + margin-left: 0; + margin-right: 0; + font-weight: bold; + color:rgb(128, 128, 128) +} + +#power-gauge g.arc { + fill: steelblue; +} + +#power-gauge g.pointer { + fill: #e85116; + stroke: #b64011; +} + +#power-gauge g.label text { + text-anchor: middle; + font-size: 14px; + font-weight: bold; + fill: #666; +} + +#power-gauge path { + +} + +.axis path, +.axis line { + fill: none; + stroke: #000; + shape-rendering: crispEdges; +} + +.dot { + fill: steelblue; + stroke: steelblue; + stroke-width: 1.5px; +} + +.myButtonPdf { + -moz-box-shadow:inset 0px 1px 0px 0px #f29c93; + -webkit-box-shadow:inset 0px 1px 0px 0px #f29c93; + box-shadow:inset 0px 1px 0px 0px #f29c93; + background:-webkit-gradient(linear, left top, left bottom, color-stop(0.05, #fe1a00), color-stop(1, #ce0100)); + background:-moz-linear-gradient(top, #fe1a00 5%, #ce0100 100%); + background:-webkit-linear-gradient(top, #fe1a00 5%, #ce0100 100%); + background:-o-linear-gradient(top, #fe1a00 5%, #ce0100 100%); + background:-ms-linear-gradient(top, #fe1a00 5%, #ce0100 100%); + background:linear-gradient(to bottom, #fe1a00 5%, #ce0100 100%); + filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fe1a00', endColorstr='#ce0100',GradientType=0); + background-color:#fe1a00; + -moz-border-radius:6px; + -webkit-border-radius:6px; + border-radius:6px; + border:1px solid #d83526; + display:inline-block; + cursor:pointer; + color:#ffffff; + font-family:Arial; + font-size:15px; + font-weight:bold; + padding:6px 24px; + text-decoration:none; + text-shadow:0px 1px 0px #b23e35; +} +.myButtonPdf:hover { + background:-webkit-gradient(linear, left top, left bottom, color-stop(0.05, #ce0100), color-stop(1, #fe1a00)); + background:-moz-linear-gradient(top, #ce0100 5%, #fe1a00 100%); + background:-webkit-linear-gradient(top, #ce0100 5%, #fe1a00 100%); + background:-o-linear-gradient(top, #ce0100 5%, #fe1a00 100%); + background:-ms-linear-gradient(top, #ce0100 5%, #fe1a00 100%); + background:linear-gradient(to bottom, #ce0100 5%, #fe1a00 100%); + filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ce0100', endColorstr='#fe1a00',GradientType=0); + background-color:#ce0100; +} +.myButtonPdf:active { + position:relative; + top:1px; +} + + +.myButtonCSV { + -moz-box-shadow:inset 0px 1px 0px 0px #bbdaf7; + -webkit-box-shadow:inset 0px 1px 0px 0px #bbdaf7; + box-shadow:inset 0px 1px 0px 0px #bbdaf7; + background:-webkit-gradient(linear, left top, left bottom, color-stop(0.05, #79bbff), color-stop(1, #378de5)); + background:-moz-linear-gradient(top, #79bbff 5%, #378de5 100%); + background:-webkit-linear-gradient(top, #79bbff 5%, #378de5 100%); + background:-o-linear-gradient(top, #79bbff 5%, #378de5 100%); + background:-ms-linear-gradient(top, #79bbff 5%, #378de5 100%); + background:linear-gradient(to bottom, #79bbff 5%, #378de5 100%); + filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#79bbff', endColorstr='#378de5',GradientType=0); + background-color:#79bbff; + -moz-border-radius:6px; + -webkit-border-radius:6px; + border-radius:6px; + border:1px solid #84bbf3; + display:inline-block; + cursor:pointer; + color:#ffffff; + font-family:Arial; + font-size:15px; + font-weight:bold; + padding:6px 24px; + text-decoration:none; + text-shadow:0px 1px 0px #528ecc; +} +.myButtonCSV:hover { + background:-webkit-gradient(linear, left top, left bottom, color-stop(0.05, #378de5), color-stop(1, #79bbff)); + background:-moz-linear-gradient(top, #378de5 5%, #79bbff 100%); + background:-webkit-linear-gradient(top, #378de5 5%, #79bbff 100%); + background:-o-linear-gradient(top, #378de5 5%, #79bbff 100%); + background:-ms-linear-gradient(top, #378de5 5%, #79bbff 100%); + background:linear-gradient(to bottom, #378de5 5%, #79bbff 100%); + filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#378de5', endColorstr='#79bbff',GradientType=0); + background-color:#378de5; +} +.myButtonCSV:active { + position:relative; + top:1px; +} + diff --git a/docs/results/js/gauge.js b/docs/results/js/gauge.js new file mode 100644 index 000000000..4cad16c61 --- /dev/null +++ b/docs/results/js/gauge.js @@ -0,0 +1,165 @@ +// ****************************************** +// Gauge for reporting +// Each scenario has a score +// We use a gauge to indicate the trust level +// ****************************************** +var gauge = function(container) { + var that = {}; + var config = { + size : 150, + clipWidth : 250, + clipHeight : 100, + ringInset : 20, + ringWidth : 40, + + pointerWidth : 7, + pointerTailLength : 5, + pointerHeadLengthPercent : 0.8, + + minValue : 0, + maxValue : 100, + + minAngle : -90, + maxAngle : 90, + + transitionMs : 4000, + + majorTicks : 7, + labelFormat : d3.format(',g'), + labelInset : 10, + + arcColorFn : d3.interpolateHsl(d3.rgb('#ff0000'), d3.rgb('#00ff00')) + }; + + +var range = undefined; +var r = undefined; +var pointerHeadLength = undefined; +var value = 0; + +var svg = undefined; +var arc = undefined; +var scale = undefined; +var ticks = undefined; +var tickData = undefined; +var pointer = undefined; + +var donut = d3.layout.pie(); + +function deg2rad(deg) { + return deg * Math.PI / 180; +} + +function newAngle(d) { + var ratio = scale(d); + var newAngle = config.minAngle + (ratio * range); + return newAngle; +} + +function configure() { + range = config.maxAngle - config.minAngle; + r = config.size / 2; + pointerHeadLength = Math.round(r * config.pointerHeadLengthPercent); + + // a linear scale that maps domain values to a percent from 0..1 + scale = d3.scale.linear() + .range([0,1]) + .domain([config.minValue, config.maxValue]); + + ticks = scale.ticks(config.majorTicks); + tickData = d3.range(config.majorTicks).map(function() {return 1/config.majorTicks;}); + + arc = d3.svg.arc() + .innerRadius(r - config.ringWidth - config.ringInset) + .outerRadius(r - config.ringInset) + .startAngle(function(d, i) { + var ratio = d * i; + return deg2rad(config.minAngle + (ratio * range)); + }) + .endAngle(function(d, i) { + var ratio = d * (i+1); + return deg2rad(config.minAngle + (ratio * range)); + }); +} +that.configure = configure; + +function centerTranslation() { + return 'translate('+r +','+ r +')'; +} + +function isRendered() { + return (svg !== undefined); +} +that.isRendered = isRendered; + +function render(newValue) { + svg = d3.select(container) + .append('svg:svg') + .attr('class', 'gauge') + .attr('width', config.clipWidth) + .attr('height', config.clipHeight); + + var centerTx = centerTranslation(); + + var arcs = svg.append('g') + .attr('class', 'arc') + .attr('transform', centerTx); + + arcs.selectAll('path') + .data(tickData) + .enter().append('path') + .attr('fill', function(d, i) { + return config.arcColorFn(d * i); + }) + .attr('d', arc); + + var lg = svg.append('g') + .attr('class', 'label') + .attr('transform', centerTx); + lg.selectAll('text') + .data(ticks) + .enter().append('text') + .attr('transform', function(d) { + var ratio = scale(d); + var newAngle = config.minAngle + (ratio * range); + return 'rotate(' +newAngle +') translate(0,' +(config.labelInset - r) +')'; + }) + .text(config.labelFormat); + + var lineData = [ [config.pointerWidth / 2, 0], + [0, -pointerHeadLength], + [-(config.pointerWidth / 2), 0], + [0, config.pointerTailLength], + [config.pointerWidth / 2, 0] ]; + var pointerLine = d3.svg.line().interpolate('monotone'); + var pg = svg.append('g').data([lineData]) + .attr('class', 'pointer') + .attr('transform', centerTx); + + pointer = pg.append('path') + .attr('d', pointerLine/*function(d) { return pointerLine(d) +'Z';}*/ ) + .attr('transform', 'rotate(' +config.minAngle +')'); + + update(newValue === undefined ? 0 : newValue); +} +that.render = render; + +function update(newValue, newConfiguration) { + if ( newConfiguration !== undefined) { + configure(newConfiguration); + } + var ratio = scale(newValue); + var newAngle = config.minAngle + (ratio * range); + pointer.transition() + .duration(config.transitionMs) + .ease('elastic') + .attr('transform', 'rotate(' +newAngle +')'); +} +that.update = update; + +configure(); + +render(); + +return that; +}; diff --git a/docs/results/js/trend.js b/docs/results/js/trend.js new file mode 100644 index 000000000..f24213382 --- /dev/null +++ b/docs/results/js/trend.js @@ -0,0 +1,75 @@ +// ****************************************** +// Trend line for reporting +// based on scenario_history.txt +// where data looks like +// date,scenario,installer,detail,score +// 2016-09-22 13:12,os-nosdn-fdio-noha,apex,4/12,33.0 +// 2016-09-22 13:13,os-odl_l2-fdio-noha,apex,12/15,80.0 +// 2016-09-22 13:13,os-odl_l2-sfc-noha,apex,18/24,75.0 +// ..... +// ****************************************** +// Set the dimensions of the canvas / graph +var trend_margin = {top: 20, right: 30, bottom: 50, left: 40}, + trend_width = 300 - trend_margin.left - trend_margin.right, + trend_height = 130 - trend_margin.top - trend_margin.bottom; + +// Parse the date / time +var parseDate = d3.time.format("%Y-%m-%d %H:%M").parse; + +// Set the ranges +var trend_x = d3.time.scale().range([0, trend_width]); +var trend_y = d3.scale.linear().range([trend_height, 0]); + +// Define the axes +var trend_xAxis = d3.svg.axis().scale(trend_x) + .orient("bottom").ticks(2).tickFormat(d3.time.format("%m-%d")); + +var trend_yAxis = d3.svg.axis().scale(trend_y) + .orient("left").ticks(2); + +// Define the line +var valueline = d3.svg.line() + .x(function(d) { return trend_x(d.date); }) + .y(function(d) { return trend_y(d.score); }); + +var trend = function(container, trend_data) { + + var trend_svg = d3.select(container) + .append("svg") + .attr("width", trend_width + trend_margin.left + trend_margin.right) + .attr("height", trend_height + trend_margin.top + trend_margin.bottom) + .append("g") + .attr("transform", + "translate(" + trend_margin.left + "," + trend_margin.top + ")"); + + // Scale the range of the data + trend_x.domain(d3.extent(trend_data, function(d) { return d.date; })); + trend_y.domain([0, d3.max(trend_data, function(d) { return d.score; })]); + + // Add the X Axis + trend_svg.append("g") + .attr("class", "x axis") + .attr("transform", "translate(0," + trend_height + ")") + .call(trend_xAxis); + + // Add the Y Axis + trend_svg.append("g") + .attr("class", "y axis") + .call(trend_yAxis); + + // Add the valueline path. + trend_svg.append("path") + .attr("class", "line") + .attr("d", valueline(trend_data)) + .attr("stroke", "steelblue") + .attr("fill", "none"); + + trend_svg.selectAll(".dot") + .data(trend_data) + .enter().append("circle") + .attr("r", 2.5) + .attr("cx", function(d) { return trend_x(d.date); }) + .attr("cy", function(d) { return trend_y(d.score); }); + + return trend; +} diff --git a/docs/testing/user/userguide/runfunctest.rst b/docs/testing/user/userguide/runfunctest.rst index 8a3ba8c73..07b5b8a60 100644 --- a/docs/testing/user/userguide/runfunctest.rst +++ b/docs/testing/user/userguide/runfunctest.rst @@ -118,14 +118,35 @@ More specific details on specific Tiers or Test Cases can be seen wih the To execute a Test Tier or Test Case, the 'run' command is used:: root@22e436918db0:~/repos/functest/ci# functest tier run healthcheck - 2017-03-21 13:34:21,400 - run_tests - INFO - ############################################ - 2017-03-21 13:34:21,400 - run_tests - INFO - Running tier 'healthcheck' - 2017-03-21 13:34:21,400 - run_tests - INFO - ############################################ - 2017-03-21 13:34:21,401 - run_tests - INFO - - - 2017-03-21 13:34:21,401 - run_tests - INFO - ============================================ - 2017-03-21 13:34:21,401 - run_tests - INFO - Running test case 'connection_check'... - 2017-03-21 13:34:21,401 - run_tests - INFO - ============================================ + 2017-03-30 05:36:19,752 - run_tests - INFO - ############################################ + 2017-03-30 05:36:19,752 - run_tests - INFO - Running tier 'healthcheck' + 2017-03-30 05:36:19,753 - run_tests - INFO - ############################################ + 2017-03-30 05:36:19,753 - run_tests - INFO - + + 2017-03-30 05:36:19,753 - run_tests - INFO - ============================================ + 2017-03-30 05:36:19,753 - run_tests - INFO - Running test case 'connection_check'... + 2017-03-30 05:36:19,753 - run_tests - INFO - ============================================ + 2017-03-30 05:36:20,046 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:20,046 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:20,775 - functest - INFO - Using flavor metatdata '{'hw:mem_page_size': 'any'}' + 2017-03-30 05:36:20,777 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:20,777 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:20,777 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:20,778 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:20,778 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:20,779 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:20,779 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:20,779 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:20,780 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:20,780 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:20,781 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:20,781 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:20,781 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:20,782 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:20,782 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:20,783 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:20,783 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:20,784 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None test_glance_connect_fail (snaps.openstack.utils.tests.glance_utils_tests.GlanceSmokeTests) ... ok test_glance_connect_success (snaps.openstack.utils.tests.glance_utils_tests.GlanceSmokeTests) ... ok test_keystone_connect_fail (snaps.openstack.utils.tests.keystone_utils_tests.KeystoneSmokeTests) ... ok @@ -137,241 +158,341 @@ To execute a Test Tier or Test Case, the 'run' command is used:: test_nova_connect_success (snaps.openstack.utils.tests.nova_utils_tests.NovaSmokeTests) ... ok ---------------------------------------------------------------------- - Ran 9 tests in 3.768s + Ran 9 tests in 1.332s OK - 2017-03-21 13:34:26,570 - functest.core.testcase_base - INFO - connection_check OK - 2017-03-21 13:34:26,918 - functest.core.testcase_base - INFO - The results were successfully pushed to DB - 2017-03-21 13:34:26,918 - run_tests - INFO - Test execution time: 00:05 - 2017-03-21 13:34:26,918 - run_tests - INFO - - - 2017-03-21 13:34:26,918 - run_tests - INFO - ============================================ - 2017-03-21 13:34:26,918 - run_tests - INFO - Running test case 'api_check'... - 2017-03-21 13:34:26,919 - run_tests - INFO - ============================================ + 2017-03-30 05:36:22,116 - functest - INFO - connection_check OK + 2017-03-30 05:36:22,483 - functest - INFO - The results were successfully pushed to DB + 2017-03-30 05:36:22,483 - run_tests - INFO - Test execution time: 00:02 + 2017-03-30 05:36:22,484 - run_tests - INFO - + + 2017-03-30 05:36:22,484 - run_tests - INFO - ============================================ + 2017-03-30 05:36:22,484 - run_tests - INFO - Running test case 'api_check'... + 2017-03-30 05:36:22,484 - run_tests - INFO - ============================================ + 2017-03-30 05:36:22,590 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:22,591 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,361 - functest - INFO - Using flavor metatdata '{'hw:mem_page_size': 'any'}' + 2017-03-30 05:36:23,362 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,362 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,363 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,364 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,364 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,365 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,365 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,365 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,366 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,366 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,367 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,367 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,368 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,368 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,368 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,369 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,370 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,370 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,370 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,371 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,372 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,372 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,372 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,373 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,373 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,374 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,374 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,374 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,375 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,376 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,376 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,376 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,376 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,377 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,377 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,377 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,377 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,377 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,378 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,378 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,378 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,378 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,379 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,379 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,379 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,380 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,380 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,380 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,380 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,380 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,381 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,381 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,381 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,381 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,381 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,382 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,382 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,382 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,382 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,382 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,383 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,383 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,383 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,384 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,384 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,384 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,384 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,384 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,385 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,385 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,385 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,385 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,386 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,386 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,386 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,386 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,387 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,387 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,387 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,388 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,388 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,388 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,388 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,388 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,420 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,420 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,420 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,420 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,421 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,421 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,421 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,421 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,422 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,422 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:36:23,422 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:36:23,422 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None test_create_project_minimal (snaps.openstack.utils.tests.keystone_utils_tests.KeystoneUtilsTests) ... ok test_create_user_minimal (snaps.openstack.utils.tests.keystone_utils_tests.KeystoneUtilsTests) ... ok test_create_delete_user (snaps.openstack.tests.create_user_tests.CreateUserSuccessTests) ... ok test_create_user (snaps.openstack.tests.create_user_tests.CreateUserSuccessTests) ... ok - test_create_user_2x (snaps.openstack.tests.create_user_tests.CreateUserSuccessTests) ... - 2017-03-21 13:34:32,684 - create_user - INFO - Found user with name - CreateUserSuccessTests-7e741e11-c9fd-489-name ok + test_create_user_2x (snaps.openstack.tests.create_user_tests.CreateUserSuccessTests) ... 2017-03-30 05:36:27,257 - create_user - INFO - Found user with name - CreateUserSuccessTests-5ff765c1-56bd-4c4-name + ok test_create_delete_project (snaps.openstack.tests.create_project_tests.CreateProjectSuccessTests) ... ok test_create_project (snaps.openstack.tests.create_project_tests.CreateProjectSuccessTests) ... ok - test_create_project_2x (snaps.openstack.tests.create_project_tests.CreateProjectSuccessTests) ... - 2017-03-21 13:34:35,922 - create_image - INFO - Found project with name - CreateProjectSuccessTests-b38e08ce-2862-48a-name ok - test_create_project_sec_grp_one_user (snaps.openstack.tests.create_project_tests.CreateProjectUserTests) ... - 2017-03-21 13:34:37,907 - OpenStackSecurityGroup - INFO - Creating security group CreateProjectUserTests-ab8801f6-dad8-4f9-name... - 2017-03-21 13:34:37,907 - neutron_utils - INFO - Retrieving security group with name - CreateProjectUserTests-ab8801f6-dad8-4f9-name - 2017-03-21 13:34:38,376 - neutron_utils - INFO - Creating security group with name - CreateProjectUserTests-ab8801f6-dad8-4f9-name - 2017-03-21 13:34:38,716 - neutron_utils - INFO - Retrieving security group rules associate with the security group - CreateProjectUserTests-ab8801f6-dad8-4f9-name - 2017-03-21 13:34:38,762 - neutron_utils - INFO - Retrieving security group with ID - 821419cb-c54c-41b4-a61b-fb30e5dd2ec5 - 2017-03-21 13:34:38,886 - neutron_utils - INFO - Retrieving security group with ID - 821419cb-c54c-41b4-a61b-fb30e5dd2ec5 - 2017-03-21 13:34:39,000 - neutron_utils - INFO - Retrieving security group with name - CreateProjectUserTests-ab8801f6-dad8-4f9-name - 2017-03-21 13:34:39,307 - neutron_utils - INFO - Deleting security group rule with ID - d85fafc0-9649-45c9-a00e-452f3d5c09a6 - 2017-03-21 13:34:39,531 - neutron_utils - INFO - Deleting security group rule with ID - 69d79c09-bc3b-4975-9353-5f43aca51237 - 2017-03-21 13:34:39,762 - neutron_utils - INFO - Deleting security group with name - CreateProjectUserTests-ab8801f6-dad8-4f9-name ok - test_create_project_sec_grp_two_users (snaps.openstack.tests.create_project_tests.CreateProjectUserTests) ... - 2017-03-21 13:34:43,511 - OpenStackSecurityGroup - INFO - Creating security group CreateProjectUserTests-4d9261a6-e008-44b-name... - 2017-03-21 13:34:43,511 - neutron_utils - INFO - Retrieving security group with name - CreateProjectUserTests-4d9261a6-e008-44b-name - 2017-03-21 13:34:44,090 - neutron_utils - INFO - Creating security group with name - CreateProjectUserTests-4d9261a6-e008-44b-name - 2017-03-21 13:34:44,784 - neutron_utils - INFO - Retrieving security group rules associate with the security group - CreateProjectUserTests-4d9261a6-e008-44b-name - 2017-03-21 13:34:44,864 - neutron_utils - INFO - Retrieving security group with ID - 780193e4-9bd2-4f2e-a14d-b01abf74c832 - 2017-03-21 13:34:45,233 - neutron_utils - INFO - Retrieving security group with ID - 780193e4-9bd2-4f2e-a14d-b01abf74c832 - 2017-03-21 13:34:45,332 - neutron_utils - INFO - Retrieving security group with name - CreateProjectUserTests-4d9261a6-e008-44b-name - 2017-03-21 13:34:45,779 - OpenStackSecurityGroup - INFO - Creating security group CreateProjectUserTests-4d9261a6-e008-44b-name... - 2017-03-21 13:34:45,779 - neutron_utils - INFO - Retrieving security group with name - CreateProjectUserTests-4d9261a6-e008-44b-name - 2017-03-21 13:34:46,112 - neutron_utils - INFO - Retrieving security group rules associate with the security group - CreateProjectUserTests-4d9261a6-e008-44b-name - 2017-03-21 13:34:46,184 - neutron_utils - INFO - Retrieving security group with ID - 780193e4-9bd2-4f2e-a14d-b01abf74c832 - 2017-03-21 13:34:46,296 - neutron_utils - INFO - Retrieving security group with ID - 780193e4-9bd2-4f2e-a14d-b01abf74c832 - 2017-03-21 13:34:46,387 - neutron_utils - INFO - Deleting security group rule with ID - 2320a573-ec56-47c5-a1ba-ec514d30114b - 2017-03-21 13:34:46,636 - neutron_utils - INFO - Deleting security group rule with ID - 6186282b-db37-4e47-becc-a3886079c069 - 2017-03-21 13:34:46,780 - neutron_utils - INFO - Deleting security group with name - CreateProjectUserTests-4d9261a6-e008-44b-name - 2017-03-21 13:34:47,006 - neutron_utils - INFO - Deleting security group rule with ID - 2320a573-ec56-47c5-a1ba-ec514d30114b - 2017-03-21 13:34:47,072 - OpenStackSecurityGroup - WARNING - Rule not found, cannot delete - Security group rule 2320a573-ec56-47c5-a1ba-ec514d30114b does not exist - Neutron server returns request_ids: ['req-d74eb2e2-b26f-4236-87dc-7255866141d9'] - 2017-03-21 13:34:47,072 - neutron_utils - INFO - Deleting security group rule with ID - 6186282b-db37-4e47-becc-a3886079c069 - 2017-03-21 13:34:47,118 - OpenStackSecurityGroup - WARNING - Rule not found, cannot delete - Security group rule 6186282b-db37-4e47-becc-a3886079c069 does not exist - Neutron server returns request_ids: ['req-8c0a5a24-be90-4844-a9ed-2a85cc6f59a5'] - 2017-03-21 13:34:47,118 - neutron_utils - INFO - Deleting security group with name - CreateProjectUserTests-4d9261a6-e008-44b-name - 2017-03-21 13:34:47,172 - OpenStackSecurityGroup - WARNING - Security Group not found, cannot delete - Security group 780193e4-9bd2-4f2e-a14d-b01abf74c832 does not exist - Neutron server returns request_ids: ['req-c6e1a6b5-43e0-4d46-bb68-c2e1672d4d21'] ok + test_create_project_2x (snaps.openstack.tests.create_project_tests.CreateProjectSuccessTests) ... 2017-03-30 05:36:29,798 - create_image - INFO - Found project with name - CreateProjectSuccessTests-1b2fce89-dd5e-471-name + ok + test_create_project_sec_grp_one_user (snaps.openstack.tests.create_project_tests.CreateProjectUserTests) ... 2017-03-30 05:36:31,327 - OpenStackSecurityGroup - INFO - Creating security group CreateProjectUserTests-34aa7d96-f19c-4db-name... + 2017-03-30 05:36:31,327 - neutron_utils - INFO - Retrieving security group with name - CreateProjectUserTests-34aa7d96-f19c-4db-name + 2017-03-30 05:36:31,705 - neutron_utils - INFO - Creating security group with name - CreateProjectUserTests-34aa7d96-f19c-4db-name + 2017-03-30 05:36:31,878 - neutron_utils - INFO - Retrieving security group rules associate with the security group - CreateProjectUserTests-34aa7d96-f19c-4db-name + 2017-03-30 05:36:31,915 - neutron_utils - INFO - Retrieving security group with ID - 4dc3e8e4-3dc8-4dda-9c7e-03d08171e17a + 2017-03-30 05:36:31,980 - neutron_utils - INFO - Retrieving security group with ID - 4dc3e8e4-3dc8-4dda-9c7e-03d08171e17a + 2017-03-30 05:36:32,048 - neutron_utils - INFO - Retrieving security group with name - CreateProjectUserTests-34aa7d96-f19c-4db-name + 2017-03-30 05:36:32,108 - neutron_utils - INFO - Deleting security group rule with ID - 81cca252-45fe-4052-adb9-819191693618 + 2017-03-30 05:36:32,257 - neutron_utils - INFO - Deleting security group rule with ID - 8900647f-1587-4068-bd2e-7b77677d12ed + 2017-03-30 05:36:32,367 - neutron_utils - INFO - Deleting security group with name - CreateProjectUserTests-34aa7d96-f19c-4db-name + ok + test_create_project_sec_grp_two_users (snaps.openstack.tests.create_project_tests.CreateProjectUserTests) ... 2017-03-30 05:36:34,950 - OpenStackSecurityGroup - INFO - Creating security group CreateProjectUserTests-6664b595-4657-4f9-name... + 2017-03-30 05:36:34,950 - neutron_utils - INFO - Retrieving security group with name - CreateProjectUserTests-6664b595-4657-4f9-name + 2017-03-30 05:36:35,337 - neutron_utils - INFO - Creating security group with name - CreateProjectUserTests-6664b595-4657-4f9-name + 2017-03-30 05:36:35,528 - neutron_utils - INFO - Retrieving security group rules associate with the security group - CreateProjectUserTests-6664b595-4657-4f9-name + 2017-03-30 05:36:35,566 - neutron_utils - INFO - Retrieving security group with ID - ea8b1da3-0e3d-45aa-b63f-68d2e7b57e48 + 2017-03-30 05:36:35,831 - neutron_utils - INFO - Retrieving security group with ID - ea8b1da3-0e3d-45aa-b63f-68d2e7b57e48 + 2017-03-30 05:36:36,118 - neutron_utils - INFO - Retrieving security group with name - CreateProjectUserTests-6664b595-4657-4f9-name + 2017-03-30 05:36:36,474 - OpenStackSecurityGroup - INFO - Creating security group CreateProjectUserTests-6664b595-4657-4f9-name... + 2017-03-30 05:36:36,475 - neutron_utils - INFO - Retrieving security group with name - CreateProjectUserTests-6664b595-4657-4f9-name + 2017-03-30 05:36:36,717 - neutron_utils - INFO - Retrieving security group rules associate with the security group - CreateProjectUserTests-6664b595-4657-4f9-name + 2017-03-30 05:36:36,768 - neutron_utils - INFO - Retrieving security group with ID - ea8b1da3-0e3d-45aa-b63f-68d2e7b57e48 + 2017-03-30 05:36:36,831 - neutron_utils - INFO - Retrieving security group with ID - ea8b1da3-0e3d-45aa-b63f-68d2e7b57e48 + 2017-03-30 05:36:36,902 - neutron_utils - INFO - Deleting security group rule with ID - f6e50aea-e6d2-4ba9-ab78-0674cdcd5415 + 2017-03-30 05:36:37,054 - neutron_utils - INFO - Deleting security group rule with ID - a32d9c1d-7ae0-4fe9-b4c9-8b039008f836 + 2017-03-30 05:36:37,204 - neutron_utils - INFO - Deleting security group with name - CreateProjectUserTests-6664b595-4657-4f9-name + 2017-03-30 05:36:37,350 - neutron_utils - INFO - Deleting security group rule with ID - f6e50aea-e6d2-4ba9-ab78-0674cdcd5415 + 2017-03-30 05:36:37,387 - OpenStackSecurityGroup - WARNING - Rule not found, cannot delete - Security group rule f6e50aea-e6d2-4ba9-ab78-0674cdcd5415 does not exist + Neutron server returns request_ids: ['req-e740871d-34c4-4b95-a76c-6b84028954e6'] + 2017-03-30 05:36:37,387 - neutron_utils - INFO - Deleting security group rule with ID - a32d9c1d-7ae0-4fe9-b4c9-8b039008f836 + 2017-03-30 05:36:37,426 - OpenStackSecurityGroup - WARNING - Rule not found, cannot delete - Security group rule a32d9c1d-7ae0-4fe9-b4c9-8b039008f836 does not exist + Neutron server returns request_ids: ['req-8121308e-d7d3-4ccc-961f-5fa794fccc83'] + 2017-03-30 05:36:37,427 - neutron_utils - INFO - Deleting security group with name - CreateProjectUserTests-6664b595-4657-4f9-name + 2017-03-30 05:36:37,470 - OpenStackSecurityGroup - WARNING - Security Group not found, cannot delete - Security group ea8b1da3-0e3d-45aa-b63f-68d2e7b57e48 does not exist + Neutron server returns request_ids: ['req-09424914-a32d-4bcb-9d90-0ad307ec4c56'] + ok test_create_image_minimal_file (snaps.openstack.utils.tests.glance_utils_tests.GlanceUtilsTests) ... ok test_create_image_minimal_url (snaps.openstack.utils.tests.glance_utils_tests.GlanceUtilsTests) ... ok - test_create_network (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsNetworkTests) ... - 2017-03-21 13:35:22,275 - neutron_utils - INFO - Creating network with name NeutronUtilsNetworkTests-c06c20e0-d78f-4fa4-8401-099a7a6cab2e-pub-net - 2017-03-21 13:35:23,965 - neutron_utils - INFO - Deleting network with name NeutronUtilsNetworkTests-c06c20e0-d78f-4fa4-8401-099a7a6cab2e-pub-net ok + test_create_network (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsNetworkTests) ... 2017-03-30 05:37:02,330 - neutron_utils - INFO - Creating network with name NeutronUtilsNetworkTests-9dc31d5e-be87-480d-af6e-d89f0608e459-pub-net + 2017-03-30 05:37:04,307 - neutron_utils - INFO - Deleting network with name NeutronUtilsNetworkTests-9dc31d5e-be87-480d-af6e-d89f0608e459-pub-net + ok test_create_network_empty_name (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsNetworkTests) ... ok test_create_network_null_name (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsNetworkTests) ... ok - test_create_subnet (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsSubnetTests) ... - 2017-03-21 13:35:25,495 - neutron_utils - INFO - Creating network with name NeutronUtilsSubnetTests-4f440a5f-54e3-4455-ab9b-39dfe06f6d21-pub-net - 2017-03-21 13:35:26,841 - neutron_utils - INFO - Creating subnet with name NeutronUtilsSubnetTests-4f440a5f-54e3-4455-ab9b-39dfe06f6d21-pub-subnet - 2017-03-21 13:35:28,311 - neutron_utils - INFO - Deleting subnet with name NeutronUtilsSubnetTests-4f440a5f-54e3-4455-ab9b-39dfe06f6d21-pub-subnet - 2017-03-21 13:35:29,585 - neutron_utils - INFO - Deleting network with name NeutronUtilsSubnetTests-4f440a5f-54e3-4455-ab9b-39dfe06f6d21-pub-net ok - test_create_subnet_empty_cidr (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsSubnetTests) ... - 2017-03-21 13:35:31,013 - neutron_utils - INFO - Creating network with name NeutronUtilsSubnetTests-41fc0db4-71ee-47e6-bec9-316273e5bcc0-pub-net - 2017-03-21 13:35:31,652 - neutron_utils - INFO - Deleting network with name NeutronUtilsSubnetTests-41fc0db4-71ee-47e6-bec9-316273e5bcc0-pub-net ok - test_create_subnet_empty_name (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsSubnetTests) ... - 2017-03-21 13:35:32,379 - neutron_utils - INFO - Creating network with name NeutronUtilsSubnetTests-1030e0cb-1714-4d18-8619-a03bac0d0257-pub-net - 2017-03-21 13:35:33,516 - neutron_utils - INFO - Creating subnet with name NeutronUtilsSubnetTests-1030e0cb-1714-4d18-8619-a03bac0d0257-pub-subnet - 2017-03-21 13:35:34,160 - neutron_utils - INFO - Deleting network with name NeutronUtilsSubnetTests-1030e0cb-1714-4d18-8619-a03bac0d0257-pub-net ok - test_create_subnet_null_cidr (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsSubnetTests) ... - 2017-03-21 13:35:35,784 - neutron_utils - INFO - Creating network with name NeutronUtilsSubnetTests-1d7522fd-3fb5-4b1c-8741-97d7c47a5f7d-pub-net - 2017-03-21 13:35:36,367 - neutron_utils - INFO - Deleting network with name NeutronUtilsSubnetTests-1d7522fd-3fb5-4b1c-8741-97d7c47a5f7d-pub-net ok - test_create_subnet_null_name (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsSubnetTests) ... - 2017-03-21 13:35:37,055 - neutron_utils - INFO - Creating network with name NeutronUtilsSubnetTests-0a8ac1b2-e5d4-4522-a079-7e17945e482e-pub-net - 2017-03-21 13:35:37,691 - neutron_utils - INFO - Deleting network with name NeutronUtilsSubnetTests-0a8ac1b2-e5d4-4522-a079-7e17945e482e-pub-net ok - test_add_interface_router (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsRouterTests) ... - 2017-03-21 13:35:38,994 - neutron_utils - INFO - Creating network with name NeutronUtilsRouterTests-433818c9-4472-49a8-9241-791ad0a71d3f-pub-net - 2017-03-21 13:35:40,311 - neutron_utils - INFO - Creating subnet with name NeutronUtilsRouterTests-433818c9-4472-49a8-9241-791ad0a71d3f-pub-subnet - 2017-03-21 13:35:41,713 - neutron_utils - INFO - Creating router with name - NeutronUtilsRouterTests-433818c9-4472-49a8-9241-791ad0a71d3f-pub-router - 2017-03-21 13:35:44,131 - neutron_utils - INFO - Adding interface to router with name NeutronUtilsRouterTests-433818c9-4472-49a8-9241-791ad0a71d3f-pub-router - 2017-03-21 13:35:45,725 - neutron_utils - INFO - Removing router interface from router named NeutronUtilsRouterTests-433818c9-4472-49a8-9241-791ad0a71d3f-pub-router - 2017-03-21 13:35:47,464 - neutron_utils - INFO - Deleting router with name - NeutronUtilsRouterTests-433818c9-4472-49a8-9241-791ad0a71d3f-pub-router - 2017-03-21 13:35:48,670 - neutron_utils - INFO - Deleting subnet with name NeutronUtilsRouterTests-433818c9-4472-49a8-9241-791ad0a71d3f-pub-subnet - 2017-03-21 13:35:50,921 - neutron_utils - INFO - Deleting network with name NeutronUtilsRouterTests-433818c9-4472-49a8-9241-791ad0a71d3f-pub-net ok - test_add_interface_router_null_router (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsRouterTests) ... - 2017-03-21 13:35:52,230 - neutron_utils - INFO - Creating network with name NeutronUtilsRouterTests-1fc2de16-2d3e-497b-b947-022b1bf9d90c-pub-net - 2017-03-21 13:35:53,662 - neutron_utils - INFO - Creating subnet with name NeutronUtilsRouterTests-1fc2de16-2d3e-497b-b947-022b1bf9d90c-pub-subnet - 2017-03-21 13:35:55,203 - neutron_utils - INFO - Deleting subnet with name NeutronUtilsRouterTests-1fc2de16-2d3e-497b-b947-022b1bf9d90c-pub-subnet - 2017-03-21 13:35:55,694 - neutron_utils - INFO - Deleting network with name NeutronUtilsRouterTests-1fc2de16-2d3e-497b-b947-022b1bf9d90c-pub-net ok - test_add_interface_router_null_subnet (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsRouterTests) ... - 2017-03-21 13:35:57,392 - neutron_utils - INFO - Creating network with name NeutronUtilsRouterTests-2e4fb9f3-312b-4954-8015-435464fdc8b0-pub-net - 2017-03-21 13:35:58,215 - neutron_utils - INFO - Creating router with name - NeutronUtilsRouterTests-2e4fb9f3-312b-4954-8015-435464fdc8b0-pub-router - 2017-03-21 13:36:00,369 - neutron_utils - INFO - Adding interface to router with name NeutronUtilsRouterTests-2e4fb9f3-312b-4954-8015-435464fdc8b0-pub-router - 2017-03-21 13:36:00,369 - neutron_utils - INFO - Deleting router with name - NeutronUtilsRouterTests-2e4fb9f3-312b-4954-8015-435464fdc8b0-pub-router - 2017-03-21 13:36:02,742 - neutron_utils - INFO - Deleting network with name NeutronUtilsRouterTests-2e4fb9f3-312b-4954-8015-435464fdc8b0-pub-net ok - test_create_port (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsRouterTests) ... - 2017-03-21 13:36:05,010 - neutron_utils - INFO - Creating network with name NeutronUtilsRouterTests-dde05ce1-a2f8-4c5e-a028-e1ca0e11a05b-pub-net - 2017-03-21 13:36:05,996 - neutron_utils - INFO - Creating subnet with name NeutronUtilsRouterTests-dde05ce1-a2f8-4c5e-a028-e1ca0e11a05b-pub-subnet - 2017-03-21 13:36:09,103 - neutron_utils - INFO - Creating port for network with name - NeutronUtilsRouterTests-dde05ce1-a2f8-4c5e-a028-e1ca0e11a05b-pub-net - 2017-03-21 13:36:10,312 - neutron_utils - INFO - Deleting port with name NeutronUtilsRouterTests-dde05ce1-a2f8-4c5e-a028-e1ca0e11a05b-port - 2017-03-21 13:36:11,045 - neutron_utils - INFO - Deleting subnet with name NeutronUtilsRouterTests-dde05ce1-a2f8-4c5e-a028-e1ca0e11a05b-pub-subnet - 2017-03-21 13:36:14,265 - neutron_utils - INFO - Deleting network with name NeutronUtilsRouterTests-dde05ce1-a2f8-4c5e-a028-e1ca0e11a05b-pub-net ok - test_create_port_empty_name (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsRouterTests) ... - 2017-03-21 13:36:16,250 - neutron_utils - INFO - Creating network with name NeutronUtilsRouterTests-b986a259-e873-431c-bde4-b2771ace4549-pub-net - 2017-03-21 13:36:16,950 - neutron_utils - INFO - Creating subnet with name NeutronUtilsRouterTests-b986a259-e873-431c-bde4-b2771ace4549-pub-subnet - 2017-03-21 13:36:17,798 - neutron_utils - INFO - Creating port for network with name - NeutronUtilsRouterTests-b986a259-e873-431c-bde4-b2771ace4549-pub-net - 2017-03-21 13:36:18,544 - neutron_utils - INFO - Deleting port with name NeutronUtilsRouterTests-b986a259-e873-431c-bde4-b2771ace4549-port - 2017-03-21 13:36:19,582 - neutron_utils - INFO - Deleting subnet with name NeutronUtilsRouterTests-b986a259-e873-431c-bde4-b2771ace4549-pub-subnet - 2017-03-21 13:36:21,606 - neutron_utils - INFO - Deleting network with name NeutronUtilsRouterTests-b986a259-e873-431c-bde4-b2771ace4549-pub-net ok - test_create_port_invalid_ip (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsRouterTests) ... - 2017-03-21 13:36:23,779 - neutron_utils - INFO - Creating network with name NeutronUtilsRouterTests-7ab3a329-9dd8-4e6f-9d52-aafb47ea5122-pub-net - 2017-03-21 13:36:25,201 - neutron_utils - INFO - Creating subnet with name NeutronUtilsRouterTests-7ab3a329-9dd8-4e6f-9d52-aafb47ea5122-pub-subnet - 2017-03-21 13:36:25,599 - neutron_utils - INFO - Deleting subnet with name NeutronUtilsRouterTests-7ab3a329-9dd8-4e6f-9d52-aafb47ea5122-pub-subnet - 2017-03-21 13:36:26,220 - neutron_utils - INFO - Deleting network with name NeutronUtilsRouterTests-7ab3a329-9dd8-4e6f-9d52-aafb47ea5122-pub-net ok - test_create_port_invalid_ip_to_subnet (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsRouterTests) ... - 2017-03-21 13:36:27,112 - neutron_utils - INFO - Creating network with name NeutronUtilsRouterTests-c016821d-cd4f-4e0f-8f8c-d5cef3392e64-pub-net - 2017-03-21 13:36:28,720 - neutron_utils - INFO - Creating subnet with name NeutronUtilsRouterTests-c016821d-cd4f-4e0f-8f8c-d5cef3392e64-pub-subnet - 2017-03-21 13:36:29,457 - neutron_utils - INFO - Deleting subnet with name NeutronUtilsRouterTests-c016821d-cd4f-4e0f-8f8c-d5cef3392e64-pub-subnet - 2017-03-21 13:36:29,909 - neutron_utils - INFO - Deleting network with name NeutronUtilsRouterTests-c016821d-cd4f-4e0f-8f8c-d5cef3392e64-pub-net ok - test_create_port_null_ip (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsRouterTests) ... - 2017-03-21 13:36:31,037 - neutron_utils - INFO - Creating network with name NeutronUtilsRouterTests-9a86227f-6041-4b04-86a7-1701fb86baa3-pub-net - 2017-03-21 13:36:31,695 - neutron_utils - INFO - Creating subnet with name NeutronUtilsRouterTests-9a86227f-6041-4b04-86a7-1701fb86baa3-pub-subnet - 2017-03-21 13:36:32,305 - neutron_utils - INFO - Deleting subnet with name NeutronUtilsRouterTests-9a86227f-6041-4b04-86a7-1701fb86baa3-pub-subnet - 2017-03-21 13:36:33,553 - neutron_utils - INFO - Deleting network with name NeutronUtilsRouterTests-9a86227f-6041-4b04-86a7-1701fb86baa3-pub-net ok - test_create_port_null_name (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsRouterTests) ... - 2017-03-21 13:36:34,593 - neutron_utils - INFO - Creating network with name NeutronUtilsRouterTests-42efa897-4f65-4d9b-b19d-fbc61f97c966-pub-net - 2017-03-21 13:36:35,217 - neutron_utils - INFO - Creating subnet with name NeutronUtilsRouterTests-42efa897-4f65-4d9b-b19d-fbc61f97c966-pub-subnet - 2017-03-21 13:36:36,648 - neutron_utils - INFO - Deleting subnet with name NeutronUtilsRouterTests-42efa897-4f65-4d9b-b19d-fbc61f97c966-pub-subnet - 2017-03-21 13:36:37,251 - neutron_utils - INFO - Deleting network with name NeutronUtilsRouterTests-42efa897-4f65-4d9b-b19d-fbc61f97c966-pub-net ok - test_create_port_null_network_object (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsRouterTests) ... - 2017-03-21 13:36:37,885 - neutron_utils - INFO - Creating network with name NeutronUtilsRouterTests-617f4110-45c1-4900-bad1-a6204f34dd64-pub-net - 2017-03-21 13:36:38,468 - neutron_utils - INFO - Creating subnet with name NeutronUtilsRouterTests-617f4110-45c1-4900-bad1-a6204f34dd64-pub-subnet - 2017-03-21 13:36:40,005 - neutron_utils - INFO - Deleting subnet with name NeutronUtilsRouterTests-617f4110-45c1-4900-bad1-a6204f34dd64-pub-subnet - 2017-03-21 13:36:41,637 - neutron_utils - INFO - Deleting network with name NeutronUtilsRouterTests-617f4110-45c1-4900-bad1-a6204f34dd64-pub-net ok + test_create_subnet (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsSubnetTests) ... 2017-03-30 05:37:04,953 - neutron_utils - INFO - Creating network with name NeutronUtilsSubnetTests-127e135b-f050-4e85-8c9f-b4f72fb1b028-pub-net + 2017-03-30 05:37:06,108 - neutron_utils - INFO - Creating subnet with name NeutronUtilsSubnetTests-127e135b-f050-4e85-8c9f-b4f72fb1b028-pub-subnet + 2017-03-30 05:37:07,544 - neutron_utils - INFO - Deleting subnet with name NeutronUtilsSubnetTests-127e135b-f050-4e85-8c9f-b4f72fb1b028-pub-subnet + 2017-03-30 05:37:07,944 - neutron_utils - INFO - Deleting network with name NeutronUtilsSubnetTests-127e135b-f050-4e85-8c9f-b4f72fb1b028-pub-net + ok + test_create_subnet_empty_cidr (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsSubnetTests) ... 2017-03-30 05:37:08,594 - neutron_utils - INFO - Creating network with name NeutronUtilsSubnetTests-4edb48fe-2532-409b-8dc7-dcb344068a20-pub-net + 2017-03-30 05:37:09,862 - neutron_utils - INFO - Deleting network with name NeutronUtilsSubnetTests-4edb48fe-2532-409b-8dc7-dcb344068a20-pub-net + ok + test_create_subnet_empty_name (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsSubnetTests) ... 2017-03-30 05:37:10,962 - neutron_utils - INFO - Creating network with name NeutronUtilsSubnetTests-bb15908a-a475-45e9-9777-8b5d3faaaea8-pub-net + 2017-03-30 05:37:11,973 - neutron_utils - INFO - Creating subnet with name NeutronUtilsSubnetTests-bb15908a-a475-45e9-9777-8b5d3faaaea8-pub-subnet + 2017-03-30 05:37:13,088 - neutron_utils - INFO - Deleting network with name NeutronUtilsSubnetTests-bb15908a-a475-45e9-9777-8b5d3faaaea8-pub-net + ok + test_create_subnet_null_cidr (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsSubnetTests) ... 2017-03-30 05:37:14,032 - neutron_utils - INFO - Creating network with name NeutronUtilsSubnetTests-701278ff-f4b6-478f-b16f-1d3fdfb43ed7-pub-net + 2017-03-30 05:37:15,100 - neutron_utils - INFO - Deleting network with name NeutronUtilsSubnetTests-701278ff-f4b6-478f-b16f-1d3fdfb43ed7-pub-net + ok + test_create_subnet_null_name (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsSubnetTests) ... 2017-03-30 05:37:15,658 - neutron_utils - INFO - Creating network with name NeutronUtilsSubnetTests-2dad9c37-c892-494b-a8dc-51963ce11cd8-pub-net + 2017-03-30 05:37:16,184 - neutron_utils - INFO - Deleting network with name NeutronUtilsSubnetTests-2dad9c37-c892-494b-a8dc-51963ce11cd8-pub-net + ok + test_add_interface_router (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsRouterTests) ... 2017-03-30 05:37:17,438 - neutron_utils - INFO - Creating network with name NeutronUtilsRouterTests-5f1f0b29-1148-4628-8626-f2aa63b17914-pub-net + 2017-03-30 05:37:18,624 - neutron_utils - INFO - Creating subnet with name NeutronUtilsRouterTests-5f1f0b29-1148-4628-8626-f2aa63b17914-pub-subnet + 2017-03-30 05:37:20,041 - neutron_utils - INFO - Creating router with name - NeutronUtilsRouterTests-5f1f0b29-1148-4628-8626-f2aa63b17914-pub-router + 2017-03-30 05:37:22,518 - neutron_utils - INFO - Adding interface to router with name NeutronUtilsRouterTests-5f1f0b29-1148-4628-8626-f2aa63b17914-pub-router + 2017-03-30 05:37:23,883 - neutron_utils - INFO - Removing router interface from router named NeutronUtilsRouterTests-5f1f0b29-1148-4628-8626-f2aa63b17914-pub-router + 2017-03-30 05:37:25,345 - neutron_utils - INFO - Deleting router with name - NeutronUtilsRouterTests-5f1f0b29-1148-4628-8626-f2aa63b17914-pub-router + 2017-03-30 05:37:27,019 - neutron_utils - INFO - Deleting subnet with name NeutronUtilsRouterTests-5f1f0b29-1148-4628-8626-f2aa63b17914-pub-subnet + 2017-03-30 05:37:28,570 - neutron_utils - INFO - Deleting network with name NeutronUtilsRouterTests-5f1f0b29-1148-4628-8626-f2aa63b17914-pub-net + ok + test_add_interface_router_null_router (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsRouterTests) ... 2017-03-30 05:37:29,583 - neutron_utils - INFO - Creating network with name NeutronUtilsRouterTests-021a41c7-e2b2-45df-bb6d-630ddba2b776-pub-net + 2017-03-30 05:37:30,234 - neutron_utils - INFO - Creating subnet with name NeutronUtilsRouterTests-021a41c7-e2b2-45df-bb6d-630ddba2b776-pub-subnet + 2017-03-30 05:37:30,724 - neutron_utils - INFO - Deleting subnet with name NeutronUtilsRouterTests-021a41c7-e2b2-45df-bb6d-630ddba2b776-pub-subnet + 2017-03-30 05:37:31,128 - neutron_utils - INFO - Deleting network with name NeutronUtilsRouterTests-021a41c7-e2b2-45df-bb6d-630ddba2b776-pub-net + ok + test_add_interface_router_null_subnet (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsRouterTests) ... 2017-03-30 05:37:32,229 - neutron_utils - INFO - Creating network with name NeutronUtilsRouterTests-e52f96b6-92c9-49a3-ac7f-6a4a61a82c7e-pub-net + 2017-03-30 05:37:32,833 - neutron_utils - INFO - Creating router with name - NeutronUtilsRouterTests-e52f96b6-92c9-49a3-ac7f-6a4a61a82c7e-pub-router + 2017-03-30 05:37:34,002 - neutron_utils - INFO - Adding interface to router with name NeutronUtilsRouterTests-e52f96b6-92c9-49a3-ac7f-6a4a61a82c7e-pub-router + 2017-03-30 05:37:34,003 - neutron_utils - INFO - Deleting router with name - NeutronUtilsRouterTests-e52f96b6-92c9-49a3-ac7f-6a4a61a82c7e-pub-router + 2017-03-30 05:37:35,238 - neutron_utils - INFO - Deleting network with name NeutronUtilsRouterTests-e52f96b6-92c9-49a3-ac7f-6a4a61a82c7e-pub-net + ok + test_create_port (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsRouterTests) ... 2017-03-30 05:37:35,898 - neutron_utils - INFO - Creating network with name NeutronUtilsRouterTests-842cf533-4886-4539-86e4-15bcd8c77b63-pub-net + 2017-03-30 05:37:36,426 - neutron_utils - INFO - Creating subnet with name NeutronUtilsRouterTests-842cf533-4886-4539-86e4-15bcd8c77b63-pub-subnet + 2017-03-30 05:37:37,725 - neutron_utils - INFO - Creating port for network with name - NeutronUtilsRouterTests-842cf533-4886-4539-86e4-15bcd8c77b63-pub-net + 2017-03-30 05:37:38,511 - neutron_utils - INFO - Deleting port with name NeutronUtilsRouterTests-842cf533-4886-4539-86e4-15bcd8c77b63-port + 2017-03-30 05:37:39,036 - neutron_utils - INFO - Deleting subnet with name NeutronUtilsRouterTests-842cf533-4886-4539-86e4-15bcd8c77b63-pub-subnet + 2017-03-30 05:37:41,326 - neutron_utils - INFO - Deleting network with name NeutronUtilsRouterTests-842cf533-4886-4539-86e4-15bcd8c77b63-pub-net + ok + test_create_port_empty_name (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsRouterTests) ... 2017-03-30 05:37:42,725 - neutron_utils - INFO - Creating network with name NeutronUtilsRouterTests-303b5eae-374a-4da9-a905-aa39a7d5f026-pub-net + 2017-03-30 05:37:43,246 - neutron_utils - INFO - Creating subnet with name NeutronUtilsRouterTests-303b5eae-374a-4da9-a905-aa39a7d5f026-pub-subnet + 2017-03-30 05:37:43,945 - neutron_utils - INFO - Creating port for network with name - NeutronUtilsRouterTests-303b5eae-374a-4da9-a905-aa39a7d5f026-pub-net + 2017-03-30 05:37:45,674 - neutron_utils - INFO - Deleting port with name NeutronUtilsRouterTests-303b5eae-374a-4da9-a905-aa39a7d5f026-port + 2017-03-30 05:37:46,197 - neutron_utils - INFO - Deleting subnet with name NeutronUtilsRouterTests-303b5eae-374a-4da9-a905-aa39a7d5f026-pub-subnet + 2017-03-30 05:37:48,252 - neutron_utils - INFO - Deleting network with name NeutronUtilsRouterTests-303b5eae-374a-4da9-a905-aa39a7d5f026-pub-net + ok + test_create_port_invalid_ip (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsRouterTests) ... 2017-03-30 05:37:49,864 - neutron_utils - INFO - Creating network with name NeutronUtilsRouterTests-bd7a4489-79e8-4328-8519-5ad1951c0b5d-pub-net + 2017-03-30 05:37:50,322 - neutron_utils - INFO - Creating subnet with name NeutronUtilsRouterTests-bd7a4489-79e8-4328-8519-5ad1951c0b5d-pub-subnet + 2017-03-30 05:37:50,803 - neutron_utils - INFO - Deleting subnet with name NeutronUtilsRouterTests-bd7a4489-79e8-4328-8519-5ad1951c0b5d-pub-subnet + 2017-03-30 05:37:51,240 - neutron_utils - INFO - Deleting network with name NeutronUtilsRouterTests-bd7a4489-79e8-4328-8519-5ad1951c0b5d-pub-net + ok + test_create_port_invalid_ip_to_subnet (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsRouterTests) ... 2017-03-30 05:37:51,767 - neutron_utils - INFO - Creating network with name NeutronUtilsRouterTests-ef2c3474-7b51-483b-b269-05fc4532f294-pub-net + 2017-03-30 05:37:52,246 - neutron_utils - INFO - Creating subnet with name NeutronUtilsRouterTests-ef2c3474-7b51-483b-b269-05fc4532f294-pub-subnet + 2017-03-30 05:37:52,795 - neutron_utils - INFO - Deleting subnet with name NeutronUtilsRouterTests-ef2c3474-7b51-483b-b269-05fc4532f294-pub-subnet + 2017-03-30 05:37:53,199 - neutron_utils - INFO - Deleting network with name NeutronUtilsRouterTests-ef2c3474-7b51-483b-b269-05fc4532f294-pub-net + ok + test_create_port_null_ip (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsRouterTests) ... 2017-03-30 05:37:53,806 - neutron_utils - INFO - Creating network with name NeutronUtilsRouterTests-f5829764-e1ff-4a43-b24e-52c0107f12b2-pub-net + 2017-03-30 05:37:54,326 - neutron_utils - INFO - Creating subnet with name NeutronUtilsRouterTests-f5829764-e1ff-4a43-b24e-52c0107f12b2-pub-subnet + 2017-03-30 05:37:55,475 - neutron_utils - INFO - Deleting subnet with name NeutronUtilsRouterTests-f5829764-e1ff-4a43-b24e-52c0107f12b2-pub-subnet + 2017-03-30 05:37:55,932 - neutron_utils - INFO - Deleting network with name NeutronUtilsRouterTests-f5829764-e1ff-4a43-b24e-52c0107f12b2-pub-net + ok + test_create_port_null_name (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsRouterTests) ... 2017-03-30 05:37:57,121 - neutron_utils - INFO - Creating network with name NeutronUtilsRouterTests-194aff34-e0e6-4218-8c17-33a9d9b34816-pub-net + 2017-03-30 05:37:57,611 - neutron_utils - INFO - Creating subnet with name NeutronUtilsRouterTests-194aff34-e0e6-4218-8c17-33a9d9b34816-pub-subnet + 2017-03-30 05:37:58,880 - neutron_utils - INFO - Deleting subnet with name NeutronUtilsRouterTests-194aff34-e0e6-4218-8c17-33a9d9b34816-pub-subnet + 2017-03-30 05:37:59,638 - neutron_utils - INFO - Deleting network with name NeutronUtilsRouterTests-194aff34-e0e6-4218-8c17-33a9d9b34816-pub-net + ok + test_create_port_null_network_object (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsRouterTests) ... 2017-03-30 05:38:01,037 - neutron_utils - INFO - Creating network with name NeutronUtilsRouterTests-3a49f710-5292-411b-83df-42bb176a5020-pub-net + 2017-03-30 05:38:01,609 - neutron_utils - INFO - Creating subnet with name NeutronUtilsRouterTests-3a49f710-5292-411b-83df-42bb176a5020-pub-subnet + 2017-03-30 05:38:02,095 - neutron_utils - INFO - Deleting subnet with name NeutronUtilsRouterTests-3a49f710-5292-411b-83df-42bb176a5020-pub-subnet + 2017-03-30 05:38:03,034 - neutron_utils - INFO - Deleting network with name NeutronUtilsRouterTests-3a49f710-5292-411b-83df-42bb176a5020-pub-net + ok test_create_router_empty_name (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsRouterTests) ... ok test_create_router_null_name (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsRouterTests) ... ok - test_create_router_simple (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsRouterTests) ... - 2017-03-21 13:36:43,424 - neutron_utils - INFO - Creating router with name - NeutronUtilsRouterTests-b6a2dafc-38d4-4c46-bb41-2ba9e1c0084e-pub-router - 2017-03-21 13:36:45,013 - neutron_utils - INFO - Deleting router with name - NeutronUtilsRouterTests-b6a2dafc-38d4-4c46-bb41-2ba9e1c0084e-pub-router ok - test_create_router_with_public_interface (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsRouterTests) ... - 2017-03-21 13:36:47,829 - neutron_utils - INFO - Creating router with name - NeutronUtilsRouterTests-d268dda2-7a30-4d3d-a008-e5aa4592637d-pub-router - 2017-03-21 13:36:49,448 - neutron_utils - INFO - Deleting router with name - NeutronUtilsRouterTests-d268dda2-7a30-4d3d-a008-e5aa4592637d-pub-router ok - test_create_delete_simple_sec_grp (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsSecurityGroupTests) ... - 2017-03-21 13:36:51,067 - neutron_utils - INFO - Creating security group with name - NeutronUtilsSecurityGroupTests-1543e861-ea38-4fbe-9723-c27552e3eb7aname - 2017-03-21 13:36:51,493 - neutron_utils - INFO - Retrieving security group with name - NeutronUtilsSecurityGroupTests-1543e861-ea38-4fbe-9723-c27552e3eb7aname - 2017-03-21 13:36:51,568 - neutron_utils - INFO - Deleting security group with name - NeutronUtilsSecurityGroupTests-1543e861-ea38-4fbe-9723-c27552e3eb7aname - 2017-03-21 13:36:51,772 - neutron_utils - INFO - Retrieving security group with name - NeutronUtilsSecurityGroupTests-1543e861-ea38-4fbe-9723-c27552e3eb7aname ok + test_create_router_simple (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsRouterTests) ... 2017-03-30 05:38:03,973 - neutron_utils - INFO - Creating router with name - NeutronUtilsRouterTests-54c3eaf0-00c8-4726-a248-b57f98a37999-pub-router + 2017-03-30 05:38:05,749 - neutron_utils - INFO - Deleting router with name - NeutronUtilsRouterTests-54c3eaf0-00c8-4726-a248-b57f98a37999-pub-router + ok + test_create_router_with_public_interface (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsRouterTests) ... 2017-03-30 05:38:07,392 - neutron_utils - INFO - Creating router with name - NeutronUtilsRouterTests-a4e93ee5-781e-4e9d-9b55-b4d8fb3f0e7b-pub-router + 2017-03-30 05:38:09,164 - neutron_utils - INFO - Deleting router with name - NeutronUtilsRouterTests-a4e93ee5-781e-4e9d-9b55-b4d8fb3f0e7b-pub-router + ok + test_create_delete_simple_sec_grp (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsSecurityGroupTests) ... 2017-03-30 05:38:10,643 - neutron_utils - INFO - Creating security group with name - NeutronUtilsSecurityGroupTests-0b62acfe-fc43-4c9f-bd30-2ce350c73c57name + 2017-03-30 05:38:11,020 - neutron_utils - INFO - Retrieving security group with name - NeutronUtilsSecurityGroupTests-0b62acfe-fc43-4c9f-bd30-2ce350c73c57name + 2017-03-30 05:38:11,084 - neutron_utils - INFO - Deleting security group with name - NeutronUtilsSecurityGroupTests-0b62acfe-fc43-4c9f-bd30-2ce350c73c57name + 2017-03-30 05:38:11,230 - neutron_utils - INFO - Retrieving security group with name - NeutronUtilsSecurityGroupTests-0b62acfe-fc43-4c9f-bd30-2ce350c73c57name + ok test_create_sec_grp_no_name (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsSecurityGroupTests) ... ok - test_create_sec_grp_no_rules (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsSecurityGroupTests) ... - 2017-03-21 13:36:52,253 - neutron_utils - INFO - Creating security group with name - NeutronUtilsSecurityGroupTests-57c60864-f46c-4391-ba99-6acc4dd123ddname - 2017-03-21 13:36:52,634 - neutron_utils - INFO - Retrieving security group with name - NeutronUtilsSecurityGroupTests-57c60864-f46c-4391-ba99-6acc4dd123ddname - 2017-03-21 13:36:52,718 - neutron_utils - INFO - Deleting security group with name - NeutronUtilsSecurityGroupTests-57c60864-f46c-4391-ba99-6acc4dd123ddname ok - test_create_sec_grp_one_rule (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsSecurityGroupTests) ... - 2017-03-21 13:36:53,082 - neutron_utils - INFO - Creating security group with name - NeutronUtilsSecurityGroupTests-a3ac62bb-a7e8-4fc2-ba4c-e656f1f3c9a1name - 2017-03-21 13:36:53,483 - neutron_utils - INFO - Retrieving security group rules associate with the security group - NeutronUtilsSecurityGroupTests-a3ac62bb-a7e8-4fc2-ba4c-e656f1f3c9a1name - 2017-03-21 13:36:53,548 - neutron_utils - INFO - Creating security group to security group - NeutronUtilsSecurityGroupTests-a3ac62bb-a7e8-4fc2-ba4c-e656f1f3c9a1name - 2017-03-21 13:36:53,548 - neutron_utils - INFO - Retrieving security group with name - NeutronUtilsSecurityGroupTests-a3ac62bb-a7e8-4fc2-ba4c-e656f1f3c9a1name - 2017-03-21 13:36:53,871 - neutron_utils - INFO - Retrieving security group with name - NeutronUtilsSecurityGroupTests-a3ac62bb-a7e8-4fc2-ba4c-e656f1f3c9a1name - 2017-03-21 13:36:53,944 - neutron_utils - INFO - Retrieving security group rules associate with the security group - NeutronUtilsSecurityGroupTests-a3ac62bb-a7e8-4fc2-ba4c-e656f1f3c9a1name - 2017-03-21 13:36:53,991 - neutron_utils - INFO - Retrieving security group with name - NeutronUtilsSecurityGroupTests-a3ac62bb-a7e8-4fc2-ba4c-e656f1f3c9a1name - 2017-03-21 13:36:54,069 - neutron_utils - INFO - Deleting security group rule with ID - 7f76046c-d043-46e0-9d12-4b983525810b - 2017-03-21 13:36:54,185 - neutron_utils - INFO - Deleting security group rule with ID - f18a9ed1-466f-4373-a6b2-82bd317bc838 - 2017-03-21 13:36:54,338 - neutron_utils - INFO - Deleting security group rule with ID - fe34a3d0-948e-47c1-abad-c3ec8d33b2fb - 2017-03-21 13:36:54,444 - neutron_utils - INFO - Deleting security group with name - NeutronUtilsSecurityGroupTests-a3ac62bb-a7e8-4fc2-ba4c-e656f1f3c9a1name ok - test_create_delete_keypair (snaps.openstack.utils.tests.nova_utils_tests.NovaUtilsKeypairTests) ... - 2017-03-21 13:36:54,637 - nova_utils - INFO - Creating keypair with name - NovaUtilsKeypairTests-5ce69b6f-d8d0-4b66-bd25-30a22cf3bda0 ok - test_create_key_from_file (snaps.openstack.utils.tests.nova_utils_tests.NovaUtilsKeypairTests) ... - 2017-03-21 13:36:58,989 - nova_utils - INFO - Saved public key to - tmp/NovaUtilsKeypairTests-df3e848d-a467-4cc4-99d5-022eb67eee94.pub - 2017-03-21 13:36:58,990 - nova_utils - INFO - Saved private key to - tmp/NovaUtilsKeypairTests-df3e848d-a467-4cc4-99d5-022eb67eee94 - 2017-03-21 13:36:58,990 - nova_utils - INFO - Saving keypair to - tmp/NovaUtilsKeypairTests-df3e848d-a467-4cc4-99d5-022eb67eee94.pub - 2017-03-21 13:36:58,990 - nova_utils - INFO - Creating keypair with name - NovaUtilsKeypairTests-df3e848d-a467-4cc4-99d5-022eb67eee94 ok - test_create_keypair (snaps.openstack.utils.tests.nova_utils_tests.NovaUtilsKeypairTests) ... - 2017-03-21 13:36:59,807 - nova_utils - INFO - Creating keypair with name - NovaUtilsKeypairTests-fc7f7ffd-80f6-43df-bd41-a3c014ba8c3d ok - test_floating_ips (snaps.openstack.utils.tests.nova_utils_tests.NovaUtilsKeypairTests) ... - 2017-03-21 13:37:02,765 - nova_utils - INFO - Creating floating ip to external network - admin_floating_net ok + test_create_sec_grp_no_rules (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsSecurityGroupTests) ... 2017-03-30 05:38:11,653 - neutron_utils - INFO - Creating security group with name - NeutronUtilsSecurityGroupTests-19dc66ba-630d-4ef5-87e1-b0461971ef8ename + 2017-03-30 05:38:11,960 - neutron_utils - INFO - Retrieving security group with name - NeutronUtilsSecurityGroupTests-19dc66ba-630d-4ef5-87e1-b0461971ef8ename + 2017-03-30 05:38:12,047 - neutron_utils - INFO - Deleting security group with name - NeutronUtilsSecurityGroupTests-19dc66ba-630d-4ef5-87e1-b0461971ef8ename + ok + test_create_sec_grp_one_rule (snaps.openstack.utils.tests.neutron_utils_tests.NeutronUtilsSecurityGroupTests) ... 2017-03-30 05:38:12,321 - neutron_utils - INFO - Creating security group with name - NeutronUtilsSecurityGroupTests-cf3022e5-dc6e-4cc1-8fe0-41c8c1c56defname + 2017-03-30 05:38:12,676 - neutron_utils - INFO - Retrieving security group rules associate with the security group - NeutronUtilsSecurityGroupTests-cf3022e5-dc6e-4cc1-8fe0-41c8c1c56defname + 2017-03-30 05:38:12,735 - neutron_utils - INFO - Creating security group to security group - NeutronUtilsSecurityGroupTests-cf3022e5-dc6e-4cc1-8fe0-41c8c1c56defname + 2017-03-30 05:38:12,736 - neutron_utils - INFO - Retrieving security group with name - NeutronUtilsSecurityGroupTests-cf3022e5-dc6e-4cc1-8fe0-41c8c1c56defname + 2017-03-30 05:38:12,948 - neutron_utils - INFO - Retrieving security group with name - NeutronUtilsSecurityGroupTests-cf3022e5-dc6e-4cc1-8fe0-41c8c1c56defname + 2017-03-30 05:38:13,024 - neutron_utils - INFO - Retrieving security group rules associate with the security group - NeutronUtilsSecurityGroupTests-cf3022e5-dc6e-4cc1-8fe0-41c8c1c56defname + 2017-03-30 05:38:13,054 - neutron_utils - INFO - Retrieving security group with name - NeutronUtilsSecurityGroupTests-cf3022e5-dc6e-4cc1-8fe0-41c8c1c56defname + 2017-03-30 05:38:13,121 - neutron_utils - INFO - Deleting security group rule with ID - 07b4bfbe-c632-496b-95f7-b42de9293519 + 2017-03-30 05:38:13,238 - neutron_utils - INFO - Deleting security group rule with ID - c5e58c9f-6cc8-4543-ae39-aa1960b9a3e1 + 2017-03-30 05:38:13,387 - neutron_utils - INFO - Deleting security group rule with ID - 184d29e8-b460-4f80-858f-7915b9bafe9b + 2017-03-30 05:38:13,492 - neutron_utils - INFO - Deleting security group with name - NeutronUtilsSecurityGroupTests-cf3022e5-dc6e-4cc1-8fe0-41c8c1c56defname + ok + test_create_delete_keypair (snaps.openstack.utils.tests.nova_utils_tests.NovaUtilsKeypairTests) ... 2017-03-30 05:38:13,664 - nova_utils - INFO - Creating keypair with name - NovaUtilsKeypairTests-cb36f8f9-ceca-4802-8735-a1dc846ad2a8 + ok + test_create_key_from_file (snaps.openstack.utils.tests.nova_utils_tests.NovaUtilsKeypairTests) ... 2017-03-30 05:38:18,337 - nova_utils - INFO - Saved public key to - tmp/NovaUtilsKeypairTests-a7eba01b-9615-4271-b5f9-8fe915972f16.pub + 2017-03-30 05:38:18,338 - nova_utils - INFO - Saved private key to - tmp/NovaUtilsKeypairTests-a7eba01b-9615-4271-b5f9-8fe915972f16 + 2017-03-30 05:38:18,338 - nova_utils - INFO - Saving keypair to - tmp/NovaUtilsKeypairTests-a7eba01b-9615-4271-b5f9-8fe915972f16.pub + 2017-03-30 05:38:18,338 - nova_utils - INFO - Creating keypair with name - NovaUtilsKeypairTests-a7eba01b-9615-4271-b5f9-8fe915972f16 + ok + test_create_keypair (snaps.openstack.utils.tests.nova_utils_tests.NovaUtilsKeypairTests) ... 2017-03-30 05:38:21,492 - nova_utils - INFO - Creating keypair with name - NovaUtilsKeypairTests-74535dab-d450-47b1-8814-c0b3f48b7643 + ok + test_floating_ips (snaps.openstack.utils.tests.nova_utils_tests.NovaUtilsKeypairTests) ... 2017-03-30 05:38:23,509 - nova_utils - INFO - Creating floating ip to external network - admin_floating_net + ok test_create_delete_flavor (snaps.openstack.utils.tests.nova_utils_tests.NovaUtilsFlavorTests) ... ok test_create_flavor (snaps.openstack.utils.tests.nova_utils_tests.NovaUtilsFlavorTests) ... ok test_create_clean_flavor (snaps.openstack.tests.create_flavor_tests.CreateFlavorTests) ... ok test_create_delete_flavor (snaps.openstack.tests.create_flavor_tests.CreateFlavorTests) ... ok test_create_flavor (snaps.openstack.tests.create_flavor_tests.CreateFlavorTests) ... ok - test_create_flavor_existing (snaps.openstack.tests.create_flavor_tests.CreateFlavorTests) ... - 2017-03-21 13:37:18,545 - create_image - INFO - Found flavor with name - CreateFlavorTests-3befc152-4319-4f9c-82d4-75f8941d9533name ok + test_create_flavor_existing (snaps.openstack.tests.create_flavor_tests.CreateFlavorTests) ... 2017-03-30 05:38:34,855 - create_image - INFO - Found flavor with name - CreateFlavorTests-3e389b6c-ee95-4f2d-bf74-78d324722ef2name + ok ---------------------------------------------------------------------- - Ran 48 tests in 171.000s + Ran 48 tests in 131.483s OK - 2017-03-21 13:37:18,620 - functest.core.testcase_base - INFO - api_check OK - 2017-03-21 13:37:18,977 - functest.core.testcase_base - INFO - The results were successfully pushed to DB - 2017-03-21 13:37:18,977 - run_tests - INFO - Test execution time: 02:52 - 2017-03-21 13:37:18,981 - run_tests - INFO - - - 2017-03-21 13:37:18,981 - run_tests - INFO - ============================================ - 2017-03-21 13:37:18,981 - run_tests - INFO - Running test case 'snaps_health_check'... - 2017-03-21 13:37:18,981 - run_tests - INFO - ============================================ - 2017-03-21 13:37:19,098 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds - 2017-03-21 13:37:19,099 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.7:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None - 2017-03-21 13:37:19,434 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds - 2017-03-21 13:37:19,435 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.7:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None - test_check_vm_ip_dhcp (snaps.openstack.tests.create_instance_tests.SimpleHealthCheck) ... - 2017-03-21 13:37:26,082 - create_image - INFO - Creating image - 2017-03-21 13:37:28,793 - create_image - INFO - Image is active with name - SimpleHealthCheck-23244728-5a5a-4545-9b16-50257a595e5d-image - 2017-03-21 13:37:28,793 - create_image - INFO - Image is now active with name - SimpleHealthCheck-23244728-5a5a-4545-9b16-50257a595e5d-image - 2017-03-21 13:37:28,794 - OpenStackNetwork - INFO - Creating neutron network SimpleHealthCheck-23244728-5a5a-4545-9b16-50257a595e5d-priv-net... - 2017-03-21 13:37:29,308 - neutron_utils - INFO - Creating network with name SimpleHealthCheck-23244728-5a5a-4545-9b16-50257a595e5d-priv-net - 2017-03-21 13:37:30,771 - neutron_utils - INFO - Creating subnet with name SimpleHealthCheck-23244728-5a5a-4545-9b16-50257a595e5d-priv-subnet - 2017-03-21 13:37:36,974 - neutron_utils - INFO - Creating port for network with name - SimpleHealthCheck-23244728-5a5a-4545-9b16-50257a595e5d-priv-net - 2017-03-21 13:37:38,188 - create_instance - INFO - Creating VM with name - SimpleHealthCheck-23244728-5a5a-4545-9b16-50257a595e5d-inst - 2017-03-21 13:37:41,538 - create_instance - INFO - Created instance with name - SimpleHealthCheck-23244728-5a5a-4545-9b16-50257a595e5d-inst - 2017-03-21 13:37:59,577 - create_instance - INFO - VM is - ACTIVE - 2017-03-21 13:37:59,577 - create_instance_tests - INFO - Looking for expression Lease of.*obtained in the console log - 2017-03-21 13:37:59,830 - create_instance_tests - INFO - DHCP lease obtained logged in console - 2017-03-21 13:37:59,830 - create_instance_tests - INFO - With correct IP address - 2017-03-21 13:37:59,830 - create_instance - INFO - Deleting Port - SimpleHealthCheck-23244728-5a5a-4545-9b16-50257a595e5dport-1 - 2017-03-21 13:37:59,830 - neutron_utils - INFO - Deleting port with name SimpleHealthCheck-23244728-5a5a-4545-9b16-50257a595e5dport-1 - 2017-03-21 13:38:00,705 - create_instance - INFO - Deleting VM instance - SimpleHealthCheck-23244728-5a5a-4545-9b16-50257a595e5d-inst - 2017-03-21 13:38:01,412 - create_instance - INFO - Checking deletion status - 2017-03-21 13:38:04,938 - create_instance - INFO - VM has been properly deleted VM with name - SimpleHealthCheck-23244728-5a5a-4545-9b16-50257a595e5d-inst + 2017-03-30 05:38:34,905 - functest - INFO - api_check OK + 2017-03-30 05:38:35,259 - functest - INFO - The results were successfully pushed to DB + 2017-03-30 05:38:35,259 - run_tests - INFO - Test execution time: 02:12 + 2017-03-30 05:38:35,267 - run_tests - INFO - + + 2017-03-30 05:38:35,268 - run_tests - INFO - ============================================ + 2017-03-30 05:38:35,268 - run_tests - INFO - Running test case 'snaps_health_check'... + 2017-03-30 05:38:35,268 - run_tests - INFO - ============================================ + 2017-03-30 05:38:35,383 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:38:35,384 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + 2017-03-30 05:38:35,855 - functest - INFO - Using flavor metatdata '{'hw:mem_page_size': 'any'}' + 2017-03-30 05:38:35,856 - file_utils - INFO - Attempting to read OS environment file - /home/opnfv/functest/conf/openstack.creds + 2017-03-30 05:38:35,856 - openstack_tests - INFO - OS Credentials = OSCreds - username=admin, password=admin, auth_url=http://192.168.10.2:5000/v3, project_name=admin, identity_api_version=3, image_api_version=1, network_api_version=2, compute_api_version=2, user_domain_id=default, proxy_settings=None + test_check_vm_ip_dhcp (snaps.openstack.tests.create_instance_tests.SimpleHealthCheck) ... 2017-03-30 05:38:39,896 - create_image - INFO - Creating image + 2017-03-30 05:38:41,843 - create_image - INFO - Image is active with name - SimpleHealthCheck-85a41a34-a9b3-463d-a12c-4bd057d70181-image + 2017-03-30 05:38:41,843 - create_image - INFO - Image is now active with name - SimpleHealthCheck-85a41a34-a9b3-463d-a12c-4bd057d70181-image + 2017-03-30 05:38:41,845 - OpenStackNetwork - INFO - Creating neutron network SimpleHealthCheck-85a41a34-a9b3-463d-a12c-4bd057d70181-priv-net... + 2017-03-30 05:38:42,140 - neutron_utils - INFO - Creating network with name SimpleHealthCheck-85a41a34-a9b3-463d-a12c-4bd057d70181-priv-net + 2017-03-30 05:38:42,480 - neutron_utils - INFO - Creating subnet with name SimpleHealthCheck-85a41a34-a9b3-463d-a12c-4bd057d70181-priv-subnet + 2017-03-30 05:38:44,166 - neutron_utils - INFO - Creating port for network with name - SimpleHealthCheck-85a41a34-a9b3-463d-a12c-4bd057d70181-priv-net + 2017-03-30 05:38:45,173 - create_instance - INFO - Creating VM with name - SimpleHealthCheck-85a41a34-a9b3-463d-a12c-4bd057d70181-inst + 2017-03-30 05:38:48,419 - create_instance - INFO - Created instance with name - SimpleHealthCheck-85a41a34-a9b3-463d-a12c-4bd057d70181-inst + 2017-03-30 05:39:05,164 - create_instance - INFO - VM is - ACTIVE + 2017-03-30 05:39:05,164 - create_instance_tests - INFO - Looking for expression Lease of.*obtained in the console log + 2017-03-30 05:39:06,547 - create_instance_tests - INFO - DHCP lease obtained logged in console + 2017-03-30 05:39:06,548 - create_instance_tests - INFO - With correct IP address + 2017-03-30 05:39:06,548 - create_instance - INFO - Deleting Port - SimpleHealthCheck-85a41a34-a9b3-463d-a12c-4bd057d70181port-1 + 2017-03-30 05:39:06,548 - neutron_utils - INFO - Deleting port with name SimpleHealthCheck-85a41a34-a9b3-463d-a12c-4bd057d70181port-1 + 2017-03-30 05:39:07,178 - create_instance - INFO - Deleting VM instance - SimpleHealthCheck-85a41a34-a9b3-463d-a12c-4bd057d70181-inst + 2017-03-30 05:39:07,693 - create_instance - INFO - Checking deletion status + 2017-03-30 05:39:11,088 - create_instance - INFO - VM has been properly deleted VM with name - SimpleHealthCheck-85a41a34-a9b3-463d-a12c-4bd057d70181-inst ok ---------------------------------------------------------------------- - Ran 1 test in 46.982s + Ran 1 test in 36.376s OK - 2017-03-21 13:38:06,417 - functest.core.testcase_base - INFO - snaps_health_check OK - 2017-03-21 13:38:06,778 - functest.core.testcase_base - INFO - The results were successfully pushed to DB - 2017-03-21 13:38:06,779 - run_tests - INFO - Test execution time: 00:47 - 2017-03-21 13:38:06,779 - run_tests - INFO - + 2017-03-30 05:39:12,233 - functest - INFO - snaps_health_check OK + 2017-03-30 05:39:12,598 - functest - INFO - The results were successfully pushed to DB + 2017-03-30 05:39:12,598 - run_tests - INFO - Test execution time: 00:37 + 2017-03-30 05:39:12,599 - run_tests - INFO - + and root@22e436918db0:~/repos/functest/ci# functest testcase run vping_ssh diff --git a/functest/ci/rally_aarch64_patch.conf b/functest/ci/rally_aarch64_patch.conf index a49588bf8..e5cae8137 100644 --- a/functest/ci/rally_aarch64_patch.conf +++ b/functest/ci/rally_aarch64_patch.conf @@ -1,5 +1,5 @@ img_name_regex = ^TestVM$ img_url = http://download.cirros-cloud.net/daily/20161201/cirros-d161201-aarch64-disk.img -flavor_ref_ram = 128 +flavor_ref_ram = 256 flavor_ref_alt_ram = 256 -heat_instance_type_ram = 128 +heat_instance_type_ram = 256 diff --git a/functest/ci/run_tests.py b/functest/ci/run_tests.py index 37b90f922..5793c04a7 100755 --- a/functest/ci/run_tests.py +++ b/functest/ci/run_tests.py @@ -144,7 +144,7 @@ def run_test(test, tier_name, testcases=None): try: module = importlib.import_module(run_dict['module']) cls = getattr(module, run_dict['class']) - test_case = cls() + test_case = cls(case_name=test_name) try: kwargs = run_dict['args'] diff --git a/functest/core/feature.py b/functest/core/feature.py index 325c10d49..5149f80fd 100644 --- a/functest/core/feature.py +++ b/functest/core/feature.py @@ -8,10 +8,9 @@ from functest.utils.constants import CONST class Feature(base.TestCase): - def __init__(self, project='functest', case='', repo='', cmd=''): - super(Feature, self).__init__() + def __init__(self, project='functest', case_name='', repo='', cmd=''): + super(Feature, self).__init__(case_name=case_name) self.project_name = project - self.case_name = case self.cmd = cmd self.repo = CONST.__getattribute__(repo) self.result_file = self.get_result_file() diff --git a/functest/core/pytest_suite_runner.py b/functest/core/pytest_suite_runner.py index 4f777628a..9cfaea7ae 100644 --- a/functest/core/pytest_suite_runner.py +++ b/functest/core/pytest_suite_runner.py @@ -15,8 +15,8 @@ class PyTestSuiteRunner(base.TestCase): This superclass is designed to execute pre-configured unittest.TestSuite() objects """ - def __init__(self): - super(PyTestSuiteRunner, self).__init__() + def __init__(self, case_name=''): + super(PyTestSuiteRunner, self).__init__(case_name) self.suite = None def run(self, **kwargs): diff --git a/functest/core/testcase.py b/functest/core/testcase.py index b540cfb5a..8c5fd6476 100644 --- a/functest/core/testcase.py +++ b/functest/core/testcase.py @@ -27,10 +27,10 @@ class TestCase(object): logger = ft_logger.Logger(__name__).getLogger() - def __init__(self): + def __init__(self, case_name=""): self.details = {} self.project_name = "functest" - self.case_name = "" + self.case_name = case_name self.criteria = "" self.start_time = "" self.stop_time = "" @@ -87,6 +87,7 @@ class TestCase(object): It could be overriden if the common implementation is not suitable. The following attributes must be set before pushing the results to DB: + * project_name, * case_name, * criteria, * start_time, diff --git a/functest/core/vnf_base.py b/functest/core/vnf_base.py index 3f0adcc66..3d3a441f4 100644 --- a/functest/core/vnf_base.py +++ b/functest/core/vnf_base.py @@ -21,11 +21,10 @@ class VnfOnBoardingBase(base.TestCase): logger = ft_logger.Logger(__name__).getLogger() - def __init__(self, project='functest', case='', repo='', cmd=''): - super(VnfOnBoardingBase, self).__init__() + def __init__(self, project='functest', case_name='', repo='', cmd=''): + super(VnfOnBoardingBase, self).__init__(case_name=case_name) self.repo = repo self.project_name = project - self.case_name = case self.cmd = cmd self.details = {} self.result_dir = CONST.dir_results diff --git a/functest/opnfv_tests/features/barometer.py b/functest/opnfv_tests/features/barometer.py index 6011340f8..6207f5814 100644 --- a/functest/opnfv_tests/features/barometer.py +++ b/functest/opnfv_tests/features/barometer.py @@ -16,9 +16,9 @@ class BarometerCollectd(base.Feature): Class for executing barometercollectd testcase. ''' - def __init__(self): + def __init__(self, case_name='barometercollectd'): super(BarometerCollectd, self).__init__(project='barometer', - case='barometercollectd', + case_name=case_name, repo='dir_repo_barometer') def execute(self): diff --git a/functest/opnfv_tests/features/copper.py b/functest/opnfv_tests/features/copper.py index 689341eab..5b88a4995 100644 --- a/functest/opnfv_tests/features/copper.py +++ b/functest/opnfv_tests/features/copper.py @@ -18,8 +18,8 @@ import functest.core.feature as base class Copper(base.Feature): - def __init__(self): + def __init__(self, case_name='copper-notification'): super(Copper, self).__init__(project='copper', - case='copper-notification', + case_name=case_name, repo='dir_repo_copper') self.cmd = 'cd %s/tests && bash run.sh && cd -' % self.repo diff --git a/functest/opnfv_tests/features/doctor.py b/functest/opnfv_tests/features/doctor.py index d32bbfc99..fd181a040 100644 --- a/functest/opnfv_tests/features/doctor.py +++ b/functest/opnfv_tests/features/doctor.py @@ -17,8 +17,8 @@ import functest.core.feature as base class Doctor(base.Feature): - def __init__(self): + def __init__(self, case_name='doctor-notification'): super(Doctor, self).__init__(project='doctor', - case='doctor-notification', + case_name=case_name, repo='dir_repo_doctor') self.cmd = 'cd %s/tests && ./run.sh' % self.repo diff --git a/functest/opnfv_tests/features/domino.py b/functest/opnfv_tests/features/domino.py index e34429bc2..1c620235c 100644 --- a/functest/opnfv_tests/features/domino.py +++ b/functest/opnfv_tests/features/domino.py @@ -18,8 +18,8 @@ import functest.core.feature as base class Domino(base.Feature): - def __init__(self): + def __init__(self, case_name='domino-multinode'): super(Domino, self).__init__(project='domino', - case='domino-multinode', + case_name=case_name, repo='dir_repo_domino') self.cmd = 'cd %s && ./tests/run_multinode.sh' % self.repo diff --git a/functest/opnfv_tests/features/netready.py b/functest/opnfv_tests/features/netready.py index 88f377c26..ada322c18 100644 --- a/functest/opnfv_tests/features/netready.py +++ b/functest/opnfv_tests/features/netready.py @@ -13,9 +13,9 @@ import functest.core.feature as base class GluonVping(base.Feature): - def __init__(self): + def __init__(self, case_name='gluon_vping'): super(GluonVping, self).__init__(project='netready', - case='gluon_vping', + case_name=case_name, repo='dir_repo_netready') dir_netready_functest = '{}/test/functest'.format(self.repo) self.cmd = ('cd %s && python ./gluon-test-suite.py' % diff --git a/functest/opnfv_tests/features/odl_sfc.py b/functest/opnfv_tests/features/odl_sfc.py index fff7f2b0d..f96683e36 100644 --- a/functest/opnfv_tests/features/odl_sfc.py +++ b/functest/opnfv_tests/features/odl_sfc.py @@ -12,9 +12,9 @@ import functest.core.feature as base class OpenDaylightSFC(base.Feature): - def __init__(self): + def __init__(self, case_name='functest-odl-sfc'): super(OpenDaylightSFC, self).__init__(project='sfc', - case='functest-odl-sfc', + case_name=case_name, repo='dir_repo_sfc') dir_sfc_functest = '{}/sfc/tests/functest'.format(self.repo) self.cmd = 'cd %s && python ./run_tests.py' % dir_sfc_functest diff --git a/functest/opnfv_tests/features/promise.py b/functest/opnfv_tests/features/promise.py index a7f4e6283..e3dc7fdf5 100644 --- a/functest/opnfv_tests/features/promise.py +++ b/functest/opnfv_tests/features/promise.py @@ -16,9 +16,9 @@ import functest.core.feature as base class Promise(base.Feature): - def __init__(self): + def __init__(self, case_name='promise'): super(Promise, self).__init__(project='promise', - case='promise', + case_name=case_name, repo='dir_repo_promise') dir_promise_functest = '{}/promise/test/functest'.format(self.repo) self.cmd = 'cd %s && python ./run_tests.py' % dir_promise_functest diff --git a/functest/opnfv_tests/features/sdnvpn.py b/functest/opnfv_tests/features/sdnvpn.py index 10e3146c8..5e9254a0b 100644 --- a/functest/opnfv_tests/features/sdnvpn.py +++ b/functest/opnfv_tests/features/sdnvpn.py @@ -12,9 +12,9 @@ import functest.core.feature as base class SdnVpnTests(base.Feature): - def __init__(self): + def __init__(self, case_name='bgpvpn'): super(SdnVpnTests, self).__init__(project='sdnvpn', - case='bgpvpn', + case_name=case_name, repo='dir_repo_sdnvpn') dir_sfc_functest = '{}/sdnvpn/test/functest'.format(self.repo) self.cmd = 'cd %s && python ./run_tests.py' % dir_sfc_functest diff --git a/functest/opnfv_tests/features/security_scan.py b/functest/opnfv_tests/features/security_scan.py index 2374b39fe..e72563808 100644 --- a/functest/opnfv_tests/features/security_scan.py +++ b/functest/opnfv_tests/features/security_scan.py @@ -13,9 +13,9 @@ from functest.utils.constants import CONST class SecurityScan(base.Feature): - def __init__(self): + def __init__(self, case_name='security_scan'): super(SecurityScan, self).__init__(project='securityscanning', - case='security_scan', + case_name=case_name, repo='dir_repo_securityscan') self.cmd = ('. {0}/stackrc && ' 'cd {1} && ' diff --git a/functest/opnfv_tests/openstack/rally/rally.py b/functest/opnfv_tests/openstack/rally/rally.py index 8c6abc157..e7411c51d 100644 --- a/functest/opnfv_tests/openstack/rally/rally.py +++ b/functest/opnfv_tests/openstack/rally/rally.py @@ -56,8 +56,8 @@ class RallyBase(testcase.TestCase): RALLY_PRIVATE_SUBNET_CIDR = CONST.rally_subnet_cidr RALLY_ROUTER_NAME = CONST.rally_router_name - def __init__(self): - super(RallyBase, self).__init__() + def __init__(self, case_name=''): + super(RallyBase, self).__init__(case_name) self.mode = '' self.summary = [] self.scenario_dir = '' @@ -536,9 +536,8 @@ class RallyBase(testcase.TestCase): class RallySanity(RallyBase): - def __init__(self): - super(RallySanity, self).__init__() - self.case_name = 'rally_sanity' + def __init__(self, case_name="rally_sanity"): + super(RallySanity, self).__init__(case_name) self.mode = 'sanity' self.test_name = 'all' self.smoke = True @@ -546,9 +545,8 @@ class RallySanity(RallyBase): class RallyFull(RallyBase): - def __init__(self): - super(RallyFull, self).__init__() - self.case_name = 'rally_full' + def __init__(self, case_name="rally_full"): + super(RallyFull, self).__init__(case_name) self.mode = 'full' self.test_name = 'all' self.smoke = False diff --git a/functest/opnfv_tests/openstack/refstack_client/refstack_client.py b/functest/opnfv_tests/openstack/refstack_client/refstack_client.py index 37aa9e399..441abfee3 100755 --- a/functest/opnfv_tests/openstack/refstack_client/refstack_client.py +++ b/functest/opnfv_tests/openstack/refstack_client/refstack_client.py @@ -25,9 +25,8 @@ logger = ft_logger.Logger("refstack_defcore").getLogger() class RefstackClient(testcase.TestCase): - def __init__(self): - super(RefstackClient, self).__init__() - self.case_name = "refstack_defcore" + def __init__(self, case_name="refstack_defcore"): + super(RefstackClient, self).__init__(case_name) self.FUNCTEST_TEST = CONST.dir_functest_test self.CONF_PATH = CONST.refstack_tempest_conf_path self.DEFCORE_LIST = CONST.refstack_defcore_list @@ -192,10 +191,9 @@ class RefstackClient(testcase.TestCase): return res -class RefstackClientParser(testcase.TestCase): +class RefstackClientParser(object): def __init__(self): - super(RefstackClientParser, self).__init__() self.FUNCTEST_TEST = CONST.dir_functest_test self.CONF_PATH = CONST.refstack_tempest_conf_path self.DEFCORE_LIST = CONST.refstack_defcore_list diff --git a/functest/opnfv_tests/openstack/refstack_client/tempest_conf.py b/functest/opnfv_tests/openstack/refstack_client/tempest_conf.py index 5624ed79b..d01f08727 100755 --- a/functest/opnfv_tests/openstack/refstack_client/tempest_conf.py +++ b/functest/opnfv_tests/openstack/refstack_client/tempest_conf.py @@ -5,9 +5,8 @@ # are made available under the terms of the Apache License, Version 2.0 # which accompanies this distribution, and is available at # http://www.apache.org/licenses/LICENSE-2.0 -import sys +import os -from functest.core import testcase from functest.opnfv_tests.openstack.tempest import conf_utils from functest.utils import openstack_utils from functest.utils.constants import CONST @@ -25,6 +24,8 @@ class TempestConf(object): self.DEPLOYMENT_ID = conf_utils.get_verifier_deployment_id() self.DEPLOYMENT_DIR = conf_utils.get_verifier_deployment_dir( self.VERIFIER_ID, self.DEPLOYMENT_ID) + self.confpath = os.path.join(CONST.dir_functest_test, + CONST.refstack_tempest_conf_path) def generate_tempestconf(self): try: @@ -33,21 +34,19 @@ class TempestConf(object): use_custom_images=True, use_custom_flavors=True) conf_utils.configure_tempest_defcore( self.DEPLOYMENT_DIR, img_flavor_dict) - except KeyError as e: - logger.error("defcore prepare env error with: %s", e) + except Exception as e: + logger.error("error with generating refstack client " + "reference tempest conf file: %s", e) def main(self): try: self.generate_tempestconf() - res = testcase.TestCase.EX_OK + logger.info("a reference tempest conf file generated " + "at %s", self.confpath) except Exception as e: logger.error('Error with run: %s', e) - res = testcase.TestCase.EX_RUN_ERROR - return res if __name__ == '__main__': tempestconf = TempestConf() - result = tempestconf.main() - if result != testcase.TestCase.EX_OK: - sys.exit(result) + tempestconf.main() diff --git a/functest/opnfv_tests/openstack/snaps/api_check.py b/functest/opnfv_tests/openstack/snaps/api_check.py index ad77d9be3..dea1ca759 100644 --- a/functest/opnfv_tests/openstack/snaps/api_check.py +++ b/functest/opnfv_tests/openstack/snaps/api_check.py @@ -20,11 +20,10 @@ class ApiCheck(SnapsTestRunner): that exercise many of the OpenStack APIs within Keystone, Glance, Neutron, and Nova """ - def __init__(self): - super(ApiCheck, self).__init__() + def __init__(self, case_name="api_check"): + super(ApiCheck, self).__init__(case_name) self.suite = unittest.TestSuite() - self.case_name = "api_check" test_suite_builder.add_openstack_api_tests( self.suite, diff --git a/functest/opnfv_tests/openstack/snaps/connection_check.py b/functest/opnfv_tests/openstack/snaps/connection_check.py index 0637bcfb3..57b74d4c2 100644 --- a/functest/opnfv_tests/openstack/snaps/connection_check.py +++ b/functest/opnfv_tests/openstack/snaps/connection_check.py @@ -20,11 +20,10 @@ class ConnectionCheck(SnapsTestRunner): that simply obtain the different OpenStack clients and may perform simple queries """ - def __init__(self): - super(ConnectionCheck, self).__init__() + def __init__(self, case_name="connection_check"): + super(ConnectionCheck, self).__init__(case_name) self.suite = unittest.TestSuite() - self.case_name = "connection_check" test_suite_builder.add_openstack_client_tests( self.suite, diff --git a/functest/opnfv_tests/openstack/snaps/health_check.py b/functest/opnfv_tests/openstack/snaps/health_check.py index 8fece7465..6b3cfdd0d 100644 --- a/functest/opnfv_tests/openstack/snaps/health_check.py +++ b/functest/opnfv_tests/openstack/snaps/health_check.py @@ -21,11 +21,10 @@ class HealthCheck(SnapsTestRunner): creates a VM with a single port with an IPv4 address that is assigned by DHCP. This test then validates the expected IP with the actual """ - def __init__(self): - super(HealthCheck, self).__init__() + def __init__(self, case_name="snaps_health_check"): + super(HealthCheck, self).__init__(case_name) self.suite = unittest.TestSuite() - self.case_name = "snaps_health_check" image_custom_config = None if hasattr(CONST, 'snaps_health_check'): diff --git a/functest/opnfv_tests/openstack/snaps/smoke.py b/functest/opnfv_tests/openstack/snaps/smoke.py index 45fa6de86..63d5c1223 100644 --- a/functest/opnfv_tests/openstack/snaps/smoke.py +++ b/functest/opnfv_tests/openstack/snaps/smoke.py @@ -21,11 +21,10 @@ class SnapsSmoke(SnapsTestRunner): that exercise many of the OpenStack APIs within Keystone, Glance, Neutron, and Nova """ - def __init__(self): - super(SnapsSmoke, self).__init__() + def __init__(self, case_name="snaps_smoke"): + super(SnapsSmoke, self).__init__(case_name) self.suite = unittest.TestSuite() - self.case_name = "snaps_smoke" use_fip = CONST.snaps_use_floating_ips # The snaps smoke test uses the same config as the diff --git a/functest/opnfv_tests/openstack/snaps/snaps_test_runner.py b/functest/opnfv_tests/openstack/snaps/snaps_test_runner.py index 9d723905f..044a0bb04 100644 --- a/functest/opnfv_tests/openstack/snaps/snaps_test_runner.py +++ b/functest/opnfv_tests/openstack/snaps/snaps_test_runner.py @@ -19,8 +19,8 @@ class SnapsTestRunner(PyTestSuiteRunner): creates a VM with a single port with an IPv4 address that is assigned by DHCP. This test then validates the expected IP with the actual """ - def __init__(self): - super(SnapsTestRunner, self).__init__() + def __init__(self, case_name=''): + super(SnapsTestRunner, self).__init__(case_name) self.ext_net_name = snaps_utils.get_ext_net_name() self.logger = ft_logger.Logger(self.project_name).getLogger() diff --git a/functest/opnfv_tests/openstack/tempest/tempest.py b/functest/opnfv_tests/openstack/tempest/tempest.py index 0addbd172..c3184e352 100644 --- a/functest/opnfv_tests/openstack/tempest/tempest.py +++ b/functest/opnfv_tests/openstack/tempest/tempest.py @@ -28,8 +28,8 @@ logger = ft_logger.Logger("Tempest").getLogger() class TempestCommon(testcase.TestCase): - def __init__(self): - super(TempestCommon, self).__init__() + def __init__(self, case_name=''): + super(TempestCommon, self).__init__(case_name) self.MODE = "" self.OPTION = "" self.VERIFIER_ID = conf_utils.get_verifier_id() @@ -234,35 +234,31 @@ class TempestCommon(testcase.TestCase): class TempestSmokeSerial(TempestCommon): - def __init__(self): - TempestCommon.__init__(self) - self.case_name = "tempest_smoke_serial" + def __init__(self, case_name='tempest_smoke_serial'): + TempestCommon.__init__(self, case_name) self.MODE = "smoke" self.OPTION = "--concurrency 1" class TempestSmokeParallel(TempestCommon): - def __init__(self): - TempestCommon.__init__(self) - self.case_name = "tempest_smoke_parallel" + def __init__(self, case_name='tempest_smoke_parallel'): + TempestCommon.__init__(self, case_name) self.MODE = "smoke" self.OPTION = "" class TempestFullParallel(TempestCommon): - def __init__(self): - TempestCommon.__init__(self) - self.case_name = "tempest_full_parallel" + def __init__(self, case_name="tempest_full_parallel"): + TempestCommon.__init__(self, case_name) self.MODE = "full" class TempestMultisite(TempestCommon): - def __init__(self): - TempestCommon.__init__(self) - self.case_name = "multisite" + def __init__(self, case_name="multisite"): + TempestCommon.__init__(self, case_name) self.MODE = "feature_multisite" self.OPTION = "--concurrency 1" conf_utils.install_verifier_ext(CONST.dir_repo_kingbird) @@ -270,17 +266,15 @@ class TempestMultisite(TempestCommon): class TempestCustom(TempestCommon): - def __init__(self): - TempestCommon.__init__(self) - self.case_name = "tempest_custom" + def __init__(self, case_name="tempest_custom"): + TempestCommon.__init__(self, case_name) self.MODE = "custom" self.OPTION = "--concurrency 1" class TempestDefcore(TempestCommon): - def __init__(self): - TempestCommon.__init__(self) - self.case_name = "tempest_defcore" + def __init__(self, case_name="tempest_defcore"): + TempestCommon.__init__(self, case_name) self.MODE = "defcore" self.OPTION = "--concurrency 1" diff --git a/functest/opnfv_tests/openstack/vping/vping_base.py b/functest/opnfv_tests/openstack/vping/vping_base.py index 584ded386..64cb0004d 100644 --- a/functest/opnfv_tests/openstack/vping/vping_base.py +++ b/functest/opnfv_tests/openstack/vping/vping_base.py @@ -18,8 +18,8 @@ from functest.utils.constants import CONST class VPingBase(testcase.TestCase): - def __init__(self): - super(VPingBase, self).__init__() + def __init__(self, case_name=''): + super(VPingBase, self).__init__(case_name) self.logger = None self.functest_repo = CONST.dir_repo_functest self.repo = CONST.dir_vping diff --git a/functest/opnfv_tests/openstack/vping/vping_ssh.py b/functest/opnfv_tests/openstack/vping/vping_ssh.py index fc2f01c64..a68b0ff75 100755 --- a/functest/opnfv_tests/openstack/vping/vping_ssh.py +++ b/functest/opnfv_tests/openstack/vping/vping_ssh.py @@ -24,9 +24,8 @@ import functest.core.testcase as testcase class VPingSSH(vping_base.VPingBase): - def __init__(self): - super(VPingSSH, self).__init__() - self.case_name = 'vping_ssh' + def __init__(self, case_name='vping_ssh'): + super(VPingSSH, self).__init__(case_name) self.logger = ft_logger.Logger(self.case_name).getLogger() def do_vping(self, vm, test_ip): diff --git a/functest/opnfv_tests/openstack/vping/vping_userdata.py b/functest/opnfv_tests/openstack/vping/vping_userdata.py index fa91c12a6..e9b869983 100755 --- a/functest/opnfv_tests/openstack/vping/vping_userdata.py +++ b/functest/opnfv_tests/openstack/vping/vping_userdata.py @@ -18,9 +18,8 @@ import vping_base class VPingUserdata(vping_base.VPingBase): - def __init__(self): - super(VPingUserdata, self).__init__() - self.case_name = 'vping_userdata' + def __init__(self, case_name='vping_userdata'): + super(VPingUserdata, self).__init__(case_name) self.logger = ft_logger.Logger(self.case_name).getLogger() def boot_vm_preparation(self, config, vmname, test_ip): diff --git a/functest/opnfv_tests/sdn/odl/odl.py b/functest/opnfv_tests/sdn/odl/odl.py index ccc1101a5..c0e2a9aeb 100755 --- a/functest/opnfv_tests/sdn/odl/odl.py +++ b/functest/opnfv_tests/sdn/odl/odl.py @@ -72,10 +72,6 @@ class ODLTests(testcase.TestCase): res_dir = '/home/opnfv/functest/results/odl/' logger = ft_logger.Logger("opendaylight").getLogger() - def __init__(self): - testcase.TestCase.__init__(self) - self.case_name = "odl" - @classmethod def set_robotframework_vars(cls, odlusername="admin", odlpassword="admin"): """Set credentials in csit/variables/Variables.py. diff --git a/functest/opnfv_tests/sdn/onos/onos.py b/functest/opnfv_tests/sdn/onos/onos.py index d482ae320..fe37669a4 100644 --- a/functest/opnfv_tests/sdn/onos/onos.py +++ b/functest/opnfv_tests/sdn/onos/onos.py @@ -32,9 +32,6 @@ class OnosBase(testcase.TestCase): onos_sfc_path = os.path.join(CONST.dir_repo_functest, CONST.dir_onos_sfc) - def __init__(self): - super(OnosBase, self).__init__() - def run(self): self.start_time = time.time() try: @@ -52,9 +49,8 @@ class OnosBase(testcase.TestCase): class Onos(OnosBase): - def __init__(self): - super(Onos, self).__init__() - self.case_name = 'onos' + def __init__(self, case_name='onos'): + super(Onos, self).__init__(case_name) self.log_path = os.path.join(self.onos_repo_path, 'TestON/logs') def set_onos_ip(self): diff --git a/functest/opnfv_tests/vnf/aaa/aaa.py b/functest/opnfv_tests/vnf/aaa/aaa.py index bdedcf7c5..f80e7bcc0 100755 --- a/functest/opnfv_tests/vnf/aaa/aaa.py +++ b/functest/opnfv_tests/vnf/aaa/aaa.py @@ -21,7 +21,7 @@ class AaaVnf(vnf_base.VnfOnBoardingBase): logger = ft_logger.Logger("VNF AAA").getLogger() def __init__(self): - super(AaaVnf, self).__init__(case="aaa") + super(AaaVnf, self).__init__(case_name="aaa") def deploy_orchestrator(self): self.logger.info("No VNFM needed to deploy a free radius here") @@ -56,6 +56,7 @@ class AaaVnf(vnf_base.VnfOnBoardingBase): kwargs = {} return self.main(**kwargs) + if __name__ == '__main__': parser = argparse.ArgumentParser() args = vars(parser.parse_args()) diff --git a/functest/opnfv_tests/vnf/ims/clearwater_ims_base.py b/functest/opnfv_tests/vnf/ims/clearwater_ims_base.py index f21ce3f9a..2fc5449cf 100644 --- a/functest/opnfv_tests/vnf/ims/clearwater_ims_base.py +++ b/functest/opnfv_tests/vnf/ims/clearwater_ims_base.py @@ -46,8 +46,7 @@ class ClearwaterOnBoardingBase(vnf_base.VnfOnBoardingBase): rq = requests.post(account_url, data=params) output_dict['login'] = params if rq.status_code != 201 and rq.status_code != 409: - raise Exception("Unable to create an account for number" - " provision: %s" % rq.json()['reason']) + raise Exception("Unable to create an account for number provision") self.logger.info('Account is created on Ellis: %s', params) session_url = 'http://{0}/session'.format(ellis_ip) diff --git a/functest/opnfv_tests/vnf/ims/cloudify_ims.py b/functest/opnfv_tests/vnf/ims/cloudify_ims.py index 404f208eb..d739335dc 100644 --- a/functest/opnfv_tests/vnf/ims/cloudify_ims.py +++ b/functest/opnfv_tests/vnf/ims/cloudify_ims.py @@ -25,9 +25,9 @@ import functest.utils.openstack_utils as os_utils class CloudifyIms(clearwater_ims_base.ClearwaterOnBoardingBase): - def __init__(self, project='functest', case='cloudify_ims', + def __init__(self, project='functest', case_name='cloudify_ims', repo='', cmd=''): - super(CloudifyIms, self).__init__(project, case, repo, cmd) + super(CloudifyIms, self).__init__(project, case_name, repo, cmd) self.logger = ft_logger.Logger(__name__).getLogger() # Retrieve the configuration diff --git a/functest/opnfv_tests/vnf/ims/opera_ims.py b/functest/opnfv_tests/vnf/ims/opera_ims.py index d022b3c7f..7ca96ae12 100644 --- a/functest/opnfv_tests/vnf/ims/opera_ims.py +++ b/functest/opnfv_tests/vnf/ims/opera_ims.py @@ -21,9 +21,9 @@ import functest.utils.functest_logger as ft_logger class OperaIms(clearwater_ims_base.ClearwaterOnBoardingBase): - def __init__(self, project='functest', case='opera_ims', + def __init__(self, project='functest', case_name='opera_ims', repo=CONST.dir_repo_opera, cmd=''): - super(OperaIms, self).__init__(project, case, repo, cmd) + super(OperaIms, self).__init__(project, case_name, repo, cmd) self.logger = ft_logger.Logger(__name__).getLogger() self.ellis_file = os.path.join(self.result_dir, 'ellis.info') self.live_test_file = os.path.join(self.result_dir, diff --git a/functest/opnfv_tests/vnf/ims/orchestra_ims.py b/functest/opnfv_tests/vnf/ims/orchestra_ims.py index 5c19be096..c95a17e28 100755 --- a/functest/opnfv_tests/vnf/ims/orchestra_ims.py +++ b/functest/opnfv_tests/vnf/ims/orchestra_ims.py @@ -78,9 +78,9 @@ def servertest(host, port): class ImsVnf(vnf_base.VnfOnBoardingBase): - def __init__(self, project='functest', case='orchestra_ims', + def __init__(self, project='functest', case_name='orchestra_ims', repo='', cmd=''): - super(ImsVnf, self).__init__(project, case, repo, cmd) + super(ImsVnf, self).__init__(project, case_name, repo, cmd) self.ob_password = "openbaton" self.ob_username = "admin" self.ob_https = False @@ -103,7 +103,7 @@ class ImsVnf(vnf_base.VnfOnBoardingBase): try: self.config = CONST.__getattribute__( 'vnf_{}_config'.format(self.case_name)) - except: + except BaseException: raise Exception("Orchestra VNF config file not found") config_file = self.case_dir + self.config self.imagename = get_config("openbaton.imagename", config_file) @@ -115,6 +115,8 @@ class ImsVnf(vnf_base.VnfOnBoardingBase): config_file) self.images = get_config("tenant_images", config_file) self.ims_conf = get_config("vIMS", config_file) + self.userdata_file = get_config("openbaton.userdata.file", + config_file) def deploy_orchestrator(self, **kwargs): self.logger.info("Additional pre-configuration steps") @@ -132,7 +134,7 @@ class ImsVnf(vnf_base.VnfOnBoardingBase): image_id = os_utils.get_image_id(glance_client, image_name) self.logger.info("image_id: %s" % image_id) - except: + except BaseException: self.logger.error("Unexpected error: %s" % sys.exc_info()[0]) if image_id == '': @@ -153,7 +155,8 @@ class ImsVnf(vnf_base.VnfOnBoardingBase): "192.168.100.0/24") # orchestrator VM flavor - self.logger.info("Check if Flavor is available, if not create one") + self.logger.info( + "Check if orchestra Flavor is available, if not create one") flavor_exist, flavor_id = os_utils.get_or_create_flavor( "orchestra", "4096", @@ -210,8 +213,13 @@ class ImsVnf(vnf_base.VnfOnBoardingBase): bootstrap = "sh ./bootstrap release -configFile=./config_file" userdata += bootstrap + "\n" userdata += "echo \"Setting 'nfvo.plugin.timeout' to '300000'\"\n" - userdata += ("echo \"nfvo.plugin.timeout=300000\" >> " + userdata += ("echo \"nfvo.plugin.timeout=600000\" >> " "/etc/openbaton/openbaton-nfvo.properties\n") + userdata += ( + "wget %s -O /etc/openbaton/openbaton-vnfm-generic-user-data.sh\n" % + self.userdata_file) + userdata += "sed -i '113i\ \ \ \ sleep 60' " \ + "/etc/openbaton/openbaton-vnfm-generic-user-data.sh\n" userdata += "echo \"Starting NFVO\"\n" userdata += "service openbaton-nfvo restart\n" userdata += "echo \"Starting Generic VNFM\"\n" @@ -283,7 +291,10 @@ class ImsVnf(vnf_base.VnfOnBoardingBase): self.ob_username = "admin" self.ob_https = False self.ob_port = "8080" - + self.logger.info("Waiting for all components up and running...") + time.sleep(60) + self.details["orchestrator"] = { + 'status': "PASS", 'result': "Deploy Open Baton NFVO: OK"} self.logger.info("Deploy Open Baton NFVO: OK") def deploy_vnf(self): @@ -296,6 +307,16 @@ class ImsVnf(vnf_base.VnfOnBoardingBase): username=self.ob_username, password=self.ob_password) + self.logger.info( + "Check if openims Flavor is available, if not create one") + flavor_exist, flavor_id = os_utils.get_or_create_flavor( + "m1.small", + "2048", + '20', + '1', + public=True) + self.logger.debug("Flavor id: %s" % flavor_id) + self.logger.info("Getting project 'default'...") project_agent = self.main_agent.get_agent("project", self.ob_projectid) for p in json.loads(project_agent.find()): @@ -311,9 +332,16 @@ class ImsVnf(vnf_base.VnfOnBoardingBase): creds = os_utils.get_credentials() self.logger.info("PoP creds: %s" % creds) - project_id = os_utils.get_tenant_id( - os_utils.get_keystone_client(), - creds.get("project_name")) + if os_utils.is_keystone_v3(): + self.logger.info( + "Using v3 API of OpenStack... -> Using OS_PROJECT_ID") + project_id = os_utils.get_tenant_id( + os_utils.get_keystone_client(), + creds.get("project_name")) + else: + self.logger.info( + "Using v2 API of OpenStack... -> Using OS_TENANT_NAME") + project_id = creds.get("tenant_name") self.logger.debug("project id: %s" % project_id) @@ -381,16 +409,17 @@ class ImsVnf(vnf_base.VnfOnBoardingBase): self.nsr = json.loads(nsr_agent.find(self.nsr.get('id'))) if self.nsr.get("status") == 'ACTIVE': - deploy_vnf = {'status': "PASS", 'result': self.nsr} + self.details["vnf"] = {'status': "PASS", 'result': self.nsr} self.logger.info("Deploy VNF: OK") else: - deploy_vnf = {'status': "FAIL", 'result': self.nsr} + self.details["vnf"] = {'status': "FAIL", 'result': self.nsr} + self.logger.error(self.nsr) self.step_failure("Deploy VNF: ERROR") self.ob_nsr_id = self.nsr.get("id") self.logger.info( "Sleep for 60s to ensure that all services are up and running...") time.sleep(60) - return deploy_vnf + return self.details.get("vnf") def test_vnf(self): # Adaptations probably needed @@ -427,9 +456,18 @@ class ImsVnf(vnf_base.VnfOnBoardingBase): "VNFC instance %s is not reachable " "at %s:%s" % (vnfci.get('hostname'), floatingIp.get('ip'), port)) + self.details["test_vnf"] = { + 'status': "FAIL", 'result': ( + "Port %s of server %s -> %s is " + "not reachable" % + (port, vnfci.get('hostname'), + floatingIp.get('ip')))} self.step_failure("Test VNF: ERROR") + self.details["test_vnf"] = { + 'status': "PASS", + 'result': "All tests have been executed successfully"} self.logger.info("Test VNF: OK") - return + return self.details.get('test_vnf') def clean(self): self.main_agent.get_agent( diff --git a/functest/opnfv_tests/vnf/ims/orchestra_ims.yaml b/functest/opnfv_tests/vnf/ims/orchestra_ims.yaml index 5923a775a..5b25d3c96 100644 --- a/functest/opnfv_tests/vnf/ims/orchestra_ims.yaml +++ b/functest/opnfv_tests/vnf/ims/orchestra_ims.yaml @@ -4,6 +4,8 @@ tenant_images: openbaton: bootstrap_link: http://get.openbaton.org/bootstraps/bootstrap_3.2.0_opnfv/bootstrap bootstrap_config_link: http://get.openbaton.org/bootstraps/bootstrap_3.2.0_opnfv/bootstrap-config-file + userdata: + file: https://raw.githubusercontent.com/openbaton/generic-vnfm/3.2.0/src/main/resources/user-data.sh marketplace_link: http://marketplace.openbaton.org:8082/api/v1/nsds/fokus/OpenImsCore/3.2.0/json imagename: ubuntu_14.04 vIMS: diff --git a/functest/tests/unit/core/test_feature.py b/functest/tests/unit/core/test_feature.py new file mode 100644 index 000000000..0ed178a1d --- /dev/null +++ b/functest/tests/unit/core/test_feature.py @@ -0,0 +1,108 @@ +#!/usr/bin/env python + +# Copyright (c) 2017 Orange and others. +# +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 + +# pylint: disable=missing-docstring + +import logging +import unittest + +import mock + +from functest.core import feature +from functest.core import testcase +from functest.utils import constants + + +class FeatureInitTesting(unittest.TestCase): + + logging.disable(logging.CRITICAL) + + @unittest.skip("JIRA: FUNCTEST-780") + def test_init_with_wrong_repo(self): + with self.assertRaises(ValueError): + feature.Feature(repo='foo') + + def test_init(self): + barometer = feature.Feature(repo='dir_repo_barometer') + self.assertEqual(barometer.project_name, "functest") + self.assertEqual(barometer.case_name, "") + self.assertEqual( + barometer.repo, + constants.CONST.__getattribute__('dir_repo_barometer')) + + +class FeatureTesting(unittest.TestCase): + + logging.disable(logging.CRITICAL) + + def setUp(self): + self.feature = feature.Feature(repo='dir_repo_barometer') + + @unittest.skip("JIRA: FUNCTEST-781") + def test_prepare_ko(self): + # pylint: disable=bad-continuation + with mock.patch.object( + self.feature, 'prepare', + return_value=testcase.TestCase.EX_RUN_ERROR) as mock_object: + self.assertEqual(self.feature.run(), + testcase.TestCase.EX_RUN_ERROR) + mock_object.assert_called_once_with() + + @unittest.skip("JIRA: FUNCTEST-781") + def test_prepare_exc(self): + with mock.patch.object(self.feature, 'prepare', + side_effect=Exception) as mock_object: + self.assertEqual(self.feature.run(), + testcase.TestCase.EX_RUN_ERROR) + mock_object.assert_called_once_with() + + @unittest.skip("JIRA: FUNCTEST-781") + def test_post_ko(self): + # pylint: disable=bad-continuation + with mock.patch.object( + self.feature, 'post', + return_value=testcase.TestCase.EX_RUN_ERROR) as mock_object: + self.assertEqual(self.feature.run(), + testcase.TestCase.EX_RUN_ERROR) + mock_object.assert_called_once_with() + + @unittest.skip("JIRA: FUNCTEST-781") + def test_post_exc(self): + with mock.patch.object(self.feature, 'post', + side_effect=Exception) as mock_object: + self.assertEqual(self.feature.run(), + testcase.TestCase.EX_RUN_ERROR) + mock_object.assert_called_once_with() + + @unittest.skip("JIRA: FUNCTEST-778") + def test_execute_ko(self): + with mock.patch.object(self.feature, 'execute', + return_value=1) as mock_object: + self.assertEqual(self.feature.run(), + testcase.TestCase.EX_RUN_ERROR) + mock_object.assert_called_once_with() + + @unittest.skip("JIRA: FUNCTEST-778") + def test_execute_exc(self): + with mock.patch.object(self.feature, 'execute', + side_effect=Exception) as mock_object: + self.assertEqual(self.feature.run(), + testcase.TestCase.EX_RUN_ERROR) + mock_object.assert_called_once_with() + + def test_run(self): + with mock.patch.object(self.feature, 'execute', + return_value=0) as mock_object: + self.assertEqual(self.feature.run(), + testcase.TestCase.EX_OK) + mock_object.assert_called_once_with() + + +if __name__ == "__main__": + unittest.main(verbosity=2) diff --git a/functest/tests/unit/core/test_testcase.py b/functest/tests/unit/core/test_testcase.py index 32104194b..5ff41cd65 100644 --- a/functest/tests/unit/core/test_testcase.py +++ b/functest/tests/unit/core/test_testcase.py @@ -26,10 +26,11 @@ class TestCaseTesting(unittest.TestCase): logging.disable(logging.CRITICAL) + _case_name = "base" + def setUp(self): - self.test = testcase.TestCase() + self.test = testcase.TestCase(case_name=self._case_name) self.test.project = "functest" - self.test.case_name = "base" self.test.start_time = "1" self.test.stop_time = "2" self.test.criteria = "PASS" @@ -46,6 +47,10 @@ class TestCaseTesting(unittest.TestCase): testcase.TestCase.EX_PUSH_TO_DB_ERROR) mock_function.assert_not_called() + def test_missing_project_name(self): + self.test.project_name = None + self._test_missing_attribute() + def test_missing_case_name(self): self.test.case_name = None self._test_missing_attribute() @@ -69,7 +74,7 @@ class TestCaseTesting(unittest.TestCase): self.assertEqual(self.test.push_to_db(), testcase.TestCase.EX_OK) mock_function.assert_called_once_with( - self.test.project, self.test.case_name, self.test.start_time, + self.test.project, self._case_name, self.test.start_time, self.test.stop_time, self.test.criteria, self.test.details) @mock.patch('functest.utils.functest_utils.push_results_to_db', @@ -78,7 +83,7 @@ class TestCaseTesting(unittest.TestCase): self.assertEqual(self.test.push_to_db(), testcase.TestCase.EX_PUSH_TO_DB_ERROR) mock_function.assert_called_once_with( - self.test.project, self.test.case_name, self.test.start_time, + self.test.project, self._case_name, self.test.start_time, self.test.stop_time, self.test.criteria, self.test.details) @mock.patch('functest.utils.functest_utils.push_results_to_db', @@ -87,7 +92,7 @@ class TestCaseTesting(unittest.TestCase): self.assertEqual(self.test.push_to_db(), testcase.TestCase.EX_OK) mock_function.assert_called_once_with( - self.test.project, self.test.case_name, self.test.start_time, + self.test.project, self._case_name, self.test.start_time, self.test.stop_time, self.test.criteria, self.test.details) def test_check_criteria_missing(self): diff --git a/functest/tests/unit/core/test_vnf_base.py b/functest/tests/unit/core/test_vnf_base.py index 1680f03f5..96706040d 100644 --- a/functest/tests/unit/core/test_vnf_base.py +++ b/functest/tests/unit/core/test_vnf_base.py @@ -19,9 +19,8 @@ class VnfBaseTesting(unittest.TestCase): def setUp(self): self.test = vnf_base.VnfOnBoardingBase(project='functest', - case='aaa') + case_name='aaa') self.test.project = "functest" - self.test.case_name = "aaa" self.test.start_time = "1" self.test.stop_time = "5" self.test.criteria = "" diff --git a/functest/tests/unit/features/__init__.py b/functest/tests/unit/features/__init__.py new file mode 100644 index 000000000..e69de29bb --- /dev/null +++ b/functest/tests/unit/features/__init__.py diff --git a/functest/tests/unit/features/test_barometer.py b/functest/tests/unit/features/test_barometer.py new file mode 100644 index 000000000..62f2e0d6e --- /dev/null +++ b/functest/tests/unit/features/test_barometer.py @@ -0,0 +1,55 @@ +#!/usr/bin/env python + +# Copyright (c) 2017 Orange and others. +# +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 + +# pylint: disable=missing-docstring + +import logging +import sys +import unittest + +import mock + +from functest.core import testcase +sys.modules['baro_tests'] = mock.Mock() # noqa +# pylint: disable=wrong-import-position +from functest.opnfv_tests.features import barometer +from functest.utils import constants + + +class BarometerTesting(unittest.TestCase): + + logging.disable(logging.CRITICAL) + + def setUp(self): + self.barometer = barometer.BarometerCollectd( + case_name="barometercollectd") + + def test_init(self): + self.assertEqual(self.barometer.project_name, "barometer") + self.assertEqual(self.barometer.case_name, "barometercollectd") + self.assertEqual( + self.barometer.repo, + constants.CONST.__getattribute__('dir_repo_barometer')) + + @unittest.skip("JIRA: FUNCTEST-777") + def test_execute_ko(self): + # It must be skipped to allow merging + sys.modules['baro_tests'].collectd.main = mock.Mock(return_value=1) + self.assertEqual(self.barometer.execute(), + testcase.TestCase.EX_RUN_ERROR) + + @unittest.skip("JIRA: FUNCTEST-777") + def test_execute(self): + # It must be skipped to allow merging + sys.modules['baro_tests'].collectd.main = mock.Mock(return_value=0) + self.assertEqual(self.barometer.execute(), testcase.TestCase.EX_OK) + + +if __name__ == "__main__": + unittest.main(verbosity=2) diff --git a/functest/tests/unit/features/test_copper.py b/functest/tests/unit/features/test_copper.py new file mode 100644 index 000000000..b6d187f7a --- /dev/null +++ b/functest/tests/unit/features/test_copper.py @@ -0,0 +1,38 @@ +#!/usr/bin/env python + +# Copyright (c) 2017 Orange and others. +# +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 + +# pylint: disable=missing-docstring + +import logging +import unittest + +from functest.opnfv_tests.features import copper +from functest.utils import constants + + +class CopperTesting(unittest.TestCase): + + logging.disable(logging.CRITICAL) + + def setUp(self): + self.copper = copper.Copper(case_name="copper-notification") + + def test_init(self): + self.assertEqual(self.copper.project_name, "copper") + self.assertEqual(self.copper.case_name, "copper-notification") + self.assertEqual( + self.copper.repo, + constants.CONST.__getattribute__("dir_repo_copper")) + self.assertEqual( + self.copper.cmd, + "cd {}/tests && bash run.sh && cd -".format(self.copper.repo)) + + +if __name__ == "__main__": + unittest.main(verbosity=2) diff --git a/functest/tests/unit/features/test_doctor.py b/functest/tests/unit/features/test_doctor.py new file mode 100644 index 000000000..36bac44f0 --- /dev/null +++ b/functest/tests/unit/features/test_doctor.py @@ -0,0 +1,38 @@ +#!/usr/bin/env python + +# Copyright (c) 2017 Orange and others. +# +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 + +# pylint: disable=missing-docstring + +import logging +import unittest + +from functest.opnfv_tests.features import doctor +from functest.utils import constants + + +class DoctorTesting(unittest.TestCase): + + logging.disable(logging.CRITICAL) + + def setUp(self): + self.doctor = doctor.Doctor(case_name="doctor-notification") + + def test_init(self): + self.assertEqual(self.doctor.project_name, "doctor") + self.assertEqual(self.doctor.case_name, "doctor-notification") + self.assertEqual( + self.doctor.repo, + constants.CONST.__getattribute__("dir_repo_doctor")) + self.assertEqual( + self.doctor.cmd, + 'cd {}/tests && ./run.sh'.format(self.doctor.repo)) + + +if __name__ == "__main__": + unittest.main(verbosity=2) diff --git a/functest/tests/unit/features/test_domino.py b/functest/tests/unit/features/test_domino.py new file mode 100644 index 000000000..c0bfd14b4 --- /dev/null +++ b/functest/tests/unit/features/test_domino.py @@ -0,0 +1,38 @@ +#!/usr/bin/env python + +# Copyright (c) 2017 Orange and others. +# +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 + +# pylint: disable=missing-docstring + +import logging +import unittest + +from functest.opnfv_tests.features import domino +from functest.utils import constants + + +class DominoTesting(unittest.TestCase): + + logging.disable(logging.CRITICAL) + + def setUp(self): + self.domino = domino.Domino(case_name="domino-multinode") + + def test_init(self): + self.assertEqual(self.domino.project_name, "domino") + self.assertEqual(self.domino.case_name, "domino-multinode") + self.assertEqual( + self.domino.repo, + constants.CONST.__getattribute__("dir_repo_domino")) + self.assertEqual( + self.domino.cmd, + 'cd {} && ./tests/run_multinode.sh'.format(self.domino.repo)) + + +if __name__ == "__main__": + unittest.main(verbosity=2) diff --git a/functest/tests/unit/features/test_netready.py b/functest/tests/unit/features/test_netready.py new file mode 100644 index 000000000..47be42034 --- /dev/null +++ b/functest/tests/unit/features/test_netready.py @@ -0,0 +1,39 @@ +#!/usr/bin/env python + +# Copyright (c) 2017 Orange and others. +# +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 + +# pylint: disable=missing-docstring + +import logging +import unittest + +from functest.opnfv_tests.features import netready +from functest.utils import constants + + +class NetreadyTesting(unittest.TestCase): + + logging.disable(logging.CRITICAL) + + def setUp(self): + self.netready = netready.GluonVping(case_name="gluon_vping") + + def test_init(self): + self.assertEqual(self.netready.project_name, "netready") + self.assertEqual(self.netready.case_name, "gluon_vping") + self.assertEqual( + self.netready.repo, + constants.CONST.__getattribute__("dir_repo_netready")) + self.assertEqual( + self.netready.cmd, + 'cd {}/test/functest && python ./gluon-test-suite.py'.format( + self.netready.repo)) + + +if __name__ == "__main__": + unittest.main(verbosity=2) diff --git a/functest/tests/unit/features/test_odl_sfc.py b/functest/tests/unit/features/test_odl_sfc.py new file mode 100644 index 000000000..dcdcdff63 --- /dev/null +++ b/functest/tests/unit/features/test_odl_sfc.py @@ -0,0 +1,39 @@ +#!/usr/bin/env python + +# Copyright (c) 2017 Orange and others. +# +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 + +# pylint: disable=missing-docstring + +import logging +import unittest + +from functest.opnfv_tests.features import odl_sfc +from functest.utils import constants + + +class OpenDaylightSFCTesting(unittest.TestCase): + + logging.disable(logging.CRITICAL) + + def setUp(self): + self.odl_sfc = odl_sfc.OpenDaylightSFC(case_name="functest-odl-sfc") + + def test_init(self): + self.assertEqual(self.odl_sfc.project_name, "sfc") + self.assertEqual(self.odl_sfc.case_name, "functest-odl-sfc") + self.assertEqual( + self.odl_sfc.repo, + constants.CONST.__getattribute__("dir_repo_sfc")) + dir_sfc_functest = '{}/sfc/tests/functest'.format(self.odl_sfc.repo) + self.assertEqual( + self.odl_sfc.cmd, + 'cd {} && python ./run_tests.py'.format(dir_sfc_functest)) + + +if __name__ == "__main__": + unittest.main(verbosity=2) diff --git a/functest/tests/unit/features/test_promise.py b/functest/tests/unit/features/test_promise.py new file mode 100644 index 000000000..29b4d4ec8 --- /dev/null +++ b/functest/tests/unit/features/test_promise.py @@ -0,0 +1,39 @@ +#!/usr/bin/env python + +# Copyright (c) 2017 Orange and others. +# +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 + +# pylint: disable=missing-docstring + +import logging +import unittest + +from functest.opnfv_tests.features import promise +from functest.utils import constants + + +class PromiseTesting(unittest.TestCase): + + logging.disable(logging.CRITICAL) + + def setUp(self): + self.promise = promise.Promise(case_name="promise") + + def test_init(self): + self.assertEqual(self.promise.project_name, "promise") + self.assertEqual(self.promise.case_name, "promise") + self.assertEqual( + self.promise.repo, + constants.CONST.__getattribute__("dir_repo_promise")) + self.assertEqual( + self.promise.cmd, + 'cd {}/promise/test/functest && python ./run_tests.py'.format( + self.promise.repo)) + + +if __name__ == "__main__": + unittest.main(verbosity=2) diff --git a/functest/tests/unit/features/test_sdnvpn.py b/functest/tests/unit/features/test_sdnvpn.py new file mode 100644 index 000000000..8fa43fc44 --- /dev/null +++ b/functest/tests/unit/features/test_sdnvpn.py @@ -0,0 +1,39 @@ +#!/usr/bin/env python + +# Copyright (c) 2017 Orange and others. +# +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 + +# pylint: disable=missing-docstring + +import logging +import unittest + +from functest.opnfv_tests.features import sdnvpn +from functest.utils import constants + + +class SdnVpnTesting(unittest.TestCase): + + logging.disable(logging.CRITICAL) + + def setUp(self): + self.sdnvpn = sdnvpn.SdnVpnTests(case_name="bgpvpn") + + def test_init(self): + self.assertEqual(self.sdnvpn.project_name, "sdnvpn") + self.assertEqual(self.sdnvpn.case_name, "bgpvpn") + self.assertEqual( + self.sdnvpn.repo, + constants.CONST.__getattribute__("dir_repo_sdnvpn")) + self.assertEqual( + self.sdnvpn.cmd, + 'cd {}/sdnvpn/test/functest && python ./run_tests.py'.format( + self.sdnvpn.repo)) + + +if __name__ == "__main__": + unittest.main(verbosity=2) diff --git a/functest/tests/unit/features/test_security_scan.py b/functest/tests/unit/features/test_security_scan.py new file mode 100644 index 000000000..f0e40159d --- /dev/null +++ b/functest/tests/unit/features/test_security_scan.py @@ -0,0 +1,42 @@ +#!/usr/bin/env python + +# Copyright (c) 2017 Orange and others. +# +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 + +# pylint: disable=missing-docstring + +import logging +import unittest + +from functest.opnfv_tests.features import security_scan +from functest.utils import constants + + +class SecurityScanTesting(unittest.TestCase): + + logging.disable(logging.CRITICAL) + + def setUp(self): + self.sscan = security_scan.SecurityScan(case_name="security_scan") + + def test_init(self): + self.assertEqual(self.sscan.project_name, "securityscanning") + self.assertEqual(self.sscan.case_name, "security_scan") + self.assertEqual( + self.sscan.repo, + constants.CONST.__getattribute__("dir_repo_securityscan")) + self.assertEqual( + self.sscan.cmd, ( + '. {0}/stackrc && cd {1} && ' + 'python security_scan.py --config config.ini && ' + 'cd -'.format( + constants.CONST.__getattribute__("dir_functest_conf"), + self.sscan.repo))) + + +if __name__ == "__main__": + unittest.main(verbosity=2) diff --git a/run_unit_tests.sh b/run_unit_tests.sh index 3de9b36f9..917c8eee8 100755 --- a/run_unit_tests.sh +++ b/run_unit_tests.sh @@ -40,10 +40,11 @@ nosetests --with-xunit \ --cover-tests \ --cover-package=functest.ci \ --cover-package=functest.cli \ - --cover-package=functest.core.testcase \ + --cover-package=functest.core \ --cover-package=functest.opnfv_tests.sdn.odl.odl \ --cover-package=functest.opnfv_tests.vnf.ims \ --cover-package=functest.utils \ + --cover-package=functest.opnfv_tests.features \ --cover-package=functest.opnfv_tests.openstack \ --cover-xml \ --cover-html \ |