Merge "Set arm-pod-3 as non-ci POD"
authorFatih Degirmenci <fatih.degirmenci@ericsson.com>
Thu, 20 Oct 2016 13:54:15 +0000 (13:54 +0000)
committerGerrit Code Review <gerrit@opnfv.org>
Thu, 20 Oct 2016 13:54:15 +0000 (13:54 +0000)
95 files changed:
jjb/infra/bifrost-verify-jobs.yml
jjb/vswitchperf/vswitchperf.yml
prototypes/puppet-infracloud/modules/opnfv/manifests/server.pp
utils/test/dashboard/dashboard/conf/config.py
utils/test/dashboard/dashboard/elastic2kibana/main.py
utils/test/dashboard/dashboard/mongo2elastic/main.py
utils/test/dashboard/etc/config.ini
utils/test/reporting/functest/reporting-status.py
utils/test/reporting/functest/reportingUtils.py
utils/test/testapi/3rd_party/static/.gitignore [moved from utils/test/result_collection_api/3rd_party/static/.gitignore with 100% similarity]
utils/test/testapi/3rd_party/static/css/highlight.default.css [moved from utils/test/result_collection_api/3rd_party/static/css/highlight.default.css with 100% similarity]
utils/test/testapi/3rd_party/static/css/hightlight.default.css [moved from utils/test/result_collection_api/3rd_party/static/css/hightlight.default.css with 100% similarity]
utils/test/testapi/3rd_party/static/css/screen.css [moved from utils/test/result_collection_api/3rd_party/static/css/screen.css with 100% similarity]
utils/test/testapi/3rd_party/static/endpoint.html [moved from utils/test/result_collection_api/3rd_party/static/endpoint.html with 100% similarity]
utils/test/testapi/3rd_party/static/images/explorer_icons.png [moved from utils/test/result_collection_api/3rd_party/static/images/explorer_icons.png with 100% similarity]
utils/test/testapi/3rd_party/static/images/logo_small.png [moved from utils/test/result_collection_api/3rd_party/static/images/logo_small.png with 100% similarity]
utils/test/testapi/3rd_party/static/images/pet_store_api.png [moved from utils/test/result_collection_api/3rd_party/static/images/pet_store_api.png with 100% similarity]
utils/test/testapi/3rd_party/static/images/throbber.gif [moved from utils/test/result_collection_api/3rd_party/static/images/throbber.gif with 100% similarity]
utils/test/testapi/3rd_party/static/images/wordnik_api.png [moved from utils/test/result_collection_api/3rd_party/static/images/wordnik_api.png with 100% similarity]
utils/test/testapi/3rd_party/static/index.html [moved from utils/test/result_collection_api/3rd_party/static/index.html with 100% similarity]
utils/test/testapi/3rd_party/static/lib/backbone-min.js [moved from utils/test/result_collection_api/3rd_party/static/lib/backbone-min.js with 100% similarity]
utils/test/testapi/3rd_party/static/lib/handlebars-1.0.0.js [moved from utils/test/result_collection_api/3rd_party/static/lib/handlebars-1.0.0.js with 100% similarity]
utils/test/testapi/3rd_party/static/lib/highlight.7.3.pack.js [moved from utils/test/result_collection_api/3rd_party/static/lib/highlight.7.3.pack.js with 100% similarity]
utils/test/testapi/3rd_party/static/lib/jquery-1.8.0.min.js [moved from utils/test/result_collection_api/3rd_party/static/lib/jquery-1.8.0.min.js with 100% similarity]
utils/test/testapi/3rd_party/static/lib/jquery.ba-bbq.min.js [moved from utils/test/result_collection_api/3rd_party/static/lib/jquery.ba-bbq.min.js with 100% similarity]
utils/test/testapi/3rd_party/static/lib/jquery.slideto.min.js [moved from utils/test/result_collection_api/3rd_party/static/lib/jquery.slideto.min.js with 100% similarity]
utils/test/testapi/3rd_party/static/lib/jquery.wiggle.min.js [moved from utils/test/result_collection_api/3rd_party/static/lib/jquery.wiggle.min.js with 100% similarity]
utils/test/testapi/3rd_party/static/lib/shred.bundle.js [moved from utils/test/result_collection_api/3rd_party/static/lib/shred.bundle.js with 100% similarity]
utils/test/testapi/3rd_party/static/lib/shred/content.js [moved from utils/test/result_collection_api/3rd_party/static/lib/shred/content.js with 100% similarity]
utils/test/testapi/3rd_party/static/lib/swagger-oauth.js [moved from utils/test/result_collection_api/3rd_party/static/lib/swagger-oauth.js with 100% similarity]
utils/test/testapi/3rd_party/static/lib/swagger.js [moved from utils/test/result_collection_api/3rd_party/static/lib/swagger.js with 100% similarity]
utils/test/testapi/3rd_party/static/lib/underscore-min.js [moved from utils/test/result_collection_api/3rd_party/static/lib/underscore-min.js with 100% similarity]
utils/test/testapi/3rd_party/static/o2c.html [moved from utils/test/result_collection_api/3rd_party/static/o2c.html with 100% similarity]
utils/test/testapi/3rd_party/static/swagger-ui.js [moved from utils/test/result_collection_api/3rd_party/static/swagger-ui.js with 100% similarity]
utils/test/testapi/3rd_party/static/swagger-ui.min.js [moved from utils/test/result_collection_api/3rd_party/static/swagger-ui.min.js with 100% similarity]
utils/test/testapi/README.rst [moved from utils/test/result_collection_api/README.rst with 100% similarity]
utils/test/testapi/docker/Dockerfile [moved from utils/test/result_collection_api/docker/Dockerfile with 96% similarity]
utils/test/testapi/docker/prepare-env.sh [moved from utils/test/result_collection_api/docker/prepare-env.sh with 100% similarity]
utils/test/testapi/docker/start-server.sh [moved from utils/test/result_collection_api/docker/start-server.sh with 100% similarity]
utils/test/testapi/etc/config.ini [moved from utils/test/result_collection_api/etc/config.ini with 100% similarity]
utils/test/testapi/install.sh [moved from utils/test/result_collection_api/install.sh with 100% similarity]
utils/test/testapi/opnfv_testapi/__init__.py [moved from utils/test/result_collection_api/opnfv_testapi/__init__.py with 100% similarity]
utils/test/testapi/opnfv_testapi/cmd/__init__.py [moved from utils/test/result_collection_api/opnfv_testapi/cmd/__init__.py with 100% similarity]
utils/test/testapi/opnfv_testapi/cmd/server.py [moved from utils/test/result_collection_api/opnfv_testapi/cmd/server.py with 100% similarity]
utils/test/testapi/opnfv_testapi/common/__init__.py [moved from utils/test/result_collection_api/opnfv_testapi/common/__init__.py with 100% similarity]
utils/test/testapi/opnfv_testapi/common/config.py [moved from utils/test/result_collection_api/opnfv_testapi/common/config.py with 100% similarity]
utils/test/testapi/opnfv_testapi/common/constants.py [moved from utils/test/result_collection_api/opnfv_testapi/common/constants.py with 100% similarity]
utils/test/testapi/opnfv_testapi/resources/__init__.py [moved from utils/test/result_collection_api/opnfv_testapi/resources/__init__.py with 100% similarity]
utils/test/testapi/opnfv_testapi/resources/handlers.py [moved from utils/test/result_collection_api/opnfv_testapi/resources/handlers.py with 100% similarity]
utils/test/testapi/opnfv_testapi/resources/models.py [moved from utils/test/result_collection_api/opnfv_testapi/resources/models.py with 100% similarity]
utils/test/testapi/opnfv_testapi/resources/pod_handlers.py [moved from utils/test/result_collection_api/opnfv_testapi/resources/pod_handlers.py with 100% similarity]
utils/test/testapi/opnfv_testapi/resources/pod_models.py [moved from utils/test/result_collection_api/opnfv_testapi/resources/pod_models.py with 100% similarity]
utils/test/testapi/opnfv_testapi/resources/project_handlers.py [moved from utils/test/result_collection_api/opnfv_testapi/resources/project_handlers.py with 100% similarity]
utils/test/testapi/opnfv_testapi/resources/project_models.py [moved from utils/test/result_collection_api/opnfv_testapi/resources/project_models.py with 100% similarity]
utils/test/testapi/opnfv_testapi/resources/result_handlers.py [moved from utils/test/result_collection_api/opnfv_testapi/resources/result_handlers.py with 100% similarity]
utils/test/testapi/opnfv_testapi/resources/result_models.py [moved from utils/test/result_collection_api/opnfv_testapi/resources/result_models.py with 100% similarity]
utils/test/testapi/opnfv_testapi/resources/testcase_handlers.py [moved from utils/test/result_collection_api/opnfv_testapi/resources/testcase_handlers.py with 100% similarity]
utils/test/testapi/opnfv_testapi/resources/testcase_models.py [moved from utils/test/result_collection_api/opnfv_testapi/resources/testcase_models.py with 100% similarity]
utils/test/testapi/opnfv_testapi/router/__init__.py [moved from utils/test/result_collection_api/opnfv_testapi/router/__init__.py with 100% similarity]
utils/test/testapi/opnfv_testapi/router/url_mappings.py [moved from utils/test/result_collection_api/opnfv_testapi/router/url_mappings.py with 100% similarity]
utils/test/testapi/opnfv_testapi/tests/__init__.py [moved from utils/test/result_collection_api/opnfv_testapi/tests/__init__.py with 100% similarity]
utils/test/testapi/opnfv_testapi/tests/unit/__init__.py [moved from utils/test/result_collection_api/opnfv_testapi/tests/unit/__init__.py with 100% similarity]
utils/test/testapi/opnfv_testapi/tests/unit/fake_pymongo.py [moved from utils/test/result_collection_api/opnfv_testapi/tests/unit/fake_pymongo.py with 100% similarity]
utils/test/testapi/opnfv_testapi/tests/unit/test_base.py [moved from utils/test/result_collection_api/opnfv_testapi/tests/unit/test_base.py with 100% similarity]
utils/test/testapi/opnfv_testapi/tests/unit/test_fake_pymongo.py [moved from utils/test/result_collection_api/opnfv_testapi/tests/unit/test_fake_pymongo.py with 100% similarity]
utils/test/testapi/opnfv_testapi/tests/unit/test_pod.py [moved from utils/test/result_collection_api/opnfv_testapi/tests/unit/test_pod.py with 100% similarity]
utils/test/testapi/opnfv_testapi/tests/unit/test_project.py [moved from utils/test/result_collection_api/opnfv_testapi/tests/unit/test_project.py with 100% similarity]
utils/test/testapi/opnfv_testapi/tests/unit/test_result.py [moved from utils/test/result_collection_api/opnfv_testapi/tests/unit/test_result.py with 100% similarity]
utils/test/testapi/opnfv_testapi/tests/unit/test_testcase.py [moved from utils/test/result_collection_api/opnfv_testapi/tests/unit/test_testcase.py with 100% similarity]
utils/test/testapi/opnfv_testapi/tests/unit/test_version.py [moved from utils/test/result_collection_api/opnfv_testapi/tests/unit/test_version.py with 100% similarity]
utils/test/testapi/opnfv_testapi/tornado_swagger/README.md [moved from utils/test/result_collection_api/opnfv_testapi/tornado_swagger/README.md with 100% similarity]
utils/test/testapi/opnfv_testapi/tornado_swagger/__init__.py [moved from utils/test/result_collection_api/opnfv_testapi/tornado_swagger/__init__.py with 100% similarity]
utils/test/testapi/opnfv_testapi/tornado_swagger/handlers.py [moved from utils/test/result_collection_api/opnfv_testapi/tornado_swagger/handlers.py with 100% similarity]
utils/test/testapi/opnfv_testapi/tornado_swagger/settings.py [moved from utils/test/result_collection_api/opnfv_testapi/tornado_swagger/settings.py with 100% similarity]
utils/test/testapi/opnfv_testapi/tornado_swagger/swagger.py [moved from utils/test/result_collection_api/opnfv_testapi/tornado_swagger/swagger.py with 100% similarity]
utils/test/testapi/opnfv_testapi/tornado_swagger/views.py [moved from utils/test/result_collection_api/opnfv_testapi/tornado_swagger/views.py with 100% similarity]
utils/test/testapi/requirements.txt [moved from utils/test/result_collection_api/requirements.txt with 100% similarity]
utils/test/testapi/run_test.sh [moved from utils/test/result_collection_api/run_test.sh with 100% similarity]
utils/test/testapi/setup.cfg [moved from utils/test/result_collection_api/setup.cfg with 100% similarity]
utils/test/testapi/setup.py [moved from utils/test/result_collection_api/setup.py with 100% similarity]
utils/test/testapi/test-requirements.txt [moved from utils/test/result_collection_api/test-requirements.txt with 100% similarity]
utils/test/testapi/update/README.md [moved from utils/test/result_collection_api/update/README.md with 100% similarity]
utils/test/testapi/update/__init__.py [moved from utils/test/result_collection_api/update/__init__.py with 100% similarity]
utils/test/testapi/update/playbook-update.sh [moved from utils/test/result_collection_api/update/playbook-update.sh with 100% similarity]
utils/test/testapi/update/templates/__init__.py [moved from utils/test/result_collection_api/update/templates/__init__.py with 100% similarity]
utils/test/testapi/update/templates/backup_mongodb.py [moved from utils/test/result_collection_api/update/templates/backup_mongodb.py with 100% similarity]
utils/test/testapi/update/templates/changes_in_mongodb.py [moved from utils/test/result_collection_api/update/templates/changes_in_mongodb.py with 100% similarity]
utils/test/testapi/update/templates/restore_mongodb.py [moved from utils/test/result_collection_api/update/templates/restore_mongodb.py with 100% similarity]
utils/test/testapi/update/templates/rm_images.sh [moved from utils/test/result_collection_api/update/templates/rm_images.sh with 100% similarity]
utils/test/testapi/update/templates/rm_olds.sh [moved from utils/test/result_collection_api/update/templates/rm_olds.sh with 100% similarity]
utils/test/testapi/update/templates/update_mongodb.py [moved from utils/test/result_collection_api/update/templates/update_mongodb.py with 100% similarity]
utils/test/testapi/update/templates/utils.py [moved from utils/test/result_collection_api/update/templates/utils.py with 100% similarity]
utils/test/testapi/update/test.yml [moved from utils/test/result_collection_api/update/test.yml with 100% similarity]
utils/test/testapi/update/update.yml [moved from utils/test/result_collection_api/update/update.yml with 100% similarity]
utils/test/testapi/update/update_api.py [moved from utils/test/result_collection_api/update/update_api.py with 100% similarity]

index a2a57d4..d15bf74 100644 (file)
                     exclude-no-code-change: 'false'
                 - comment-added-contains-event:
                     comment-contains-value: 'recheck'
+            custom-url: '* $JOB_NAME $BUILD_URL'
+            silent-start: true
             projects:
               - project-compare-type: 'PLAIN'
                 project-pattern: 'openstack/bifrost'
index 363423d..233cf08 100644 (file)
             make
             # run basic sanity test
             make sanity
+            cd ../ci
+            ./build-vsperf.sh verify
 
 - job-template:
     name: 'vswitchperf-merge-{stream}'
             cd src
             make clobber
             make
+            cd ../ci
+            ./build-vsperf.sh merge
index a1e7d5d..6b608a7 100644 (file)
@@ -239,5 +239,13 @@ class opnfv::server (
     multiple => true,
   }
 
+  # disable selinux in case of RHEL
+  if ($::osfamily == 'RedHat') {
+    class { 'selinux':
+      mode => 'disabled',
+    }
+  }
+
+  # update hosts
   create_resources('host', hiera_hash('hosts'))
 }
index 44cf797..6114e90 100644 (file)
@@ -1,5 +1,6 @@
 #! /usr/bin/env python
 
+import urlparse
 from ConfigParser import SafeConfigParser, NoOptionError
 
 
@@ -27,6 +28,7 @@ class APIConfig:
         self.es_creds = None
         self.kibana_url = None
         self.js_path = None
+        self.index_url = None
 
     def _get_str_parameter(self, section, param):
         try:
@@ -67,6 +69,8 @@ class APIConfig:
         obj.es_creds = obj._get_str_parameter("elastic", "creds")
         obj.kibana_url = obj._get_str_parameter("kibana", "url")
         obj.js_path = obj._get_str_parameter("kibana", "js_path")
+        index = obj._get_str_parameter("elastic", "index")
+        obj.index_url = urlparse.urljoin(obj.es_url, index)
 
         return obj
 
@@ -74,7 +78,9 @@ class APIConfig:
         return "elastic_url = %s \n" \
                "elastic_creds = %s \n" \
                "kibana_url = %s \n" \
+               "index_url = %s \n" \
                "js_path = %s \n" % (self.es_url,
                                     self.es_creds,
                                     self.kibana_url,
+                                    self.index_url,
                                     self.js_path)
index 5af512e..112d222 100644 (file)
@@ -1,6 +1,5 @@
 #! /usr/bin/env python
 import json
-import urlparse
 
 import argparse
 
@@ -131,10 +130,9 @@ class KibanaConstructor(object):
             }
         })
 
-        elastic_data = elastic_access.get_docs(
-            urlparse.urljoin(CONF.es_url, '/testapi/results'),
-            CONF.es_creds,
-            query)
+        elastic_data = elastic_access.get_docs(CONF.index_url,
+                                               CONF.es_creds,
+                                               query)
 
         pods_and_scenarios = {}
 
index c2a8d11..688f55f 100644 (file)
@@ -5,7 +5,6 @@ import json
 import os
 import subprocess
 import traceback
-import urlparse
 import uuid
 
 import argparse
@@ -188,7 +187,7 @@ class DocumentsPublisher(object):
             self._remove()
             exit(-1)
 
-    def get_existed_docs(self):
+    def get_exists(self):
         if self.days == 0:
             body = '''{{
                         "query": {{
@@ -242,10 +241,6 @@ class DocumentsPublisher(object):
 
 
 def main():
-    base_elastic_url = urlparse.urljoin(CONF.es_url, '/testapi/results')
-    days = args.latest_days
-    es_creds = CONF.es_creds
-
     for project, case_dicts in testcases.testcases_yaml.items():
         for case_dict in case_dicts:
             case = case_dict.get('name')
@@ -253,6 +248,6 @@ def main():
             DocumentsPublisher(project,
                                case,
                                fmt,
-                               days,
-                               base_elastic_url,
-                               es_creds).export().get_existed_docs().publish()
+                               args.latest_days,
+                               CONF.index_url,
+                               CONF.es_creds).export().get_exists().publish()
index d932798..77adc16 100644 (file)
@@ -2,6 +2,7 @@
 # the CONF object in config.ini must be updated
 [elastic]
 url = http://localhost:9200
+index = testapi/results
 creds =
 
 [kibana]
index b527b78..653448e 100755 (executable)
@@ -82,6 +82,10 @@ for version in conf.versions:
         items = {}
         scenario_result_criteria = {}
 
+        scenario_file_name = (conf.REPORTING_PATH +
+                              "/functest/release/" + version +
+                              "/scenario_history.txt")
+
         # For all the scenarios get results
         for s, s_result in scenario_results.items():
             logger.info("---------------------------------")
@@ -185,11 +189,8 @@ for version in conf.versions:
                 scenario_criteria = conf.MAX_SCENARIO_CRITERIA
 
             s_score = str(scenario_score) + "/" + str(scenario_criteria)
-            s_score_percent = 0.0
-            try:
-                s_score_percent = float(scenario_score) / float(scenario_criteria) * 100
-            except:
-                logger.error("cannot calculate the score percent")
+            s_score_percent = utils.getScenarioPercent(scenario_score,
+                                                       scenario_criteria)
 
             s_status = "KO"
             if scenario_score < scenario_criteria:
@@ -209,10 +210,7 @@ for version in conf.versions:
                     f.write(info)
 
             # Save daily results in a file
-            path_validation_file = (conf.REPORTING_PATH +
-                                    "/functest/release/" + version +
-                                    "/scenario_history.txt")
-            with open(path_validation_file, "a") as f:
+            with open(scenario_file_name, "a") as f:
                 info = (reportingDate + "," + s + "," + installer +
                         "," + s_score + "," +
                         str(round(s_score_percent)) + "\n")
@@ -239,34 +237,39 @@ for version in conf.versions:
                                      version=version,
                                      date=reportingDate)
 
-    with open(conf.REPORTING_PATH + "/functest/release/" + version +
-              "/index-status-" + installer + ".html", "wb") as fh:
-        fh.write(outputText)
+        # csv
+        # generate sub files based on scenario_history.txt
+        scenario_installer_file_name = (conf.REPORTING_PATH +
+                                        "/functest/release/" + version +
+                                        "/scenario_history_" + installer +
+                                        ".txt")
+        scenario_installer_file = open(scenario_installer_file_name, "a")
+        logger.info("Generate CSV...")
+        with open(scenario_file_name, "r") as f:
+            for line in f:
+                if installer in line:
+                    logger.debug("Add new line... %s" % line)
+                    scenario_installer_file.write(line)
+        scenario_installer_file.close
+
+        with open(conf.REPORTING_PATH + "/functest/release/" + version +
+                  "/index-status-" + installer + ".html", "wb") as fh:
+            fh.write(outputText)
+        logger.info("CSV generated...")
 
-    # Generate outputs for export
-    # pdf
-    try:
-        pdf_path = ("http://testresults.opnfv.org/reporting/" +
-                    "functest/release/" + version +
-                    "/index-status-" + installer + ".html")
-        pdf_doc_name = (conf.REPORTING_PATH +
-                        "/functest/release/" + version +
-                        "/status-" + installer + ".pdf")
-        pdfkit.from_url(pdf_path, pdf_doc_name)
-    except IOError:
-        logger.info("pdf generated anyway...")
-    except:
-        logger.error("impossible to generate PDF")
-    # csv
-    # generate sub files based on scenario_history.txt
-    scenario_installer_file_name = (conf.REPORTING_PATH +
-                                    "/functest/release/" + version +
-                                    "/scenario_history_" +
-                                    installer + ".txt")
-    scenario_installer_file = open(scenario_installer_file_name, "w")
-    with open(path_validation_file, "r") as f:
-        for line in f:
-            if installer in line:
-                scenario_installer_file.write(line)
-    scenario_installer_file.close
+        # Generate outputs for export
+        # pdf
+        logger.info("Generate PDF...")
+        try:
+            pdf_path = ("http://testresults.opnfv.org/reporting/" +
+                        "functest/release/" + version +
+                        "/index-status-" + installer + ".html")
+            pdf_doc_name = (conf.REPORTING_PATH +
+                            "/functest/release/" + version +
+                            "/status-" + installer + ".pdf")
+            pdfkit.from_url(pdf_path, pdf_doc_name)
+            logger.info("PDF generated...")
+        except IOError:
+            logger.info("pdf generated anyway...")
+        except:
+            logger.error("impossible to generate PDF")
index 9ba02e8..74d6f19 100644 (file)
@@ -176,3 +176,11 @@ def getJenkinsUrl(build_tag):
         print 'Impossible to get jenkins url:'
 
     return jenkins_url
+
+def getScenarioPercent(scenario_score,scenario_criteria):
+    score = 0.0
+    try:
+        score = float(scenario_score) / float(scenario_criteria) * 100
+    except:
+        print 'Impossible to calculate the percentage score'
+    return score
similarity index 96%
rename from utils/test/result_collection_api/docker/Dockerfile
rename to utils/test/testapi/docker/Dockerfile
index ffee4c2..b0272e6 100644 (file)
@@ -46,7 +46,7 @@ RUN pip install --upgrade pip
 RUN git config --global http.sslVerify false
 RUN git clone https://gerrit.opnfv.org/gerrit/releng /home/releng
 
-WORKDIR /home/releng/utils/test/result_collection_api/
+WORKDIR /home/releng/utils/test/testapi/
 RUN pip install -r requirements.txt
 RUN python setup.py install
 CMD ["bash", "docker/start-server.sh"]