Merge "remove scenarios"
authorJun Li <matthew.lijun@huawei.com>
Wed, 5 Jul 2017 01:53:27 +0000 (01:53 +0000)
committerGerrit Code Review <gerrit@opnfv.org>
Wed, 5 Jul 2017 01:53:27 +0000 (01:53 +0000)
25 files changed:
jjb/barometer/barometer-upload-artifact.sh
jjb/ci_gate_security/opnfv-ci-gate-security.yml
jjb/compass4nfv/compass-ci-jobs.yml
jjb/daisy4nfv/daisy-daily-jobs.yml
jjb/daisy4nfv/daisy-project-jobs.yml
jjb/doctor/doctor.yml
jjb/dovetail/dovetail-ci-jobs.yml
jjb/functest/functest-daily-jobs.yml
jjb/functest/functest-loop.sh
jjb/functest/functest-suite.sh
jjb/functest/set-functest-env.sh
jjb/global/slave-params.yml
jjb/releng/automate.yml [moved from jjb/releng/testapi-automate.yml with 78% similarity]
jjb/releng/docker-deploy.sh [moved from jjb/releng/testapi-docker-deploy.sh with 63% similarity]
jjb/releng/docker-update.sh [new file with mode: 0644]
jjb/releng/testapi-docker-update.sh [deleted file]
prototypes/xci/README.rst
prototypes/xci/config/pinned-versions
prototypes/xci/file/ansible-role-requirements.yml
prototypes/xci/scripts/update-osa-version-files.sh [changed mode: 0644->0755]
prototypes/xci/xci-deploy.sh
utils/push-test-logs.sh
utils/test/reporting/docker/requirements.pip
utils/test/reporting/run_test.sh [new file with mode: 0755]
utils/test/reporting/run_unit_tests.sh [deleted file]

index 887c492..817cc57 100644 (file)
@@ -17,12 +17,12 @@ echo "Uploading the barometer RPMs to artifacts.opnfv.org"
 echo "---------------------------------------------------"
 echo
 
-gsutil -m cp -r $RPM_DIR/* $OPNFV_ARTIFACT_URL > $WORKSPACE/gsutil.log 2>&1
+gsutil -m cp -r $RPM_DIR/* gs://$OPNFV_ARTIFACT_URL > $WORKSPACE/gsutil.log 2>&1
 
 # Check if the RPMs were pushed
-gsutil ls $OPNFV_ARTIFACT_URL > /dev/null 2>&1
+gsutil ls gs://$OPNFV_ARTIFACT_URL > /dev/null 2>&1
 if [[ $? -ne 0 ]]; then
-  echo "Problem while uploading barometer RPMs to $OPNFV_ARTIFACT_URL!"
+  echo "Problem while uploading barometer RPMs to gs://$OPNFV_ARTIFACT_URL!"
   echo "Check log $WORKSPACE/gsutil.log on the appropriate build server"
   exit 1
 fi
index 489dbc5..e2f6ceb 100644 (file)
@@ -77,7 +77,7 @@
                     comment-contains-value: 'reverify'
             projects:
               - project-compare-type: 'REG_EXP'
-                project-pattern: 'sandbox|releng|octopus|pharos|functest'
+                project-pattern: 'apex|armband|bamboo|barometer|bottlenecks|calipso|compass4nfv|conductor|cooper|functest|octopus|pharos|releng|sandbox'
                 branches:
                   - branch-compare-type: 'ANT'
                     branch-pattern: '**/{branch}'
             !include-raw:
                 - ./anteater-clone-all-repos.sh
                 - ./anteater-security-audit-weekly.sh
+
index 319269a..09ef441 100644 (file)
                       WED: true
                       FRI: true
                       SUN: true
+                  use-build-time: true
             steps:
                 - trigger-builds:
                     - project: 'dovetail-compass-{pod}-proposed_tests-master'
                 - condition-kind: day-of-week
                   day-selector: select-days
                   days:
-                      TUE: true
-                      THU: true
+                      TUES: true
+                      THURS: true
                       SAT: true
+                  use-build-time: true
             steps:
                 - trigger-builds:
                     - project: 'dovetail-compass-{pod}-proposed_tests-danube'
             condition-kind: and
             condition-operands:
                 - condition-kind: regex-match
-                  regex: os-(nosdn|odl_l2)-(nofeature|bgpvpn)-ha
+                  regex: os-(nosdn|odl_l2|onos|odl_l3)-nofeature-ha
                   label: '{scenario}'
                 - condition-kind: regex-match
                   regex: master
index aac76ba..592e54d 100644 (file)
         # NOHA scenarios
         - 'os-nosdn-nofeature-noha':
             auto-trigger-name: 'daisy-{scenario}-{pod}-daily-{stream}-trigger'
+        # ODL_L3 scenarios
+        - 'os-odl_l3-nofeature-noha':
+            auto-trigger-name: 'daisy-{scenario}-{pod}-daily-{stream}-trigger'
+        # ODL_L2 scenarios
+        - 'os-odl_l2-nofeature-noha':
+            auto-trigger-name: 'daisy-{scenario}-{pod}-daily-{stream}-trigger'
 
     jobs:
         - '{project}-{scenario}-{pod}-daily-{stream}'
             installer: '{installer}'
         - string:
             name: DEPLOY_SCENARIO
-            default: 'os-nosdn-nofeature-ha'
+            default: 'os-nosdn-nofeature-noha'
         - 'daisy-project-parameter':
             gs-pathname: '{gs-pathname}'
         - string:
 # NOHA Scenarios
 - trigger:
     name: 'daisy-os-nosdn-nofeature-noha-baremetal-daily-master-trigger'
+    triggers:
+        - timed: 'H 12 * * *'
+# ODL_L3 Scenarios
+- trigger:
+    name: 'daisy-os-odl_l3-nofeature-noha-baremetal-daily-master-trigger'
+    triggers:
+        - timed: 'H 16 * * *'
+# ODL_L2 Scenarios
+- trigger:
+    name: 'daisy-os-odl_l2-nofeature-noha-baremetal-daily-master-trigger'
     triggers:
         - timed: ''
 #-----------------------------------------------
 - trigger:
     name: 'daisy-os-nosdn-nofeature-noha-virtual-daily-master-trigger'
     triggers:
-        - timed: 'H 8,22 * * *'
+        - timed: 'H 12 * * *'
+# ODL_L3 Scenarios
+- trigger:
+    name: 'daisy-os-odl_l3-nofeature-noha-virtual-daily-master-trigger'
+    triggers:
+        - timed: 'H 16 * * *'
+# ODL_L3 Scenarios
+- trigger:
+    name: 'daisy-os-odl_l2-nofeature-noha-virtual-daily-master-trigger'
+    triggers:
+        - timed: ''
 
index 0a9d43d..57e44e3 100644 (file)
             branch: '{stream}'
             gs-pathname: ''
             disabled: false
-        - danube:
-            branch: 'stable/{stream}'
-            gs-pathname: '/{stream}'
-            disabled: false
 
     phase:
         - 'build':
@@ -64,7 +60,7 @@
         - git-scm
 
     triggers:
-        - timed: '0 H/8 * * *'
+        - timed: '0 8 * * *'
 
     parameters:
         - project-parameter:
             description: 'Git URL to use on this Jenkins Slave'
         - string:
             name: DEPLOY_SCENARIO
-            default: 'os-nosdn-nofeature-ha'
+            default: 'os-nosdn-nofeature-noha'
         - '{installer}-project-parameter':
             gs-pathname: '{gs-pathname}'
 
index eb230b5..c5454c7 100644 (file)
 
     installer:
         - apex:
-            slave-label: 'ool-virtual1'
-            pod: 'ool-virtual1'
+            slave-label: 'doctor-apex-verify'
         - fuel:
-            slave-label: 'ool-virtual2'
-            pod: 'ool-virtual2'
+            slave-label: 'doctor-fuel-verify'
         #- joid:
         #    slave-label: 'ool-virtual3'
         #    pod: 'ool-virtual3'
         - verify:
             profiler: 'none'
             auto-trigger-name: 'doctor-verify'
+            is-python: false
         - profiling:
             profiler: 'poc'
             auto-trigger-name: 'experimental'
+            is-python: false
+        - python-verify:
+            profiler: 'none'
+            auto-trigger-name: 'doctor-verify'
+            is-python: true
 
     pod:
         - arm-pod2:
             default: 'doctor-notification'
         - string:
             name: TESTCASE_OPTIONS
-            default: '-e INSPECTOR_TYPE={inspector} -e PROFILER_TYPE={profiler} -v $WORKSPACE:/home/opnfv/repos/doctor'
+            default: '-e INSPECTOR_TYPE={inspector} -e PROFILER_TYPE={profiler} -e PYTHON_ENABLE={is-python} -v $WORKSPACE:/home/opnfv/repos/doctor'
             description: 'Addtional parameters specific to test case(s)'
         # functest-parameter
         - string:
index 6bcaea2..43978f6 100644 (file)
@@ -25,7 +25,7 @@
         branch: 'stable/{stream}'
         dovetail-branch: master
         gs-pathname: '/{stream}'
-        docker-tag: 'cvp.0.1.0'
+        docker-tag: 'cvp.0.2.0'
 
 #-----------------------------------
 # POD, PLATFORM, AND BRANCH MAPPING
index 8de092d..fdef6f4 100644 (file)
             installer: fuel
             <<: *danube
 # PODs for verify jobs triggered by each patch upload
-        - ool-virtual1:
-            slave-label: '{pod}'
-            installer: apex
-            <<: *master
+#        - ool-virtual1:
+#            slave-label: '{pod}'
+#            installer: apex
+#            <<: *master
 #--------------------------------
 
     testsuite:
index 6768906..00a5f13 100755 (executable)
@@ -2,7 +2,11 @@
 set +e
 
 [[ "$PUSH_RESULTS_TO_DB" == "true" ]] && flags+="-r"
-cmd="python ${FUNCTEST_REPO_DIR}/functest/ci/run_tests.py -t all ${flags}"
+if [ "$BRANCH" == 'master' ]; then
+    cmd="run_tests -t all ${flags}"
+else
+    cmd="python ${FUNCTEST_REPO_DIR}/functest/ci/run_tests.py -t all ${flags}"
+fi
 
 container_id=$(docker ps -a | grep opnfv/functest | awk '{print $1}' | head -1)
 docker exec $container_id $cmd
index 5d1ed28..9b7f135 100755 (executable)
@@ -10,7 +10,11 @@ global_ret_val=0
 
 tests=($(echo $FUNCTEST_SUITE_NAME | tr "," "\n"))
 for test in ${tests[@]}; do
-    cmd="python /home/opnfv/repos/functest/functest/ci/run_tests.py -t $test"
+    if [ "$BRANCH" == 'master' ]; then
+        cmd="run_tests -t $test"
+    else
+        cmd="python /home/opnfv/repos/functest/functest/ci/run_tests.py -t $test"
+    fi
     docker exec $container_id $cmd
     let global_ret_val+=$?
 done
index 558e248..5f936f5 100755 (executable)
@@ -90,7 +90,12 @@ if [ $(docker ps | grep "${FUNCTEST_IMAGE}:${DOCKER_TAG}" | wc -l) == 0 ]; then
     exit 1
 fi
 
-cmd="python ${FUNCTEST_REPO_DIR}/functest/ci/prepare_env.py start"
+if [ "$BRANCH" == 'master' ]; then
+    cmd="prepare_env start"
+else
+    cmd="python ${FUNCTEST_REPO_DIR}/functest/ci/prepare_env.py start"
+fi
+
 
 echo "Executing command inside the docker: ${cmd}"
 docker exec ${container_id} ${cmd}
index 5744222..59c5856 100644 (file)
             default: https://gerrit.opnfv.org/gerrit/$PROJECT
             description: 'Git URL to use on this Jenkins Slave'
 - parameter:
-    name: 'ool-defaults'
+    name: 'doctor-defaults'
     parameters:
         - node:
             name: SLAVE_NAME
             description: 'Slave name on Jenkins'
             allowed-slaves:
-                - ool-virtual1
-                - ool-virtual2
-                - ool-virtual3
+                - '{default-slave}'
             default-slaves:
                 - '{default-slave}'
         - string:
             default: /root/.ssh/id_rsa
             description: 'SSH key to be used'
 - parameter:
-    name: 'ool-virtual1-defaults'
+    name: 'doctor-apex-verify-defaults'
     parameters:
-        - 'ool-defaults':
-            default-slave: 'ool-virtual1'
+        - 'doctor-defaults':
+            default-slave: 'doctor-apex-verify'
 - parameter:
-    name: 'ool-virtual2-defaults'
+    name: 'doctor-fuel-verify-defaults'
     parameters:
-        - 'ool-defaults':
-            default-slave: 'ool-virtual2'
+        - 'doctor-defaults':
+            default-slave: 'doctor-fuel-verify'
 - parameter:
-    name: 'ool-virtual3-defaults'
+    name: 'doctor-joid-verify-defaults'
     parameters:
-        - 'ool-defaults':
-            default-slave: 'ool-virtual3'
+        - 'doctor-defaults':
+            default-slave: 'doctor-joid-verify'
 - parameter:
     name: 'multisite-virtual-defaults'
     parameters:
similarity index 78%
rename from jjb/releng/testapi-automate.yml
rename to jjb/releng/automate.yml
index dd76538..9eb281d 100644 (file)
@@ -1,20 +1,22 @@
 - project:
-    name: testapi-automate
+    name: utils-automate
     stream:
         - master:
             branch: '{stream}'
-            gs-pathname: ''
+
+    module:
+        - 'testapi'
+        - 'reporting'
 
     phase:
-        - 'docker-update'
         - 'docker-deploy':
             slave-label: 'testresults'
         - 'generate-doc'
 
     jobs:
-        - 'testapi-automate-{stream}'
-        - 'testapi-automate-{phase}-{stream}'
-        - 'testapi-verify-{stream}'
+        - '{module}-automate-{stream}'
+        - '{module}-automate-{phase}-{stream}'
+        - '{module}-verify-{stream}'
 
     project: 'releng'
 
@@ -44,7 +46,7 @@
         - mongodb-backup
 
 - job-template:
-    name: 'testapi-verify-{stream}'
+    name: '{module}-verify-{stream}'
 
     parameters:
         - project-parameter:
                     branch-pattern: '**/{branch}'
                 file-paths:
                   - compare-type: 'ANT'
-                    pattern: 'utils/test/testapi/**'
+                    pattern: 'utils/test/{module}/**'
 
     builders:
-        - run-unit-tests
+        - shell: |
+            bash ./utils/test/{module}/run_test.sh
 
     publishers:
         - junit:
                     failing: 30
 
 - job-template:
-    name: 'testapi-automate-{stream}'
+    name: '{module}-automate-{stream}'
 
     project-type: multijob
 
             branch: '{branch}'
         - string:
             name: DOCKER_TAG
-            default: "latest"
-            description: "Tag name for testapi docker image"
+            default: 'latest'
+            description: 'Tag name for {module} docker image'
+        - string:
+            name: MODULE_NAME
+            default: '{module}'
+            description: "Name of the module"
         - 'opnfv-build-defaults'
 
     scm:
                     branch-pattern: '**/{branch}'
                 file-paths:
                   - compare-type: 'ANT'
-                    pattern: 'utils/test/testapi/**'
+                    pattern: 'utils/test/{module}/**'
 
     builders:
         - description-setter:
             description: "Built on $NODE_NAME"
-        - multijob:
-            name: docker-update
-            condition: SUCCESSFUL
-            projects:
-                - name: 'testapi-automate-docker-update-{stream}'
-                  current-parameters: true
-                  kill-phase-on: FAILURE
-                  abort-all-job: true
+        - docker-update
         - multijob:
             name: docker-deploy
             condition: SUCCESSFUL
             projects:
-                - name: 'testapi-automate-docker-deploy-{stream}'
+                - name: '{module}-automate-docker-deploy-{stream}'
                   current-parameters: false
                   predefined-parameters: |
                     GIT_BASE=$GIT_BASE
             name: generate-doc
             condition: SUCCESSFUL
             projects:
-                - name: 'testapi-automate-generate-doc-{stream}'
+                - name: '{module}-automate-generate-doc-{stream}'
                   current-parameters: true
                   kill-phase-on: FAILURE
                   abort-all-job: true
         - 'email-publisher'
 
 - job-template:
-    name: 'testapi-automate-{phase}-{stream}'
+    name: '{module}-automate-{phase}-{stream}'
 
     properties:
         - throttle:
         - project-parameter:
             project: '{project}'
             branch: '{branch}'
-        - string:
-            name: DOCKER_TAG
-            default: "latest"
-            description: "Tag name for testapi docker image"
 
     wrappers:
         - ssh-agent-wrapper
     builders:
         - description-setter:
             description: "Built on $NODE_NAME"
-        - 'testapi-automate-{phase}-macro'
+        - '{module}-automate-{phase}-macro'
 
 ################################
 # job builders
 ################################
 - builder:
-    name: mongodb-backup
-    builders:
-        - shell: |
-            bash ./jjb/releng/testapi-backup-mongodb.sh
-
-- builder:
-    name: 'run-unit-tests'
+    name: 'docker-update'
     builders:
-        - shell: |
-            bash ./utils/test/testapi/run_test.sh
-
-- builder:
-    name: 'testapi-automate-docker-update-macro'
-    builders:
-        - shell: |
-            bash ./jjb/releng/testapi-docker-update.sh
+        - shell:
+            !include-raw: ./docker-update.sh
 
 - builder:
     name: 'testapi-automate-generate-doc-macro'
         - shell: |
             bash ./utils/test/testapi/htmlize/push-doc-artifact.sh
 
+- builder:
+    name: 'reporting-automate-generate-doc-macro'
+    builders:
+        - shell: echo "To Be Done"
+
 - builder:
     name: 'testapi-automate-docker-deploy-macro'
     builders:
         - shell: |
-            bash ./jjb/releng/testapi-docker-deploy.sh
+            bash ./jjb/releng/docker-deploy.sh 'sudo docker run -dti -p 8082:8000 -e mongodb_url=mongodb://172.17.0.1:27017 -e swagger_url=http://testresults.opnfv.org/test opnfv/testapi' "http://testresults.opnfv.org/test/swagger/APIs"
+- builder:
+    name: 'reporting-automate-docker-deploy-macro'
+    builders:
+        - shell: |
+            bash ./jjb/releng/docker-deploy.sh 'sudo docker run -itd -p 8084:8000 -e SERVER_URL=http://testresults.opnfv.org/reporting2:8084 opnfv/reporting' "http://testresults.opnfv.org/reporting2/reporting/index.html"
+
+- builder:
+    name: mongodb-backup
+    builders:
+        - shell: |
+            bash ./jjb/releng/testapi-backup-mongodb.sh
 
 ################################
 # job publishers
     name: 'email-publisher'
     publishers:
         - email:
-            recipients: rohitsakala@gmail.com feng.xiaowei@zte.com.cn
+            recipients: rohitsakala@gmail.com feng.xiaowei@zte.com.cn morgan.richomme@orange.com
             notify-every-unstable-build: false
             send-to-individuals: true
similarity index 63%
rename from jjb/releng/testapi-docker-deploy.sh
rename to jjb/releng/docker-deploy.sh
index 02c5e3a..b3b930f 100644 (file)
@@ -1,10 +1,30 @@
 #!/bin/bash
+#  Licensed to the Apache Software Foundation (ASF) under one   *
+#  or more contributor license agreements.  See the NOTICE file *
+#  distributed with this work for additional information        *
+#  regarding copyright ownership.  The ASF licenses this file   *
+#  to you under the Apache License, Version 2.0 (the            *
+#  "License"); you may not use this file except in compliance   *
+#  with the License.  You may obtain a copy of the License at   *
+#                                                               *
+#    http://www.apache.org/licenses/LICENSE-2.0                 *
+#                                                               *
+#  Unless required by applicable law or agreed to in writing,   *
+#  software distributed under the License is distributed on an  *
+#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY       *
+#  KIND, either express or implied.  See the License for the    *
+#  specific language governing permissions and limitations      *
+#  under the License.                                           *
+
+# Assigning Variables
+command=$1
+url=$2
 
 function check() {
 
     # Verify hosted
     sleep 5
-    cmd=`curl -s --head  --request GET http://testresults.opnfv.org/test/swagger/APIs | grep '200 OK' > /dev/null`
+    cmd=`curl -s --head  --request GET ${url} | grep '200 OK' > /dev/null`
     rc=$?
     echo $rc
 
@@ -63,7 +83,7 @@ else
 fi
 
 echo "Running a container with the new image"
-sudo docker run -dti -p "8082:8000" -e "mongodb_url=mongodb://172.17.0.1:27017" -e "swagger_url=http://testresults.opnfv.org/test" opnfv/testapi:latest
+$command:latest
 
 if check; then
     echo "TestResults Hosted."
@@ -71,7 +91,7 @@ else
     echo "TestResults Hosting Failed"
     if [[ $(sudo docker images | grep "opnfv/testapi" | grep "old" | awk '{print $3}') ]]; then
         echo "Running old Image"
-        sudo docker run -dti -p "8082:8000" -e "mongodb_url=mongodb://172.17.0.1:27017" -e "swagger_url=http://testresults.opnfv.org/test" opnfv/testapi:old
+        $command:old
         exit 1
     fi
 fi
diff --git a/jjb/releng/docker-update.sh b/jjb/releng/docker-update.sh
new file mode 100644 (file)
index 0000000..559ac83
--- /dev/null
@@ -0,0 +1,34 @@
+#!/bin/bash
+#  Licensed to the Apache Software Foundation (ASF) under one   *
+#  or more contributor license agreements.  See the NOTICE file *
+#  distributed with this work for additional information        *
+#  regarding copyright ownership.  The ASF licenses this file   *
+#  to you under the Apache License, Version 2.0 (the            *
+#  "License"); you may not use this file except in compliance   *
+#  with the License.  You may obtain a copy of the License at   *
+#                                                               *
+#    http://www.apache.org/licenses/LICENSE-2.0                 *
+#                                                               *
+#  Unless required by applicable law or agreed to in writing,   *
+#  software distributed under the License is distributed on an  *
+#  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY       *
+#  KIND, either express or implied.  See the License for the    *
+#  specific language governing permissions and limitations      *
+#  under the License.                                           *
+
+set -o errexit
+set -o nounset
+
+cd $WORKSPACE/utils/test/$MODULE_NAME/docker/
+
+# Remove previous containers
+docker ps -a | grep "opnfv/$MODULE_NAME" | awk '{ print $1 }' | xargs -r docker rm -f
+
+# Remove previous images
+docker images | grep "opnfv/$MODULE_NAME" | awk '{ print $3 }' | xargs -r docker rmi -f
+
+# Start build
+docker build --no-cache -t opnfv/$MODULE_NAME:$DOCKER_TAG .
+
+# Push Image
+docker push opnfv/$MODULE_NAME:$DOCKER_TAG
diff --git a/jjb/releng/testapi-docker-update.sh b/jjb/releng/testapi-docker-update.sh
deleted file mode 100644 (file)
index 84f5c32..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-#!/bin/bash
-
-set -o errexit
-set -o nounset
-
-cd $WORKSPACE/utils/test/testapi/docker/
-
-# Remove previous containers
-docker ps -a | grep "opnfv/testapi" | awk '{ print $1 }' | xargs -r docker rm -f
-
-# Remove previous images
-docker images | grep "opnfv/testapi" | awk '{ print $3 }' | xargs -r docker rmi -f
-
-# Start build
-docker build --no-cache -t opnfv/testapi:$DOCKER_TAG .
-
-# Push Image
-docker push opnfv/testapi:$DOCKER_TAG
index b65abde..ecb8e19 100644 (file)
@@ -196,8 +196,10 @@ on each run.
 To enable it, you need to export the different DEV_PATH vars:
 
 - export OPNFV_RELENG_DEV_PATH=/opt/releng/
-- export OPENSTACK_BIFROST_DEV_PATH=/opt/bifrost
-- export OPENSTACK_OSA_DEV_PATH=/opt/openstack-ansible
+- export OPENSTACK_BIFROST_DEV_PATH=/opt/bifrost/
+- export OPENSTACK_OSA_DEV_PATH=/opt/openstack-ansible/
+
+Please note the trailing slahses.
 
 This will cause the deployment to pick the development copies stored at the
 specified directories, and use them instead of cloning those on every run.
index c426936..5817860 100755 (executable)
@@ -21,7 +21,7 @@
 #-------------------------------------------------------------------------------
 # use releng from master until the development work with the sandbox is complete
 export OPNFV_RELENG_VERSION="master"
-# HEAD of "master" as of 04.04.2017
+# HEAD of bifrost "master" as of 29.06.2017
 export OPENSTACK_BIFROST_VERSION=${OPENSTACK_BIFROST_VERSION:-"7c9bb5e07c6bc3b42c9a9e8457e5eef511075b38"}
-# HEAD of "master" as of 04.04.2017
-export OPENSTACK_OSA_VERSION=${OPENSTACK_OSA_VERSION:-"d9e1330c7ff9d72a604b6b4f3af765f66a01b30e"}
+# HEAD of osa "master" as of 29.06.2017
+export OPENSTACK_OSA_VERSION=${OPENSTACK_OSA_VERSION:-"0648818c64239b534d00db381c4609f28e40bda9"}
index 5a96e2a..57e0bb8 100644 (file)
 # which accompanies this distribution, and is available at
 # http://www.apache.org/licenses/LICENSE-2.0
 ##############################################################################
-# these versions are extracted based on the osa commit d9e1330c7ff9d72a604b6b4f3af765f66a01b30e on 04.04.2017
-# https://review.openstack.org/gitweb?p=openstack/openstack-ansible.git;a=commit;h=d9e1330c7ff9d72a604b6b4f3af765f66a01b30e
+# these versions are extracted based on the osa commit 0648818c64239b534d00db381c4609f28e40bda9 on 2017-06-27T22:02:17+00:00
+# https://review.openstack.org/gitweb?p=openstack/openstack-ansible.git;a=commit;h=0648818c64239b534d00db381c4609f28e40bda9
 - name: ansible-hardening
   scm: git
   src: https://git.openstack.org/openstack/ansible-hardening
-  version: 051fe3195f59d1ee8db06fca5d2cce7a25e58861
+  version: f422da8599c6d8f64ebfefbf0a0aa711ea1f9569
 - name: apt_package_pinning
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-apt_package_pinning
-  version: 364fc9fcd8ff652546c13d9c20ac808bc0e35f66
+  version: 4afe664efb5a2385a1d7071f68bc9001f16c0f41
 - name: pip_install
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-pip_install
-  version: 793ae4d01397bd91ebe18e9670e8e27d1ae91960
+  version: 348995b85f91f796b28656459474fb3935be737c
 - name: galera_client
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-galera_client
-  version: c093c13e01826da545bf9a0259e0be441bc1b5e1
+  version: 2055ebf1582a15c2b2a73985485be15884c9b2d3
 - name: galera_server
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-galera_server
-  version: fd0a6b104a32badbe7e7594e2c829261a53bfb11
+  version: 78a1259a10a5be95ab7d6ba3e8f2961805ae3a5b
 - name: ceph_client
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-ceph_client
-  version: 9149bfa8e3c4284b656834ba7765ea3aa48bec2e
+  version: aa3b0d959464f9362aaf29d6cf6225e1d4e302be
 - name: haproxy_server
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-haproxy_server
-  version: 32415ab81c61083ac5a83b65274703e4a5470e5e
+  version: f8bc5c6129c0d50ac3355c82560fbf22ee32479b
 - name: keepalived
   scm: git
   src: https://github.com/evrardjp/ansible-keepalived
-  version: 4f7c8eb16e3cbd8c8748f126c1eea73db5c8efe9
+  version: 3.0.1
 - name: lxc_container_create
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-lxc_container_create
-  version: 097da38126d90cfca36cdc3955aaf658a00db599
+  version: 1eab03452885f0a34cb78f54e3bcf5824abc012e
 - name: lxc_hosts
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-lxc_hosts
-  version: 2931d0c87a1c592ad7f1f2f83cdcf468e8dea932
+  version: f0b8782c03dde4dd65e70d8b03afc26a30c74f37
 - name: memcached_server
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-memcached_server
-  version: 58e17aa13ebe7b0aa5da7c00afc75d6716d2720d
-- name: openstack-ansible-security
-  scm: git
-  src: https://git.openstack.org/openstack/openstack-ansible-security
-  version: 9d745ec4fe8ac3e6d6cbb2412abe5196a9d2dad7
+  version: 6924e7d44d6e36cbe45507e43ef82af6ac0ae125
 - name: openstack_hosts
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-openstack_hosts
-  version: 2076dfddf418b1bdd64d3782346823902aa996bc
+  version: d68b1dd8fc5ef18c78172d4e9fa3ca01d7473dcf
 - name: os_keystone
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-os_keystone
-  version: cee7a02143a1826479e6444c6fb5f1c2b6074ab7
+  version: 0cafcc150da10a01ee0b4543167fdc88b9b91a85
 - name: openstack_openrc
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-openstack_openrc
-  version: fb98ad8d7bfe7fba0c964cb061313f1b8767c4b0
+  version: 18b7f31a19c4c9bc95abc07a83c9ba866eff538d
 - name: os_aodh
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-os_aodh
-  version: 9dcacb8fd6feef02e485f99c83535707ae67876b
+  version: 5bebd5a18aa7469803f26fb41df62495730afde3
 - name: os_barbican
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-os_barbican
-  version: bb3f39cb2f3c31c6980aa65c8953ff6293b992c0
+  version: fc95936f9375c3e9eab708b356e760e3eeb785d7
 - name: os_ceilometer
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-os_ceilometer
-  version: 178ad8245fa019f0610c628c58c377997b011e8a
+  version: daf94c5d1a009abb111b5ff7dea8b4f50473b227
 - name: os_cinder
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-os_cinder
-  version: 1321fd39d8f55d1dc3baf91b4194469b349d7dc4
+  version: d0c46f29d7bb02139a14ad46869ce411e80874d9
 - name: os_glance
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-os_glance
-  version: f39ef212bfa2edff8334bfb632cc463001c77c11
+  version: a1e3588769e6d17b074398f0ef2675f34438b73b
 - name: os_gnocchi
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-os_gnocchi
-  version: 318bd76e5e72402e8ff5b372b469c27a9395341b
+  version: f79b0f6e1db40b59390b7e40a90792e72afe55e6
 - name: os_heat
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-os_heat
-  version: 07d59ddb757b2d2557fba52ac537803e646e65b4
+  version: 7a5b703b35f36a5a63ce9934ef585c8967e9de5a
 - name: os_horizon
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-os_horizon
-  version: 69ef49c4f7a42f082f4bcff824d13f57145e2b83
+  version: cb4a27da79ad67b2826f637927514e0829c23c0f
 - name: os_ironic
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-os_ironic
-  version: 57e8a0eaaa2159f33e64a1b037180383196919d1
+  version: e5c24e40b0d08d8bc7b4641679a8731c2b2aca29
 - name: os_magnum
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-os_magnum
-  version: 8329c257dff25686827bd1cc904506d76ad1d12f
+  version: 3eeb33db25db48f04e496a3ee47323fffe2af864
 - name: os_trove
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-os_trove
-  version: b948402c76d6188caa7be376098354cdb850d638
+  version: 0cf74c1a917b07e557411ca1c1376491c97aa0a9
 - name: os_neutron
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-os_neutron
-  version: 2a92a4e1857e7457683aefd87ee5a4e751fc701a
+  version: 280788b20099532c13042966defcbcbf5d5dd994
 - name: os_nova
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-os_nova
-  version: 511963b7921ec7c2db24e8ee1d71a940b0aafae4
+  version: 031b386bdd29f895203a3d053c1dabba66cfeeb0
 - name: os_rally
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-os_rally
-  version: 96153c5b3285d11d00611a03135c9d8f267e0f52
+  version: 9125458265088eb8622f28df57f640509546a6d4
 - name: os_sahara
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-os_sahara
-  version: 012d3f3530f878e5143d58380f94d1f514baad04
+  version: 433d624b0ddb0d2778f014a175064572e15ea462
 - name: os_swift
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-os_swift
-  version: d62d6a23ac0b01d0320dbcb6c710dfd5f3cecfdf
+  version: 3b91c62e1de6e0d852476e3b74e39b7a55d77ec9
 - name: os_tempest
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-os_tempest
-  version: 9d2bfb09d1ebbc9102329b0d42de33aa321e57b1
+  version: 692209da1fdab6014e13e65be27ffb9b8c8578bb
 - name: plugins
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-plugins
-  version: 3d2e23bb7e1d6775789d7f65ce8a878a7ee1d3c7
+  version: 8685a0ba38b7f534dd4db971da6d54b495c79169
 - name: rabbitmq_server
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-rabbitmq_server
-  version: 9b0ce64fe235705e237bc4b476ecc0ad602d67a8
+  version: 50bffbf8f114c8100ec5e86ebac9baba5c4f233d
 - name: repo_build
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-repo_build
-  version: fe3ae20f74a912925d5c78040984957a6d55f9de
+  version: 9ce713e9762650e1041ba7d9ad3c207a0c65d0c4
 - name: repo_server
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-repo_server
-  version: 7ea0820e0941282cd5c5cc263e939ffbee54ba52
+  version: 275124b643d6e6a9c92d65be7a7f309fe6f0c6dc
 - name: rsyslog_client
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-rsyslog_client
-  version: 19615e47137eee46ee92c0308532fe1d2212333c
+  version: da0090d48b166e0ffe83c35483572e358a29d523
 - name: rsyslog_server
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-rsyslog_server
-  version: efd7b21798da49802012e390a0ddf7cc38636eeb
+  version: 0f4b5ac0e7a170bd9811875965b781d447a5517a
 - name: sshd
   scm: git
   src: https://github.com/willshersystems/ansible-sshd
-  version: 426e11c4dffeca09fcc4d16103a91e5e65180040
+  version: 0.5.1
 - name: bird
   scm: git
   src: https://github.com/logan2211/ansible-bird
-  version: 2c4d29560d3617abddf0e63e0c95536364dedd92
+  version: '1.2'
 - name: etcd
   scm: git
   src: https://github.com/logan2211/ansible-etcd
-  version: ef63b0c5fd352b61084fd5aca286ee7f3fea932b
+  version: '1.2'
 - name: unbound
   scm: git
   src: https://github.com/logan2211/ansible-unbound
-  version: 5329d03eb9c15373d648a801563087c576bbfcde
+  version: '1.4'
 - name: resolvconf
   scm: git
   src: https://github.com/logan2211/ansible-resolvconf
-  version: 3b2b7cf2e900b194829565b351bf32bb63954548
+  version: '1.2'
 - name: os_designate
   scm: git
   src: https://git.openstack.org/openstack/openstack-ansible-os_designate
-  version: b7098a6bdea73c869f45a86e0cc78d21b032161e
+  version: cc9760d0a08083c1168999422ccefa0d56ead093
 - name: ceph.ceph-common
   scm: git
   src: https://github.com/ceph/ansible-ceph-common
-  version: ef149767fa9565ec887f0bdb007ff752bd61e5d5
+  version: v2.2.9
 - name: ceph.ceph-docker-common
   scm: git
   src: https://github.com/ceph/ansible-ceph-docker-common
 - name: ceph-mon
   scm: git
   src: https://github.com/ceph/ansible-ceph-mon
-  version: c5be4d6056dfe6a482ca3fcc483a6050cc8929a1
+  version: v2.2.9
 - name: ceph-osd
   scm: git
   src: https://github.com/ceph/ansible-ceph-osd
-  version: 7bc5a61ceb96e487b7a9fe9643f6dafa6492f2b5
+  version: v2.2.9
+- name: os_octavia
+  scm: git
+  src: https://git.openstack.org/openstack/openstack-ansible-os_octavia
+  version: 48ff9a634a3ea34c6811ebc10057708dc23ed76e
+- name: os_molteniron
+  scm: git
+  src: https://git.openstack.org/openstack/openstack-ansible-os_molteniron
+  version: 0de6fe5251b54881ab3eb8bf0a8d694dd4362430
old mode 100644 (file)
new mode 100755 (executable)
index 92df978..d822d25
@@ -9,7 +9,8 @@
 ##############################################################################
 
 # This script is used to pin the SHAs for the various roles in the
-# ansible-role-requirements file
+# ansible-role-requirements file. It will also update the SHAs for
+# OSA and bifrost.
 
 set -e
 
@@ -18,7 +19,7 @@ releng_xci_base="$(dirname $(readlink -f $0))/.."
 
 usage() {
     echo """
-    ${0} <openstack-ansible commit SHA>
+    ${0} <openstack-ansible commit SHA> [<bifrost commit SHA>]
     """
     exit 0
 }
@@ -32,7 +33,7 @@ printme() {
 }
 
 # Only need a single argument
-[[ $# -ne 1 ]] && echo "Invalid number of arguments!" && usage
+[[ $# -lt 1 || $# -gt 2 ]] && echo "Invalid number of arguments!" && usage
 
 tempdir="$(mktemp -d)"
 
@@ -52,7 +53,7 @@ popd &> /dev/null
 pushd $tempdir/openstack-ansible &> /dev/null
 source scripts/sources-branch-updater-lib.sh
 printme "Synchronize roles and packages"
-update_ansible_role_requirements "master" "false" "true"
+update_ansible_role_requirements "master" "true" "true"
 
 # Construct the ansible-role-requirements-file
 echo """---
@@ -65,12 +66,17 @@ echo """---
 # http://www.apache.org/licenses/LICENSE-2.0
 ##############################################################################
 # these versions are extracted based on the osa commit ${1} on $(git --no-pager log -1 --format=%cI $1)
-# https://review.openstack.org/gitweb?p=openstack/openstack-ansible.git;a=commit;h=$1
-""" > $releng_xci_base/file/ansible-role-requirements.yml
+# https://review.openstack.org/gitweb?p=openstack/openstack-ansible.git;a=commit;h=$1""" > $releng_xci_base/file/ansible-role-requirements.yml
 cat $tempdir/openstack-ansible/ansible-role-requirements.yml >> $releng_xci_base/file/ansible-role-requirements.yml
 
 # Update the pinned OSA version
-sed -i "/^export OPENSTACK_OSA_VERSION/s@:-\"[a-z0-9]*@:-\"${1}@" $releng_xci_base/config/pinned-versions
+sed -i -e "/^export OPENSTACK_OSA_VERSION/s@:-\"[a-z0-9]*@:-\"${1}@" \
+    -e "s/\(^# HEAD of osa.*of \).*/\1$(date +%d\.%m\.%Y)/" $releng_xci_base/config/pinned-versions
+
+# Update the pinned bifrost version
+[[ -n ${2:-} ]] && \
+    sed -i -e "/^export OPENSTACK_BIFROST_VERSION/s@:-\"[a-z0-9]*@:-\"${2}@" \
+    -e "s/\(^# HEAD of bifrost.*of \).*/\1$(date +%d\.%m\.%Y)/" $releng_xci_base/config/pinned-versions
 
 popd &> /dev/null
 
index 3a65983..a72c927 100755 (executable)
@@ -37,6 +37,15 @@ source "$XCI_PATH/config/${XCI_FLAVOR}-vars"
 # source xci configuration
 source $XCI_PATH/config/env-vars
 
+#-------------------------------------------------------------------------------
+# Sanitize local development environment variables
+#-------------------------------------------------------------------------------
+user_local_dev_vars=(OPNFV_RELENG_DEV_PATH OPNFV_OSA_DEV_PATH OPNFV_BIFROST_DEV_PATH)
+for local_user_var in ${user_local_dev_vars[@]}; do
+    [[ -n ${!local_user_var} ]] && export $local_user_var=${!local_user_var%/}/
+done
+unset user_local_dev_vars local_user_var
+
 #-------------------------------------------------------------------------------
 # Log info to console
 #-------------------------------------------------------------------------------
index f0c488a..5021b78 100644 (file)
@@ -30,7 +30,8 @@ node_list=(\
 'arm-pod1' 'arm-pod3' \
 'huawei-pod1' 'huawei-pod2' 'huawei-pod3' 'huawei-pod4' 'huawei-pod5' \
 'huawei-pod6' 'huawei-pod7' 'huawei-pod12' \
-'huawei-virtual1' 'huawei-virtual2' 'huawei-virtual3' 'huawei-virtual4')
+'huawei-virtual1' 'huawei-virtual2' 'huawei-virtual3' 'huawei-virtual4'\
+'zte-virtual1')
 
 
 if [[ ! " ${node_list[@]} " =~ " ${testbed} " ]]; then
index 6de856e..aeee3ba 100644 (file)
@@ -12,3 +12,4 @@ PyYAML==3.11
 simplejson==3.8.1
 jinja2==2.8
 tornado==4.4.2
+requests==2.12.5
diff --git a/utils/test/reporting/run_test.sh b/utils/test/reporting/run_test.sh
new file mode 100755 (executable)
index 0000000..8c674ce
--- /dev/null
@@ -0,0 +1,44 @@
+#!/bin/bash
+set -o errexit
+set -o pipefail
+
+
+# Get script directory
+SCRIPTDIR=`dirname $0`
+
+# Creating virtual environment
+if [ ! -z $VIRTUAL_ENV ]; then
+    venv=$VIRTUAL_ENV
+else
+    venv=$SCRIPTDIR/.venv
+    virtualenv $venv
+fi
+
+source $venv/bin/activate
+
+export CONFIG_REPORTING_YAML=$SCRIPTDIR/reporting.yaml
+
+# ***************
+# Run unit tests
+# ***************
+echo "Running unit tests..."
+
+# install python packages
+easy_install -U setuptools
+easy_install -U pip
+pip install -r $SCRIPTDIR/docker/requirements.pip
+pip install -e $SCRIPTDIR
+
+python $SCRIPTDIR/setup.py develop
+
+# unit tests
+# TODO: remove cover-erase
+# To be deleted when all functest packages will be listed
+nosetests --with-xunit \
+         --cover-package=$SCRIPTDIR/utils \
+         --with-coverage \
+         --cover-xml \
+         $SCRIPTDIR/tests/unit
+rc=$?
+
+deactivate
diff --git a/utils/test/reporting/run_unit_tests.sh b/utils/test/reporting/run_unit_tests.sh
deleted file mode 100755 (executable)
index 6b0e3b2..0000000
+++ /dev/null
@@ -1,43 +0,0 @@
-#!/bin/bash
-set -o errexit
-set -o pipefail
-
-# ******************************
-# prepare the env for the tests
-# ******************************
-# Either Workspace is set (CI)
-if [ -z $WORKSPACE ]
-then
-    WORKSPACE="."
-fi
-
-export CONFIG_REPORTING_YAML=./reporting.yaml
-
-# ***************
-# Run unit tests
-# ***************
-echo "Running unit tests..."
-
-# start vitual env
-virtualenv $WORKSPACE/reporting_venv
-source $WORKSPACE/reporting_venv/bin/activate
-
-# install python packages
-easy_install -U setuptools
-easy_install -U pip
-pip install -r $WORKSPACE/docker/requirements.pip
-pip install -e $WORKSPACE
-
-python $WORKSPACE/setup.py develop
-
-# unit tests
-# TODO: remove cover-erase
-# To be deleted when all functest packages will be listed
-nosetests --with-xunit \
-         --cover-package=utils \
-         --with-coverage \
-         --cover-xml \
-         tests/unit
-rc=$?
-
-deactivate