Merge "auto: verify and merge jobs"
authorTrevor Bramwell <tbramwell@linuxfoundation.org>
Thu, 2 Aug 2018 22:37:34 +0000 (22:37 +0000)
committerGerrit Code Review <gerrit@opnfv.org>
Thu, 2 Aug 2018 22:37:34 +0000 (22:37 +0000)
14 files changed:
jjb/3rd_party_ci/odl-netvirt.yaml
jjb/apex/apex-snapshot-deploy.sh
jjb/apex/apex.yaml
jjb/apex/apex.yaml.j2
jjb/apex/scenarios.yaml.hidden
jjb/armband/armband-ci-jobs.yaml
jjb/armband/armband-verify-jobs.yaml
jjb/cperf/cperf-ci-jobs.yaml
jjb/cperf/cperf-robot-netvirt-csit.sh
jjb/cperf/cperf-upload-logs-csit.sh [new file with mode: 0644]
jjb/doctor/doctor-env-presetup.sh [new file with mode: 0755]
jjb/doctor/doctor.yaml
jjb/dovetail/dovetail-run.sh
jjb/fuel/fuel-verify-jobs.yaml

index 98c85db..bb7d21e 100644 (file)
               abort-all-job: true
       - multijob:
           name: csit
-          condition: SUCCESSFUL
+          condition: ALWAYS
           projects:
             - name: cperf-apex-csit-master
               predefined-parameters: |
               node-parameters: true
               kill-phase-on: FAILURE
               abort-all-job: false
+      - multijob:
+          name: csit-collect-logs
+          condition: ALWAYS
+          projects:
+            - name: cperf-upload-logs-csit
+              predefined-parameters: |
+                ODL_BRANCH=$BRANCH
+                OS_VERSION=$OS_VERSION
+              node-parameters: true
+              kill-phase-on: FAILURE
+              abort-all-job: false
       - multijob:
           name: postprocess
           condition: ALWAYS
index 6a8a140..bd023f5 100644 (file)
@@ -25,10 +25,10 @@ pushd ci > /dev/null
 sudo opnfv-clean
 popd > /dev/null
 
-full_snap_url=http://$GS_URL/${OS_VERSION}/${TOPOLOGY}
+full_snap_url="gs://${GS_URL}/${OS_VERSION}/${TOPOLOGY}"
 
 echo "Downloading latest snapshot properties file"
-if ! wget -O $WORKSPACE/opnfv.properties ${full_snap_url}/snapshot.properties; then
+if ! gsutil cp ${full_snap_url}/snapshot.properties $WORKSPACE/opnfv.properties; then
   echo "ERROR: Unable to find snapshot.properties at ${full_snap_url}...exiting"
   exit 1
 fi
@@ -52,6 +52,7 @@ if [ -d "$SNAP_CACHE" ]; then
   latest_snap=$(ls ${SNAP_CACHE} | grep tar.gz | tail -n 1)
   if [ -n "$latest_snap" ]; then
     local_snap_checksum=$(sha512sum ${SNAP_CACHE}/${latest_snap} | cut -d' ' -f1)
+    echo "Local snap checksum is: ${local_snap_checksum}"
   fi
 else
   mkdir -p ${SNAP_CACHE}
@@ -67,7 +68,7 @@ if [ "$local_snap_checksum" != "$latest_snap_checksum" ]; then
   echo "INFO: SHA mismatch, will download latest snapshot"
   # wipe cache
   rm -rf ${SNAP_CACHE}/*
-  wget --directory-prefix=${SNAP_CACHE}/ ${snap_url}
+  gsutil cp "gs://${snap_url}" ${SNAP_CACHE}/
   snap_tar=$(basename ${snap_url})
 else
   snap_tar=${latest_snap}
index aabe6eb..92681ff 100644 (file)
@@ -37,7 +37,7 @@
           baremetal-slave: 'apex-baremetal-master'
           verify-scenario: 'os-nosdn-nofeature-ha'
           scenario_stream: 'fraser'
-          disable_daily: true
+          disable_daily: false
           disable_promote: true
       - euphrates: &euphrates
           branch: 'stable/euphrates'
           disable_promote: true
 
     scenario:
-      - 'os-nosdn-nofeature-noha':
-          <<: *fraser
       - 'os-nosdn-nofeature-ha':
           <<: *fraser
-      - 'os-odl-nofeature-ha':
-          <<: *fraser
-      - 'os-odl-nofeature-noha':
-          <<: *fraser
       - 'os-odl-bgpvpn-ha':
           <<: *fraser
-      - 'os-ovn-nofeature-noha':
-          <<: *fraser
-      - 'os-nosdn-fdio-noha':
-          <<: *fraser
-      - 'os-nosdn-fdio-ha':
-          <<: *fraser
-      - 'os-nosdn-bar-ha':
-          <<: *fraser
-      - 'os-nosdn-bar-noha':
-          <<: *fraser
-      - 'os-nosdn-ovs_dpdk-noha':
-          <<: *fraser
-      - 'os-nosdn-ovs_dpdk-ha':
-          <<: *fraser
-      - 'os-odl-sfc-noha':
-          <<: *fraser
-      - 'os-odl-sfc-ha':
-          <<: *fraser
-      - 'os-nosdn-calipso-noha':
-          <<: *fraser
       - 'os-nosdn-nofeature-noha':
           <<: *danube
       - 'os-nosdn-nofeature-ha':
               abort-all-job: true
               git-revision: false
       - shell: |
+          if echo $DEPLOY_SCENARIO | grep queens &> /dev/null; then
+            echo 'REPO=opnfv' > functest_properties
+          else
+            echo 'REPO=ollivier' > functest_properties
+          fi
           features=$(echo $DEPLOY_SCENARIO | sed -r -n 's/os-.+-(.+)-(noha|ha)/\1/p')
           if [ "$features" == 'queens' ]; then
             functest_scenario=$(echo $DEPLOY_SCENARIO | sed -r -n 's/(os-.+?)-queens-(noha|ha)/\1-nofeature-\2/p')
           else
             functest_scenario=$DEPLOY_SCENARIO
           fi
-          echo "DEPLOY_SCENARIO=$functest_scenario" > functest_scenario
+          echo "DEPLOY_SCENARIO=$functest_scenario" >> functest_properties
       - inject:
-          properties-file: functest_scenario
+          properties-file: functest_properties
           override-build-parameters: true
       - multijob:
           name: 'OPNFV Test Suite'
             - 'apex-runner.*'
             - 'apex-daily.*'
             - 'apex-csit-promote.*'
+            - 'odl-netvirt.*'
       - throttle:
           max-per-node: 1
           max-total: 10
           name: Baremetal Deploy and Test Phase
           condition: SUCCESSFUL
           projects:
-            - name: 'apex-os-nosdn-nofeature-noha-baremetal-fraser'
-              node-parameters: false
-              current-parameters: false
-              predefined-parameters: |
-                OPNFV_CLEAN=yes
-              kill-phase-on: NEVER
-              abort-all-job: true
-              git-revision: false
             - name: 'apex-os-nosdn-nofeature-ha-baremetal-fraser'
               node-parameters: false
               current-parameters: false
               kill-phase-on: NEVER
               abort-all-job: true
               git-revision: false
-            - name: 'apex-os-odl-nofeature-ha-baremetal-fraser'
-              node-parameters: false
-              current-parameters: false
-              predefined-parameters: |
-                OPNFV_CLEAN=yes
-              kill-phase-on: NEVER
-              abort-all-job: true
-              git-revision: false
-            - name: 'apex-os-odl-nofeature-noha-baremetal-fraser'
-              node-parameters: false
-              current-parameters: false
-              predefined-parameters: |
-                OPNFV_CLEAN=yes
-              kill-phase-on: NEVER
-              abort-all-job: true
-              git-revision: false
             - name: 'apex-os-odl-bgpvpn-ha-baremetal-fraser'
               node-parameters: false
               current-parameters: false
               kill-phase-on: NEVER
               abort-all-job: true
               git-revision: false
-            - name: 'apex-os-ovn-nofeature-noha-baremetal-fraser'
-              node-parameters: false
-              current-parameters: false
-              predefined-parameters: |
-                OPNFV_CLEAN=yes
-              kill-phase-on: NEVER
-              abort-all-job: true
-              git-revision: false
-            - name: 'apex-os-nosdn-fdio-noha-baremetal-fraser'
-              node-parameters: false
-              current-parameters: false
-              predefined-parameters: |
-                OPNFV_CLEAN=yes
-              kill-phase-on: NEVER
-              abort-all-job: true
-              git-revision: false
-            - name: 'apex-os-nosdn-fdio-ha-baremetal-fraser'
-              node-parameters: false
-              current-parameters: false
-              predefined-parameters: |
-                OPNFV_CLEAN=yes
-              kill-phase-on: NEVER
-              abort-all-job: true
-              git-revision: false
-            - name: 'apex-os-nosdn-bar-ha-baremetal-fraser'
-              node-parameters: false
-              current-parameters: false
-              predefined-parameters: |
-                OPNFV_CLEAN=yes
-              kill-phase-on: NEVER
-              abort-all-job: true
-              git-revision: false
-            - name: 'apex-os-nosdn-bar-noha-baremetal-fraser'
-              node-parameters: false
-              current-parameters: false
-              predefined-parameters: |
-                OPNFV_CLEAN=yes
-              kill-phase-on: NEVER
-              abort-all-job: true
-              git-revision: false
-            - name: 'apex-os-nosdn-ovs_dpdk-noha-baremetal-fraser'
-              node-parameters: false
-              current-parameters: false
-              predefined-parameters: |
-                OPNFV_CLEAN=yes
-              kill-phase-on: NEVER
-              abort-all-job: true
-              git-revision: false
-            - name: 'apex-os-nosdn-ovs_dpdk-ha-baremetal-fraser'
-              node-parameters: false
-              current-parameters: false
-              predefined-parameters: |
-                OPNFV_CLEAN=yes
-              kill-phase-on: NEVER
-              abort-all-job: true
-              git-revision: false
-            - name: 'apex-os-odl-sfc-noha-baremetal-fraser'
-              node-parameters: false
-              current-parameters: false
-              predefined-parameters: |
-                OPNFV_CLEAN=yes
-              kill-phase-on: NEVER
-              abort-all-job: true
-              git-revision: false
-            - name: 'apex-os-odl-sfc-ha-baremetal-fraser'
-              node-parameters: false
-              current-parameters: false
-              predefined-parameters: |
-                OPNFV_CLEAN=yes
-              kill-phase-on: NEVER
-              abort-all-job: true
-              git-revision: false
-            - name: 'apex-os-nosdn-calipso-noha-baremetal-fraser'
-              node-parameters: false
-              current-parameters: false
-              predefined-parameters: |
-                OPNFV_CLEAN=yes
-              kill-phase-on: NEVER
-              abort-all-job: true
-              git-revision: false
 
 # danube Builder
 - builder:
index 34594cc..d721200 100644 (file)
@@ -37,7 +37,7 @@
           baremetal-slave: 'apex-baremetal-master'
           verify-scenario: 'os-nosdn-nofeature-ha'
           scenario_stream: 'fraser'
-          disable_daily: true
+          disable_daily: false
           disable_promote: true
       - euphrates: &euphrates
           branch: 'stable/euphrates'
               abort-all-job: true
               git-revision: false
       - shell: |
+          if echo $DEPLOY_SCENARIO | grep queens &> /dev/null; then
+            echo 'REPO=opnfv' > functest_properties
+          else
+            echo 'REPO=ollivier' > functest_properties
+          fi
           features=$(echo $DEPLOY_SCENARIO | sed -r -n 's/os-.+-(.+)-(noha|ha)/\1/p')
           if [ "$features" == 'queens' ]; then
             functest_scenario=$(echo $DEPLOY_SCENARIO | sed -r -n 's/(os-.+?)-queens-(noha|ha)/\1-nofeature-\2/p')
           else
             functest_scenario=$DEPLOY_SCENARIO
           fi
-          echo "DEPLOY_SCENARIO=$functest_scenario" > functest_scenario
+          echo "DEPLOY_SCENARIO=$functest_scenario" >> functest_properties
       - inject:
-          properties-file: functest_scenario
+          properties-file: functest_properties
           override-build-parameters: true
       - multijob:
           name: 'OPNFV Test Suite'
             - 'apex-runner.*'
             - 'apex-daily.*'
             - 'apex-csit-promote.*'
+            - 'odl-netvirt.*'
       - throttle:
           max-per-node: 1
           max-total: 10
     name: 'apex-danube'
     triggers:
       - timed: '0 3 1 1 7'
-
index 3474fdb..ff1c18d 100644 (file)
@@ -9,21 +9,8 @@ master:
   - 'os-odl-queens-ha'
   - 'k8s-nosdn-nofeature-noha'
 fraser:
-  - 'os-nosdn-nofeature-noha'
   - 'os-nosdn-nofeature-ha'
-  - 'os-odl-nofeature-ha'
-  - 'os-odl-nofeature-noha'
   - 'os-odl-bgpvpn-ha'
-  - 'os-ovn-nofeature-noha'
-  - 'os-nosdn-fdio-noha'
-  - 'os-nosdn-fdio-ha'
-  - 'os-nosdn-bar-ha'
-  - 'os-nosdn-bar-noha'
-  - 'os-nosdn-ovs_dpdk-noha'
-  - 'os-nosdn-ovs_dpdk-ha'
-  - 'os-odl-sfc-noha'
-  - 'os-odl-sfc-ha'
-  - 'os-nosdn-calipso-noha'
 euphrates:
   - 'os-nosdn-nofeature-noha'
   - 'os-nosdn-nofeature-ha'
index 140f84b..f803115 100644 (file)
 - trigger:
     name: 'fuel-os-nosdn-nofeature-ha-armband-baremetal-fraser-trigger'
     triggers:
-      - timed: '0 1 * * 2'
+      - timed: ''
 - trigger:
     name: 'fuel-os-nosdn-nofeature-noha-armband-baremetal-fraser-trigger'
     triggers:
 - trigger:
     name: 'fuel-os-odl-nofeature-ha-armband-baremetal-fraser-trigger'
     triggers:
-      - timed: '0 1 * * 5'
+      - timed: ''
 - trigger:
     name: 'fuel-os-ovn-nofeature-ha-armband-baremetal-fraser-trigger'
     triggers:
 - trigger:
     name: 'fuel-os-nosdn-ovs-ha-armband-baremetal-fraser-trigger'
     triggers:
-      - timed: '0 1 * * 6'
+      - timed: ''
 
 # --------------------------------------------------------------
 # Enea Armband CI Virtual Triggers running against master branch
index 6f00163..6add907 100644 (file)
               node-parameters: true
               kill-phase-on: NEVER
               abort-all-job: true
-            - name: 'functest-fuel-armband-virtual-suite-{stream}'
-              current-parameters: false
-              predefined-parameters: |
-                FUNCTEST_MODE=testcase
-                FUNCTEST_SUITE_NAME=vping_ssh
-                # Should be in sync with fuel-deploy.sh default scenario
-                DEPLOY_SCENARIO=$DEPLOY_SCENARIO
-                BRANCH=$BRANCH
-                GERRIT_REFSPEC=$GERRIT_REFSPEC
-                GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
-                GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
-              node-parameters: true
-              kill-phase-on: NEVER
-              abort-all-job: true
 
 - job-template:
     name: 'armband-verify-{phase}-{stream}'
index 59afb89..efcf51f 100644 (file)
@@ -22,6 +22,7 @@
 
     jobs:
       - 'cperf-{installer}-{testsuite}-{stream}'
+      - 'cperf-upload-logs-csit'
 
 ################################
 # job template
     builders:
       - 'cperf-{testsuite}-builder'
 
+- job-template:
+    name: 'cperf-upload-logs-csit'
+
+    concurrent: true
+
+    disabled: false
+
+    parameters:
+      - cperf-parameter:
+          testsuite: 'csit'
+          gs-pathname: '{gs-pathname}'
+          docker-tag: '{docker-tag}'
+          stream: '{stream}'
+
+    # yamllint enable rule:line-length
+    properties:
+      - logrotate-default
+      - throttle:
+          max-per-node: 1
+          max-total: 10
+          option: 'project'
+
+    builders:
+      - 'cperf-upload-logs-csit'
+
 ########################
 # parameter macros
 ########################
                   docker rmi opnfv/cperf:$tag >/dev/null
               done
           fi
+
+- builder:
+    name: cperf-upload-logs-csit
+    builders:
+      - shell: !include-raw: ./cperf-upload-logs-csit.sh
index 3d943e1..c787cfc 100755 (executable)
@@ -114,6 +114,9 @@ robot_cmd="pybot \
   $EXTRA_ROBOT_ARGS \
   -v of_port:6653 "
 
+suites="/home/opnfv/repos/odl_test/csit/suites/openstack/connectivity/l2.robot \
+        /home/opnfv/repos/odl_test/csit/suites/openstack/connectivity/l3.robot"
+
 echo "Robot command set: ${robot_cmd}"
 echo "Running robot..."
 docker run -i --net=host \
@@ -122,7 +125,8 @@ docker run -i --net=host \
   -v ${WORKSPACE}/overcloudrc:/tmp/overcloudrc \
   opnfv/cperf:$DOCKER_TAG \
   /bin/bash -c "source /tmp/overcloudrc; mkdir -p \$HOME/.ssh; cp /tmp/id_rsa \$HOME/.ssh; \
-  $robot_cmd /home/opnfv/repos/odl_test/csit/suites/openstack/connectivity/l2.robot;"
+  cd /home/opnfv/repos/odl_test/ && git pull origin master; \
+  ${robot_cmd} ${suites};"
 
 UPLOAD_LOCATION=artifacts.opnfv.org/cperf/cperf-apex-csit-${ODL_BRANCH}/${BUILD_NUMBER}/
 echo "Uploading robot logs to ${UPLOAD_LOCATION}"
diff --git a/jjb/cperf/cperf-upload-logs-csit.sh b/jjb/cperf/cperf-upload-logs-csit.sh
new file mode 100644 (file)
index 0000000..7bf91df
--- /dev/null
@@ -0,0 +1,10 @@
+#!/usr/bin/env bash
+
+set -o errexit
+set -o nounset
+set -o pipefail
+
+LOGS_LOCATION=/tmp/robot_results
+UPLOAD_LOCATION=artifacts.opnfv.org/cperf/cperf-apex-csit-${ODL_BRANCH}/${BUILD_NUMBER}/
+echo "Uploading robot logs to ${UPLOAD_LOCATION}"
+gsutil -m cp -r -v ${LOGS_LOCATION} gs://${UPLOAD_LOCATION} > gsutil.latest_logs.log
diff --git a/jjb/doctor/doctor-env-presetup.sh b/jjb/doctor/doctor-env-presetup.sh
new file mode 100755 (executable)
index 0000000..61e65c7
--- /dev/null
@@ -0,0 +1,62 @@
+#!/usr/bin/env bash
+set -o errexit
+set -o pipefail
+
+# set vars from env if not provided by user as options
+installer_key_file=${installer_key_file:-$HOME/installer_key_file}
+opnfv_installer=${opnfv_installer:-$HOME/opnfv-installer.sh}
+
+# Fetch INSTALLER_IP for APEX deployments
+if [[ ${INSTALLER_TYPE} == 'apex' ]]; then
+
+    echo "Gathering IP information for Apex installer VM"
+    ssh_options="-o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no"
+    if sudo virsh list | grep undercloud; then
+        echo "Installer VM detected"
+        undercloud_mac=$(sudo virsh domiflist undercloud | grep default | \
+                  grep -Eo "[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+")
+        export INSTALLER_IP=$(/usr/sbin/arp -e | grep ${undercloud_mac} | awk {'print $1'})
+        echo "Installer ip is ${INSTALLER_IP}"
+    else
+        echo "No available installer VM exists and no credentials provided...exiting"
+        exit 1
+    fi
+
+    sudo cp /root/.ssh/id_rsa ${installer_key_file}
+    sudo chown `whoami`:`whoami` ${installer_key_file}
+
+elif [[ ${INSTALLER_TYPE} == 'daisy' ]]; then
+    echo "Gathering IP information for Daisy installer VM"
+    if sudo virsh list | grep daisy; then
+        echo "Installer VM detected"
+
+        bridge_name=$(sudo virsh domiflist daisy | grep vnet | awk '{print $3}')
+        echo "Bridge is $bridge_name"
+
+        installer_mac=$(sudo virsh domiflist daisy | grep vnet | \
+                      grep -Eo "[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+:[0-9a-f]+")
+        export INSTALLER_IP=$(/usr/sbin/arp -e -i $bridge_name | grep ${installer_mac} | head -n 1 | awk {'print $1'})
+
+        echo "Installer ip is ${INSTALLER_IP}"
+    else
+        echo "No available installer VM exists...exiting"
+        exit 1
+    fi
+fi
+
+
+# Checking if destination path is valid
+if [ -d $opnfv_installer ]; then
+    error "Please provide the full destination path for the installer ip file including the filename"
+else
+    # Check if we can create the file (e.g. path is correct)
+    touch $opnfv_installer || error "Cannot create the file specified. Check that the path is correct and run the script again."
+fi
+
+
+# Write the installer info to the file
+echo export INSTALLER_TYPE=${INSTALLER_TYPE} > $opnfv_installer
+echo export INSTALLER_IP=${INSTALLER_IP} >> $opnfv_installer
+if [ -e ${installer_key_file} ]; then
+    echo export SSH_KEY=${installer_key_file} >> $opnfv_installer
+fi
index 0d7b781..051beb8 100644 (file)
@@ -8,23 +8,16 @@
       - master:
           branch: '{stream}'
           gs-pathname: ''
-          docker-tag: 'latest'
           disabled: false
       - fraser: &fraser
           branch: 'stable/{stream}'
           gs-pathname: '/{stream}'
-          docker-tag: 'stable'
           disabled: false
 
-    # feature projects' tests are not triggered by functest
-    # doctor verify Pods need to deploy with these scenario
     installer:
-      - 'apex':
-          scenario: 'os-nosdn-kvm-ha'
-      - 'fuel':
-          scenario: 'os-nosdn-ovs-ha'
-      - 'daisy':
-          scenario: 'os-nosdn-ovs_dpdk-noha'
+      - 'apex'
+      - 'fuel'
+      - 'daisy'
 
     arch:
       - 'x86_64'
       # these would beenabled again once the PoDs are ready
       - installer: 'fuel'
         arch: 'x86_64'
-      - installer: 'daisy'
-        arch: 'x86_64'
 
     jobs:
-      - 'doctor-verify-{inspector}-{stream}'
+      - 'doctor-verify-{stream}'
       - 'doctor-verify-{installer}-{inspector}-{arch}-{stream}'
 
 - job-template:
-    name: 'doctor-verify-{inspector}-{stream}'
+    name: 'doctor-verify-{stream}'
     disabled: '{obj:disabled}'
     project-type: 'multijob'
     parameters:
          # in phase jobs
          echo "Triggering phase jobs!"
       - multijob:
-          name: 'doctor-verify'
+          name: 'doctor-verify-sample'
           execution-type: PARALLEL
           projects:
-            - name: 'doctor-verify-apex-{inspector}-x86_64-{stream}'
+            - name: 'doctor-verify-apex-sample-x86_64-{stream}'
               predefined-parameters: |
                 PROJECT=$PROJECT
                 GERRIT_BRANCH=$GERRIT_BRANCH
                 GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
               kill-phase-on: FAILURE
               git-revision: true
-            - name: 'doctor-verify-fuel-{inspector}-x86_64-{stream}'
+            - name: 'doctor-verify-fuel-sample-x86_64-{stream}'
+              predefined-parameters: |
+                PROJECT=$PROJECT
+                GERRIT_BRANCH=$GERRIT_BRANCH
+                GERRIT_REFSPEC=$GERRIT_REFSPEC
+                GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
+                GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+              kill-phase-on: FAILURE
+              git-revision: true
+            - name: 'doctor-verify-fuel-sample-aarch64-{stream}'
+              predefined-parameters: |
+                GERRIT_BRANCH=$GERRIT_BRANCH
+                GERRIT_REFSPEC=$GERRIT_REFSPEC
+                GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
+                GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+              kill-phase-on: FAILURE
+              git-revision: true
+            - name: 'doctor-verify-daisy-sample-x86_64-{stream}'
               predefined-parameters: |
                 PROJECT=$PROJECT
                 GERRIT_BRANCH=$GERRIT_BRANCH
                 GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
               kill-phase-on: FAILURE
               git-revision: true
-            - name: 'doctor-verify-fuel-{inspector}-aarch64-{stream}'
+      - multijob:
+          name: 'doctor-verify-congress'
+          execution-type: PARALLEL
+          projects:
+            - name: 'doctor-verify-apex-congress-x86_64-{stream}'
               predefined-parameters: |
+                PROJECT=$PROJECT
                 GERRIT_BRANCH=$GERRIT_BRANCH
                 GERRIT_REFSPEC=$GERRIT_REFSPEC
                 GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
                 GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
               kill-phase-on: FAILURE
               git-revision: true
-            - name: 'doctor-verify-daisy-{inspector}-x86_64-{stream}'
+            - name: 'doctor-verify-fuel-congress-x86_64-{stream}'
+              predefined-parameters: |
+                PROJECT=$PROJECT
+                GERRIT_BRANCH=$GERRIT_BRANCH
+                GERRIT_REFSPEC=$GERRIT_REFSPEC
+                GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
+                GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+              kill-phase-on: FAILURE
+              git-revision: true
+            - name: 'doctor-verify-fuel-congress-aarch64-{stream}'
+              predefined-parameters: |
+                GERRIT_BRANCH=$GERRIT_BRANCH
+                GERRIT_REFSPEC=$GERRIT_REFSPEC
+                GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
+                GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+              kill-phase-on: FAILURE
+              git-revision: true
+            - name: 'doctor-verify-daisy-congress-x86_64-{stream}'
               predefined-parameters: |
                 PROJECT=$PROJECT
                 GERRIT_BRANCH=$GERRIT_BRANCH
       - '{installer}-defaults'
       - 'doctor-slave-parameter'
       - 'doctor-parameter':
-          docker-tag: '{docker-tag}'
-          scenario: '{scenario}'
-      - 'doctor-functest-parameter':
-          gs-pathname: '{gs-pathname}'
           inspector: '{inspector}'
     scm:
       - git-scm-gerrit
     name: 'doctor-parameter'
     parameters:
       - string:
-          name: OS_CREDS
-          default: /home/jenkins/openstack.creds
-          description: 'OpenStack credentials'
-      - string:
-          name: DOCKER_TAG
-          default: '{docker-tag}'
-          description: 'Tag to pull docker image'
-      - string:
-          name: CLEAN_DOCKER_IMAGES
-          default: 'false'
-          description: 'Remove downloaded docker images (opnfv/functest:*)'
-      - string:
-          name: DEPLOY_SCENARIO
-          default: '{scenario}'
-          description: 'Scenario to deploy and test'
+          name: INSPECTOR_TYPE
+          default: '{inspector}'
+          description: 'inspector component'
 
-- parameter:
-    name: 'doctor-functest-parameter'
-    parameters:
-      # functest-suite-parameter
-      - string:
-          name: FUNCTEST_MODE
-          default: 'testcase'
-      - string:
-          name: FUNCTEST_SUITE_NAME
-          default: 'doctor-notification'
-      - string:
-          name: TESTCASE_OPTIONS
-          # yamllint disable rule:line-length
-          default: '-e INSPECTOR_TYPE={inspector} -v $WORKSPACE:/home/opnfv/repos/doctor'
-          # yamllint enable rule:line-length
-          description: 'Addtional parameters specific to test case(s)'
-      # functest-parameter
-      - string:
-          name: GS_PATHNAME
-          default: '{gs-pathname}'
-          # yamllint disable rule:line-length
-          description: "Version directory where the opnfv documents will be stored in gs repository"
-          # yamllint enable rule:line-length
-      - string:
-          name: FUNCTEST_REPO_DIR
-          default: "/home/opnfv/repos/functest"
-          description: "Directory where the Functest repository is cloned"
-      - string:
-          name: PUSH_RESULTS_TO_DB
-          default: "true"
-          description: "Push the results of all the tests to the resultDB"
-      - string:
-          name: CI_DEBUG
-          default: 'true'
-          description: "Show debug output information"
 # -------------------------------
 # builder macros
 # -------------------------------
 - builder:
     name: 'doctor-verify-installer-inspector-builders-macro'
     builders:
+      # yamllint disable rule:indentation
       - 'clean-workspace-log'
-      # yamllint disable rule:line-length
+      - shell:
+          !include-raw:
+              - ./doctor-env-presetup.sh
+              - ../../utils/fetch_os_creds.sh
       - shell: |
-          # NOTE: Create symbolic link, so that we can archive file outside
-          #       of $WORKSPACE .
-          # NOTE: We are printing all logs under 'tests/' during test run,
-          #       so this symbolic link should not be in 'tests/'. Otherwise,
-          #       we'll have the same log twice in jenkins console log.
-          ln -sfn $HOME/opnfv/functest/results/{stream} functest_results
-          # NOTE: Get functest script in $WORKSPACE. This functest script is
-          #       needed to perform VM image download in set-functest-env.sh
-          #       from E release cycle.
-          mkdir -p functest/ci
-          wget https://git.opnfv.org/functest/plain/functest/ci/download_images.sh -O functest/ci/download_images.sh
-      - 'functest-suite-builder'
-      - shell: |
-          functest_log="$HOME/opnfv/functest/results/{stream}/$FUNCTEST_SUITE_NAME.log"
-          # NOTE: checking the test result, as the previous job could return
-          #       0 regardless the result of doctor test scenario.
-          grep -e 'doctor test successfully' $functest_log || exit 1
-      # yamllint enable rule:line-length
+          # prepare the env for test
+          source $HOME/opnfv-openrc.sh
+          if [ -f $HOME/os_cacert ]; then
+              export OS_CACERT=$HOME/os_cacert
+          fi
+          source $HOME/opnfv-installer.sh
+
+          # run tox to trigger the test
+          tox -e py34
 
 # -------------------------------
 # publisher macros
     publishers:
       - archive:
           artifacts: 'doctor_tests/*.log'
-      - archive:
-          artifacts: 'functest_results/$FUNCTEST_SUITE_NAME.log'
       - email-jenkins-admins-on-failure
 
 
index c92ebba..ecc75bc 100755 (executable)
@@ -134,10 +134,10 @@ if [[ ! "${SUT_BRANCH}" =~ "danube" && ${INSTALLER_TYPE} == 'fuel' && ${DEPLOY_T
             "sudo salt 'cmp001*' pillar.get _param:openstack_control_address --out text| \
                 cut -f2 -d' '")
     fuel_dbs_ip=$(ssh 2>/dev/null ${fuel_ctl_ssh_options} "${ssh_user}@${INSTALLER_IP}" \
-            "sudo salt 'dbs01*' pillar.get _param:openstack_control_address --out text| \
+            "sudo salt 'dbs01*' pillar.get _param:openstack_database_node01_address --out text| \
                 cut -f2 -d' '")
     fuel_msg_ip=$(ssh 2>/dev/null ${fuel_ctl_ssh_options} "${ssh_user}@${INSTALLER_IP}" \
-            "sudo salt 'msg01*' pillar.get _param:openstack_control_address --out text| \
+            "sudo salt 'msg01*' pillar.get _param:openstack_message_queue_node01_address --out text| \
                 cut -f2 -d' '")
     ipmi_index=$(ssh 2>/dev/null ${fuel_ctl_ssh_options} "${ssh_user}@${INSTALLER_IP}" \
             "sudo salt 'ctl*' network.ip_addrs cidr=${fuel_ctl_ip} --out text | grep ${fuel_ctl_ip} | cut -c 5")
@@ -212,7 +212,7 @@ EOF
     elif [ "$INSTALLER_TYPE" == "fuel" ]; then
         cat << EOF >> ${DOVETAIL_CONFIG}/pod.yaml
 process_info:
-- {testcase_name: dovetail.ha.cinder_api, attack_process: cinder_wsgi}
+- {testcase_name: dovetail.ha.cinder_api, attack_process: cinder-wsgi}
 - {testcase_name: dovetail.ha.rabbitmq, attack_process: rabbitmq-server, attack_host: msg01}
 - {testcase_name: dovetail.ha.neutron_l3_agent, attack_process: neutron-l3-agent, attack_host: cmp01}
 - {testcase_name: dovetail.ha.database, attack_process: mysqld, attack_host: dbs01}
index f48822d..8eb5ab0 100644 (file)
               node-parameters: true
               kill-phase-on: NEVER
               abort-all-job: true
-            - name: 'functest-fuel-virtual-suite-{stream}'
-              current-parameters: false
-              predefined-parameters: |
-                FUNCTEST_MODE=testcase
-                FUNCTEST_SUITE_NAME=vping_ssh
-                DEPLOY_SCENARIO=$DEPLOY_SCENARIO
-                BRANCH=$BRANCH
-                GERRIT_REFSPEC=$GERRIT_REFSPEC
-                GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
-                GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
-              node-parameters: true
-              kill-phase-on: NEVER
-              abort-all-job: true
 
 - job-template:
     name: 'fuel-verify-{phase}-{stream}'