Merge "Make Apex JJB Renderer Importable"
authorTim Rozet <trozet@redhat.com>
Tue, 20 Mar 2018 20:36:56 +0000 (20:36 +0000)
committerGerrit Code Review <gerrit@opnfv.org>
Tue, 20 Mar 2018 20:36:56 +0000 (20:36 +0000)
43 files changed:
jjb/dovetail/dovetail-run.sh
jjb/functest/functest-alpine.sh
jjb/functest/functest-daily-jobs.yml
jjb/functest/functest-k8.sh
jjb/xci/xci-merge-jobs.yml
jjb/xci/xci-promote.sh
jjb/xci/xci-run-functest.sh
jjb/xci/xci-set-scenario.sh
jjb/xci/xci-verify-jobs.yml
releases/euphrates/armband.yaml [new file with mode: 0644]
releases/euphrates/availability.yaml [new file with mode: 0644]
releases/euphrates/bamboo.yaml [new file with mode: 0644]
releases/euphrates/barometer.yaml [new file with mode: 0644]
releases/euphrates/bottlenecks.yaml [new file with mode: 0644]
releases/euphrates/calipso.yaml [new file with mode: 0644]
releases/euphrates/container4nfv.yaml [new file with mode: 0644]
releases/euphrates/daisy.yaml [new file with mode: 0644]
releases/euphrates/doctor.yaml [new file with mode: 0644]
releases/euphrates/domino.yaml [new file with mode: 0644]
releases/euphrates/fds.yaml [new file with mode: 0644]
releases/euphrates/fuel.yaml [new file with mode: 0644]
releases/euphrates/functest.yaml [new file with mode: 0644]
releases/euphrates/ipv6.yaml [new file with mode: 0644]
releases/euphrates/joid.yaml [new file with mode: 0644]
releases/euphrates/kvmfornfv.yaml [new file with mode: 0644]
releases/euphrates/moon.yaml [new file with mode: 0644]
releases/euphrates/nfvbench.yaml [new file with mode: 0644]
releases/euphrates/octopus.yaml [new file with mode: 0644]
releases/euphrates/opnfvdocs.yaml [new file with mode: 0644]
releases/euphrates/orchestra.yaml [new file with mode: 0644]
releases/euphrates/ovn4nfv.yaml [new file with mode: 0644]
releases/euphrates/ovno.yaml [new file with mode: 0644]
releases/euphrates/parser.yaml [new file with mode: 0644]
releases/euphrates/pharos.yaml [new file with mode: 0644]
releases/euphrates/promise.yaml [new file with mode: 0644]
releases/euphrates/qtip.yaml [new file with mode: 0644]
releases/euphrates/samplevnf.yaml [new file with mode: 0644]
releases/euphrates/sdnvpn.yaml [new file with mode: 0644]
releases/euphrates/sfc.yaml [new file with mode: 0644]
releases/euphrates/snaps.yaml [new file with mode: 0644]
releases/euphrates/storperf.yaml [new file with mode: 0644]
releases/euphrates/vswitchperf.yaml [new file with mode: 0644]
releases/euphrates/yardstick.yaml [new file with mode: 0644]

index a5a95f4..b8c4324 100755 (executable)
@@ -154,6 +154,13 @@ if [[ ! -f ${DOVETAIL_CONFIG}/pod.yaml ]]; then
 fi
 
 if [ -f ${DOVETAIL_CONFIG}/pod.yaml ]; then
+    echo "Adapt process info for $INSTALLER_TYPE ..."
+    attack_process='rabbitmq'
+    cat << EOF >> ${DOVETAIL_CONFIG}/pod.yaml
+process_info:
+- {testcase_name: dovetail.ha.tc010, attack_process: ${attack_process}}
+
+EOF
     echo "file ${DOVETAIL_CONFIG}/pod.yaml:"
     cat ${DOVETAIL_CONFIG}/pod.yaml
 else
index 788a4cd..bdd79c4 100755 (executable)
@@ -161,7 +161,19 @@ if [ "${INSTALLER_TYPE}" == 'fuel' ]; then
     envs="${envs} -e POD_ARCH=${COMPUTE_ARCH}"
 fi
 
-volumes="${images_vol} ${results_vol} ${sshkey_vol} ${rc_file_vol} ${cacert_file_vol}"
+
+if [[ ${INSTALLER_TYPE} == 'compass' && ${DEPLOY_SCENARIO} =~ 'odl.*sfc' ]]; then
+    ssh_key="/tmp/id_rsa"
+    user_config="/tmp/openstack_user_config.yml"
+    docker cp compass-tasks:/root/.ssh/id_rsa $ssh_key
+    docker cp compass-tasks:/etc/openstack_deploy/openstack_user_config.yml $user_config
+    sshkey_vol="-v ${ssh_key}:/root/.ssh/id_rsa"
+    userconfig_vol="-v ${user_config}:${user_config}"
+    envs="${envs} -e EXTERNAL_NETWORK=${EXTERNAL_NETWORK}"
+fi
+
+
+volumes="${images_vol} ${results_vol} ${sshkey_vol} ${userconfig_vol} ${rc_file_vol} ${cacert_file_vol}"
 
 set +e
 
index a58e0bf..8ffbe9e 100644 (file)
       - 'daily':
           job-timeout: 360
       - 'arm-daily':
-          job-timeout: 360
+          job-timeout: 480
 
     jobs:
       - 'functest-{installer}-{pod}-{testsuite}-{stream}'
index 115ff42..49d7163 100755 (executable)
@@ -19,7 +19,7 @@ if [[ ${INSTALLER_TYPE} == 'compass' ]]; then
     KUBE_MASTER_IP=$(echo $KUBE_MASTER_URL|awk -F'https://|:[0-9]+' '$0=$2')
     echo "export KUBE_MASTER_IP=$KUBE_MASTER_IP" >> $rc_file
 elif [[ ${INSTALLER_TYPE} == 'joid' && ${BRANCH} == 'master' ]]; then
-    admin_conf_file_vol="-v ${HOME}/joid_config/config:/root/joid_config/config"
+    admin_conf_file_vol="-v ${HOME}/joid_config/config:/root/.kube/config"
     rc_file=${HOME}/joid_config/k8config
 else
     echo "Not supported by other installers yet"
@@ -35,11 +35,6 @@ results_vol="-v ${dir_result}:${FUNCTEST_DIR}/results"
 
 volumes="${rc_file_vol} ${results_vol} ${admin_conf_file_vol}"
 
-# Set iptables rule to allow forwarding return traffic for container
-if ! sudo iptables -C FORWARD -j RETURN 2> ${redirect} || ! sudo iptables -L FORWARD | awk 'NR==3' | grep RETURN 2> ${redirect}; then
-    sudo iptables -I FORWARD -j RETURN
-fi
-
 envs="-e INSTALLER_TYPE=${INSTALLER_TYPE} \
     -e NODE_NAME=${NODE_NAME} -e DEPLOY_SCENARIO=${DEPLOY_SCENARIO} \
     -e BUILD_TAG=${BUILD_TAG} -e DEPLOY_TYPE=${DEPLOY_TYPE}"
@@ -52,10 +47,13 @@ FUNCTEST_IMAGE=opnfv/functest-kubernetes:${DOCKER_TAG}
 echo "Pulling Docker image ${FUNCTEST_IMAGE} ..."
 docker pull ${FUNCTEST_IMAGE}>/dev/null
 cmd_opt="run_tests -r -t all"
-cmd="docker run --rm --privileged=true ${envs} ${volumes} ${FUNCTEST_IMAGE} /bin/bash -c '${cmd_opt}'"
+cmd="docker run --rm ${envs} ${volumes} ${FUNCTEST_IMAGE} /bin/bash -c '${cmd_opt}'"
 echo "Running Functest k8s test cases, CMD: ${cmd}"
 eval ${cmd}
 ret_value=$?
+
+ret_val_file="${HOME}/opnfv/functest/results/${BRANCH##*/}/return_value"
+echo 0 > ${ret_val_file}
 if [ ${ret_value} != 0 ]; then
   echo ${ret_value} > ${ret_val_file}
 fi
index 8a3a7cf..df2d38e 100644 (file)
       - opensuse:
           disabled: false
     # -------------------------------
-    # scenarios
-    # -------------------------------
-    scenario:
-      - 'os-odl-sfc':
-          project: sfc
-    # -------------------------------
-    # type
-    # -------------------------------
-    type:
-      - virtual
-    # -------------------------------
     # postmerge promotion phases
     # -------------------------------
     phase:
     # jobs
     # -------------------------------
     jobs:
-      - 'xci-{scenario}-{type}-merge-{stream}'
-      - 'xci-{scenario}-{type}-promote-merge-{stream}'
-      - 'xci-merge-{distro}-{type}-{stream}'
-      - 'xci-merge-{distro}-{phase}-{type}-{stream}'
+      - 'xci-merge-virtual-{stream}'
+      - 'xci-merge-promote-virtual-{stream}'
+      - 'xci-merge-{distro}-virtual-{stream}'
+      - 'xci-merge-{distro}-{phase}-virtual-{stream}'
 # -------------------------------
 # job templates
 # -------------------------------
 - job-template:
-    name: 'xci-{scenario}-{type}-merge-{stream}'
+    name: 'xci-merge-virtual-{stream}'
 
     project-type: multijob
 
-    disabled: '{obj:disabled}'
+    disabled: false
 
     concurrent: false
 
                 comment-contains-value: 'remerge'
           projects:
             - project-compare-type: 'ANT'
-              project-pattern: '{obj:project}'
+              project-pattern: 'releng-xci'
+              branches:
+                - branch-compare-type: 'ANT'
+                  branch-pattern: '**/{branch}'
+              disable-strict-forbidden-file-verification: 'false'
+              forbidden-file-paths:
+                - compare-type: ANT
+                  pattern: 'xci/scripts/vm/**'
+                - compare-type: ANT
+                  pattern: 'docs/**'
+                - compare-type: ANT
+                  pattern: 'prototypes/**'
+                - compare-type: ANT
+                  pattern: 'upstream/**'
+            - project-compare-type: 'REG_EXP'
+              project-pattern: 'sfc|sdnvpn'
               branches:
                 - branch-compare-type: 'ANT'
                   branch-pattern: '**/{branch}'
       - label:
           name: SLAVE_LABEL
           default: 'xci-virtual'
+      - string:
+          name: CI_LOOP
+          default: 'merge'
+      - string:
+          name: FUNCTEST_MODE
+          default: 'tier'
+      - string:
+          name: FUNCTEST_SUITE_NAME
+          default: 'healthcheck'
       - string:
           name: DISTRO
           default: 'all'
           description: 'Git URL to use on this Jenkins Slave'
 
     builders:
-      - description-setter:
-          description: "Node: $NODE_NAME"
       - 'xci-merge-set-scenario-macro'
+      - inject:
+          properties-file: "/tmp/$GERRIT_CHANGE_NUMBER/$DISTRO/scenario.properties"
+      - description-setter:
+          description: "Scenario: $DEPLOY_SCENARIO | Node: $NODE_NAME"
       - multijob:
           name: deploy and test
           condition: SUCCESSFUL
           projects:
-            - name: 'xci-merge-opensuse-{type}-{stream}'
+            - name: 'xci-merge-opensuse-virtual-{stream}'
               current-parameters: false
               predefined-parameters: |
                 DISTRO=opensuse
                 GERRIT_REFSPEC=$GERRIT_REFSPEC
                 GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
                 GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+                CI_LOOP=$CI_LOOP
+                FUNCTEST_MODE=$FUNCTEST_MODE
+                FUNCTEST_SUITE_NAME=$FUNCTEST_SUITE_NAME
               node-parameters: false
               kill-phase-on: FAILURE
               abort-all-job: true
-            - name: 'xci-merge-ubuntu-{type}-{stream}'
+            - name: 'xci-merge-ubuntu-virtual-{stream}'
               current-parameters: false
               predefined-parameters: |
                 DISTRO=ubuntu
                 GERRIT_REFSPEC=$GERRIT_REFSPEC
                 GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
                 GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+                CI_LOOP=$CI_LOOP
+                FUNCTEST_MODE=$FUNCTEST_MODE
+                FUNCTEST_SUITE_NAME=$FUNCTEST_SUITE_NAME
               node-parameters: false
               kill-phase-on: FAILURE
               abort-all-job: true
-            - name: 'xci-merge-centos-{type}-{stream}'
+            - name: 'xci-merge-centos-virtual-{stream}'
               current-parameters: false
               predefined-parameters: |
                 DISTRO=centos
                 GERRIT_REFSPEC=$GERRIT_REFSPEC
                 GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
                 GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+                CI_LOOP=$CI_LOOP
+                FUNCTEST_MODE=$FUNCTEST_MODE
+                FUNCTEST_SUITE_NAME=$FUNCTEST_SUITE_NAME
               node-parameters: false
-              kill-phase-on: FAILURE
-              abort-all-job: true
+              kill-phase-on: NEVER
+              abort-all-job: false
       - inject:
           properties-file: "/tmp/$GERRIT_CHANGE_NUMBER/$DISTRO/scenario.properties"
       - multijob:
           name: promote
           condition: SUCCESSFUL
           projects:
-            - name: 'xci-{scenario}-{type}-promote-merge-{stream}'
+            - name: 'xci-merge-promote-virtual-{stream}'
               current-parameters: true
               predefined-parameters: |
                 GERRIT_PROJECT=$GERRIT_PROJECT
                 GERRIT_REFSPEC=$GERRIT_REFSPEC
                 GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
                 GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+                CI_LOOP=$CI_LOOP
+                FUNCTEST_MODE=$FUNCTEST_MODE
+                FUNCTEST_SUITE_NAME=$FUNCTEST_SUITE_NAME
               node-parameters: true
               kill-phase-on: NEVER
               abort-all-job: true
 
 - job-template:
-    name: 'xci-merge-{distro}-{type}-{stream}'
+    name: 'xci-merge-{distro}-virtual-{stream}'
 
     project-type: multijob
 
-    disabled: '{obj:disabled}'
+    disabled: false
 
-    concurrent: true
+    concurrent: false
 
     properties:
       - logrotate-default
       - label:
           name: SLAVE_LABEL
           default: 'xci-virtual'
+      - string:
+          name: CI_LOOP
+          default: 'merge'
+      - string:
+          name: FUNCTEST_MODE
+          default: 'tier'
+      - string:
+          name: FUNCTEST_SUITE_NAME
+          default: 'healthcheck'
       - string:
           name: DISTRO
           default: '{distro}'
           name: deploy
           condition: SUCCESSFUL
           projects:
-            - name: 'xci-merge-{distro}-deploy-{type}-{stream}'
+            - name: 'xci-merge-{distro}-deploy-virtual-{stream}'
               current-parameters: true
               predefined-parameters: |
                 DISTRO={distro}
           name: healthcheck
           condition: SUCCESSFUL
           projects:
-            - name: 'xci-merge-{distro}-healthcheck-{type}-{stream}'
+            - name: 'xci-merge-{distro}-healthcheck-virtual-{stream}'
               current-parameters: true
               predefined-parameters: |
                 DISTRO={distro}
                 GERRIT_REFSPEC=$GERRIT_REFSPEC
                 GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
                 GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
-                FUNCTEST_MODE=tier
-                FUNCTEST_TIER=healthcheck
+                CI_LOOP=$CI_LOOP
+                FUNCTEST_MODE=$FUNCTEST_MODE
+                FUNCTEST_SUITE_NAME=$FUNCTEST_SUITE_NAME
               node-parameters: true
               kill-phase-on: NEVER
               abort-all-job: true
                 !include-raw: ./xci-cleanup.sh
 
 - job-template:
-    name: 'xci-merge-{distro}-{phase}-{type}-{stream}'
+    name: 'xci-merge-{distro}-{phase}-virtual-{stream}'
 
     disabled: false
 
-    concurrent: true
+    concurrent: false
 
     properties:
       - logrotate-default
       - string:
           name: DISTRO
           default: 'ubuntu'
+      - string:
+          name: CI_LOOP
+          default: 'merge'
       - string:
           name: FUNCTEST_MODE
           default: 'tier'
       - 'xci-merge-{phase}-macro'
 
 - job-template:
-    name: 'xci-{scenario}-{type}-promote-merge-{stream}'
+    name: 'xci-merge-promote-virtual-{stream}'
 
     disabled: false
 
       - string:
           name: PROJECT
           default: $GERRIT_PROJECT
+      - string:
+          name: CI_LOOP
+          default: 'merge'
+      - string:
+          name: FUNCTEST_MODE
+          default: 'tier'
+      - string:
+          name: FUNCTEST_SUITE_NAME
+          default: 'healthcheck'
       - string:
           name: DISTRO
           default: 'all'
       - string:
           name: OPNFV_RELENG_DEV_PATH
           default: $WORKSPACE/
+      - string:
+          name: LOCAL_PROMOTION_METADATA_FILE
+          default: "/tmp/$GERRIT_CHANGE_NUMBER/$DISTRO/scenario.properties"
+      - string:
+          name: REMOTE_PROMOTION_METADATA_FILE
+          default: "gs://artifacts.opnfv.org/xci/pipeline/merge/$DEPLOY_SCENARIO.properties"
       - string:
           name: GIT_BASE
           default: https://gerrit.opnfv.org/gerrit/$PROJECT
 - builder:
     name: 'xci-merge-deploy-macro'
     builders:
-      - shell: |
-          #!/bin/bash
-          echo "Hello World"
+      - shell:
+          !include-raw: ./xci-start-new-vm.sh
+
+      - shell:
+          !include-raw: ./xci-start-deployment.sh
 
 - builder:
     name: 'xci-merge-healthcheck-macro'
     builders:
-      - shell: |
-          #!/bin/bash
-          echo "Hello World"
+      - shell:
+          !include-raw: ./xci-run-functest.sh
 
 - builder:
     name: 'xci-merge-promote-macro'
     builders:
-      - shell: |
-          #!/bin/bash
-          echo "Hello World"
+      - shell:
+          !include-raw: ./xci-promote.sh
index 62818ab..fb7e0e6 100755 (executable)
@@ -23,11 +23,24 @@ if [[ "$GERRIT_TOPIC" =~ skip-verify|skip-deployment ]]; then
     exit 0
 fi
 
-# skip the deployment if the scenario is not supported on this distro
-OPNFV_SCENARIO_REQUIREMENTS=$WORKSPACE/xci/opnfv-scenario-requirements.yml
-if ! sed -n "/^- scenario: $DEPLOY_SCENARIO$/,/^$/p" $OPNFV_SCENARIO_REQUIREMENTS | grep -q $DISTRO; then
-    echo "# SKIPPED: Scenario $DEPLOY_SCENARIO is NOT supported on $DISTRO"
-    exit 0
+# fail if promotion metadata file doesn't exist
+if [ ! -f $LOCAL_PROMOTION_METADATA_FILE ]; then
+    echo "Unable to find promotion metadata file $LOCAL_PROMOTION_METADATA_FILE"
+    echo "Skipping promotion!"
+    exit 1
 fi
 
-echo "Hello World!"
+# upload promotion metadata file to OPNFV artifact repo
+echo "Storing promotion metadata as $REMOTE_PROMOTION_METADATA_FILE"
+gsutil cp $LOCAL_PROMOTION_METADATA_FILE $REMOTE_PROMOTION_METADATA_FILE > /dev/null 2>&1
+
+# update the file metadata on gs to prevent the use of cached version of the file
+gsutil -m setmeta -r -h "Cache-Control:private, max-age=0, no-transform" \
+    $REMOTE_PROMOTION_METADATA_FILE > /dev/null 2>&1
+
+# log the metadata to console
+echo "Stored the metadata for $DEPLOY_SCENARIO"
+echo "---------------------------------------------------------------------------------"
+gsutil cat $REMOTE_PROMOTION_METADATA_FILE
+echo "---------------------------------------------------------------------------------"
+echo "Scenario $DEPLOY_SCENARIO has successfully been promoted!"
index 60b48cf..2e34363 100755 (executable)
@@ -7,9 +7,7 @@
 # which accompanies this distribution, and is available at
 # http://www.apache.org/licenses/LICENSE-2.0
 ##############################################################################
-set -o errexit
 set -o nounset
-set -o pipefail
 
 #----------------------------------------------------------------------
 # This script is used by CI and executed by Jenkins jobs.
@@ -58,3 +56,8 @@ echo "Functest log"
 echo "---------------------------------------------------------------------------------"
 ssh -F $HOME/.ssh/${DISTRO}-xci-vm-config ${DISTRO}_xci_vm_opnfv "cat /root/results/functest.log"
 echo "---------------------------------------------------------------------------------"
+# check the log to see if we have any error
+if ssh -F $HOME/.ssh/${DISTRO}-xci-vm-config ${DISTRO}_xci_vm_opnfv "grep -q 'FAIL' /root/results/functest.log"; then
+    echo "Error: Functest failed!"
+    exit 1
+fi
index c602957..c3012cd 100755 (executable)
@@ -42,20 +42,22 @@ set -o pipefail
 function override_generic_scenario() {
     echo "Processing $GERRIT_PROJECT patchset $GERRIT_REFSPEC"
 
+    # ensure the metadata we record is consistent for all types of patches including skipped ones
+    # extract releng-xci sha
+    XCI_SHA=$(cd $WORKSPACE && git rev-parse HEAD)
+
+    # extract scenario sha which is same as releng-xci sha for generic scenarios
+    SCENARIO_SHA=$XCI_SHA
+
     # process topic branch names
-    if [[ "$GERRIT_TOPIC" =~ skip-verify|skip-deployment ]]; then
-        # skip the real verification
-        echo "Skipping verify!"
-        echo "INSTALLER_TYPE=osa" > $WORK_DIRECTORY/scenario.properties
-        echo "DEPLOY_SCENARIO=os-nosdn-nofeature" >> $WORK_DIRECTORY/scenario.properties
-        exit 0
-    elif [[ "$GERRIT_TOPIC" =~ 'force-verify' ]]; then
-        # Run the deployment with default installer and scenario when multiple things change
-        # and we want to force that.
-        echo "Recording the installer 'osa' and scenario 'os-nosdn-nofeature' for downstream jobs"
-        echo "Forcing CI verification of default scenario and installer!"
+    if [[ "$GERRIT_TOPIC" =~ skip-verify|skip-deployment|force-verify ]]; then
+        [[ "$GERRIT_TOPIC" =~ force-verify ]] && echo "Forcing CI verification using default scenario and installer!"
+        [[ "$GERRIT_TOPIC" =~ skip-verify|skip-deployment ]] && echo "Skipping verification!"
         echo "INSTALLER_TYPE=osa" > $WORK_DIRECTORY/scenario.properties
         echo "DEPLOY_SCENARIO=os-nosdn-nofeature" >> $WORK_DIRECTORY/scenario.properties
+        echo "XCI_SHA=$XCI_SHA" >> $WORK_DIRECTORY/scenario.properties
+        echo "SCENARIO_SHA=$SCENARIO_SHA" >> $WORK_DIRECTORY/scenario.properties
+        echo "PROJECT_NAME=$GERRIT_PROJECT" >> $WORK_DIRECTORY/scenario.properties
         exit 0
     fi
 
@@ -70,6 +72,9 @@ function override_generic_scenario() {
             echo "Recording the installer '$INSTALLER_TYPE' and scenario '$DEPLOY_SCENARIO' for downstream jobs"
             echo "INSTALLER_TYPE=$INSTALLER_TYPE" > $WORK_DIRECTORY/scenario.properties
             echo "DEPLOY_SCENARIO=$DEPLOY_SCENARIO" >> $WORK_DIRECTORY/scenario.properties
+            echo "XCI_SHA=$XCI_SHA" >> $WORK_DIRECTORY/scenario.properties
+            echo "SCENARIO_SHA=$SCENARIO_SHA" >> $WORK_DIRECTORY/scenario.properties
+            echo "PROJECT_NAME=$GERRIT_PROJECT" >> $WORK_DIRECTORY/scenario.properties
             exit 0
         fi
     else
@@ -110,10 +115,10 @@ function determine_generic_scenario() {
     done
 
     # extract releng-xci sha
-    RELENG_XCI_SHA=$(cd $WORKSPACE && git rev-parse HEAD)
+    XCI_SHA=$(cd $WORKSPACE && git rev-parse HEAD)
 
     # extract scenario sha which is same as releng-xci sha for generic scenarios
-    SCENARIO_SHA=$RELENG_XCI_SHA
+    SCENARIO_SHA=$XCI_SHA
 }
 
 # This function determines the impacted external scenario by processing the Gerrit
@@ -142,7 +147,7 @@ function determine_external_scenario() {
     DEPLOY_SCENARIO+=$(git diff HEAD^..HEAD --name-only | grep scenarios | awk -F '[/|/]' '{print $2}' | uniq)
 
     # extract releng-xci sha
-    RELENG_XCI_SHA=$(cd $WORKSPACE && git rev-parse HEAD)
+    XCI_SHA=$(cd $WORKSPACE && git rev-parse HEAD)
 
     # extract scenario sha
     SCENARIO_SHA=$(cd $WORK_DIRECTORY/$GERRIT_PROJECT && git rev-parse HEAD)
@@ -194,8 +199,9 @@ esac
 echo "Recording the installer '$INSTALLER_TYPE' and scenario '${DEPLOY_SCENARIO[0]}' and SHAs for downstream jobs"
 echo "INSTALLER_TYPE=$INSTALLER_TYPE" > $WORK_DIRECTORY/scenario.properties
 echo "DEPLOY_SCENARIO=$DEPLOY_SCENARIO" >> $WORK_DIRECTORY/scenario.properties
-echo "RELENG_XCI_SHA=$RELENG_XCI_SHA" >> $WORK_DIRECTORY/scenario.properties
+echo "XCI_SHA=$XCI_SHA" >> $WORK_DIRECTORY/scenario.properties
 echo "SCENARIO_SHA=$SCENARIO_SHA" >> $WORK_DIRECTORY/scenario.properties
+echo "PROJECT_NAME=$GERRIT_PROJECT" >> $WORK_DIRECTORY/scenario.properties
 
 # skip scenario support check if the job is promotion job
 if [[ "$JOB_NAME" =~ (os|k8) ]]; then
index d78dc82..e5c1a93 100644 (file)
       - string:
           name: CLEAN_DIB_IMAGES
           default: 'true'
+      - string:
+          name: CI_LOOP
+          default: 'verify'
+      - string:
+          name: FUNCTEST_MODE
+          default: 'tier'
+      - string:
+          name: FUNCTEST_SUITE_NAME
+          default: 'healthcheck'
       - string:
           name: GIT_BASE
           default: https://gerrit.opnfv.org/gerrit/$PROJECT
                 GERRIT_REFSPEC=$GERRIT_REFSPEC
                 GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
                 GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
+                CI_LOOP=$CI_LOOP
               node-parameters: true
               kill-phase-on: FAILURE
               abort-all-job: true
                 GERRIT_REFSPEC=$GERRIT_REFSPEC
                 GERRIT_CHANGE_NUMBER=$GERRIT_CHANGE_NUMBER
                 GERRIT_CHANGE_COMMIT_MESSAGE=$GERRIT_CHANGE_COMMIT_MESSAGE
-                FUNCTEST_MODE=tier
-                FUNCTEST_TIER=healthcheck
+                CI_LOOP=$CI_LOOP
+                FUNCTEST_MODE=$FUNCTEST_MODE
+                FUNCTEST_SUITE_NAME=$FUNCTEST_SUITE_NAME
               node-parameters: true
               kill-phase-on: NEVER
               abort-all-job: true
       - string:
           name: DISTRO
           default: 'ubuntu'
+      - string:
+          name: CI_LOOP
+          default: 'verify'
       - string:
           name: FUNCTEST_MODE
           default: 'tier'
diff --git a/releases/euphrates/armband.yaml b/releases/euphrates/armband.yaml
new file mode 100644 (file)
index 0000000..c96b1a3
--- /dev/null
@@ -0,0 +1,9 @@
+---
+project: armband
+project-type: installer
+release-model: stable
+
+branches:
+  - name: stable/euphrates
+    location:
+      armband: 26f7f4fffa50452fd6e5cb5c2afbae63449afc00
diff --git a/releases/euphrates/availability.yaml b/releases/euphrates/availability.yaml
new file mode 100644 (file)
index 0000000..79f448e
--- /dev/null
@@ -0,0 +1,9 @@
+---
+project: availability
+project-type: feature
+release-model: stable
+
+branches:
+  - name: stable/euphrates
+    location:
+      availability: 374fe9ba9a1fc9c10eb6fa44a25b177f1e9ad96c
diff --git a/releases/euphrates/bamboo.yaml b/releases/euphrates/bamboo.yaml
new file mode 100644 (file)
index 0000000..bbda8b8
--- /dev/null
@@ -0,0 +1,9 @@
+---
+project: bamboo
+project-type: tools
+release-model: stable
+
+branches:
+  - name: stable/euphrates
+    location:
+      bamboo: 37ed3fde974e656893edbfcee2ad5f0c1b1e2011
diff --git a/releases/euphrates/barometer.yaml b/releases/euphrates/barometer.yaml
new file mode 100644 (file)
index 0000000..ac1894e
--- /dev/null
@@ -0,0 +1,9 @@
+---
+project: barometer
+project-type: feature
+release-model: stable
+
+branches:
+  - name: stable/euphrates
+    location:
+      barometer: cb183a3dbe6c1bf0955a0260292709020d2ef338
diff --git a/releases/euphrates/bottlenecks.yaml b/releases/euphrates/bottlenecks.yaml
new file mode 100644 (file)
index 0000000..7c6725a
--- /dev/null
@@ -0,0 +1,9 @@
+---
+project: bottlenecks
+project-type: testing
+release-model: stable
+
+branches:
+  - name: stable/euphrates
+    location:
+      bottlenecks: 0cd98516d581bc661772473be92f7e4d5a26036d
diff --git a/releases/euphrates/calipso.yaml b/releases/euphrates/calipso.yaml
new file mode 100644 (file)
index 0000000..ebccd60
--- /dev/null
@@ -0,0 +1,9 @@
+---
+project: calipso
+project-type: tools
+release-model: stable
+
+branches:
+  - name: stable/euphrates
+    location:
+      calipso: c8440f4158805fed1c49d1f06cd71f324eac26a2
diff --git a/releases/euphrates/container4nfv.yaml b/releases/euphrates/container4nfv.yaml
new file mode 100644 (file)
index 0000000..ec5dc8e
--- /dev/null
@@ -0,0 +1,9 @@
+---
+project: container4nfv
+project-type: feature
+release-model: stable
+
+branches:
+  - name: stable/euphrates
+    location:
+      container4nfv: dbd4804f6353c5ba49af784502654991520e02e6
diff --git a/releases/euphrates/daisy.yaml b/releases/euphrates/daisy.yaml
new file mode 100644 (file)
index 0000000..4f3cb15
--- /dev/null
@@ -0,0 +1,9 @@
+---
+project: daisy
+project-type: installer
+release-model: stable
+
+branches:
+  - name: stable/euphrates
+    location:
+      daisy: ef7ce0b8c457cf9831d9556572ab13d7d4c660f6
diff --git a/releases/euphrates/doctor.yaml b/releases/euphrates/doctor.yaml
new file mode 100644 (file)
index 0000000..6f44997
--- /dev/null
@@ -0,0 +1,9 @@
+---
+project: doctor
+project-type: feature
+release-model: stable
+
+branches:
+  - name: stable/euphrates
+    location:
+      doctor: 06980156b3eed6a6e456d3105c70b68386c1dfb7
diff --git a/releases/euphrates/domino.yaml b/releases/euphrates/domino.yaml
new file mode 100644 (file)
index 0000000..52bc01c
--- /dev/null
@@ -0,0 +1,9 @@
+---
+project: domino
+project-type: feature
+release-model: stable
+
+branches:
+  - name: stable/euphrates
+    location:
+      domino: 5aca24e307f2eb11026a086fbe3db6f0cbeb6699
diff --git a/releases/euphrates/fds.yaml b/releases/euphrates/fds.yaml
new file mode 100644 (file)
index 0000000..4377bf9
--- /dev/null
@@ -0,0 +1,9 @@
+---
+project: fds
+project-type: feature
+release-model: stable
+
+branches:
+  - name: stable/euphrates
+    location:
+      fds: 5eed588472406181f8182731e03eb09e2c20f588
diff --git a/releases/euphrates/fuel.yaml b/releases/euphrates/fuel.yaml
new file mode 100644 (file)
index 0000000..91d2304
--- /dev/null
@@ -0,0 +1,9 @@
+---
+project: fuel
+project-type: installer
+release-model: stable
+
+branches:
+  - name: stable/euphrates
+    location:
+      fuel: fe9be64738ff1a1091e7df5b04b391fb15d6abc0
diff --git a/releases/euphrates/functest.yaml b/releases/euphrates/functest.yaml
new file mode 100644 (file)
index 0000000..f793771
--- /dev/null
@@ -0,0 +1,9 @@
+---
+project: functest
+project-type: testing
+release-model: stable
+
+branches:
+  - name: stable/euphrates
+    location:
+      functest: e556a792b6b0c7275c20c779688f4ffc383b7f2a
diff --git a/releases/euphrates/ipv6.yaml b/releases/euphrates/ipv6.yaml
new file mode 100644 (file)
index 0000000..a0b4cbf
--- /dev/null
@@ -0,0 +1,9 @@
+---
+project: ipv6
+project-type: feature
+release-model: stable
+
+branches:
+  - name: stable/euphrates
+    location:
+      ipv6: 79ddbacd3ee05d8605ebd103042ca9502edb626f
diff --git a/releases/euphrates/joid.yaml b/releases/euphrates/joid.yaml
new file mode 100644 (file)
index 0000000..3cbb87d
--- /dev/null
@@ -0,0 +1,9 @@
+---
+project: joid
+project-type: installer
+release-model: stable
+
+branches:
+  - name: stable/euphrates
+    location:
+      joid: ba3766e175571756f690b24448cb5dfae934ad80
diff --git a/releases/euphrates/kvmfornfv.yaml b/releases/euphrates/kvmfornfv.yaml
new file mode 100644 (file)
index 0000000..7e541c4
--- /dev/null
@@ -0,0 +1,9 @@
+---
+project: kvmfornfv
+project-type: feature
+release-model: stable
+
+branches:
+  - name: stable/euphrates
+    location:
+      kvmfornfv: 3a36c490d63e834ee9454553a14995be839118e3
diff --git a/releases/euphrates/moon.yaml b/releases/euphrates/moon.yaml
new file mode 100644 (file)
index 0000000..4f34046
--- /dev/null
@@ -0,0 +1,9 @@
+---
+project: moon
+project-type: feature
+release-model: stable
+
+branches:
+  - name: stable/euphrates
+    location:
+      moon: 2c380003fa911fdfad85d2c7164b95160eb54963
diff --git a/releases/euphrates/nfvbench.yaml b/releases/euphrates/nfvbench.yaml
new file mode 100644 (file)
index 0000000..f51e876
--- /dev/null
@@ -0,0 +1,9 @@
+---
+project: nfvbench
+project-type: tools
+release-model: stable
+
+branches:
+  - name: stable/euphrates
+    location:
+      nfvbench: cf9c95ccda2f5afbdf79c7debe5fcd88c05eaa6a
diff --git a/releases/euphrates/octopus.yaml b/releases/euphrates/octopus.yaml
new file mode 100644 (file)
index 0000000..f4a698d
--- /dev/null
@@ -0,0 +1,9 @@
+---
+project: octopus
+project-type: infra
+release-model: stable
+
+branches:
+  - name: stable/euphrates
+    location:
+      octopus: 1c1b92913c93cfddb9fee16bc9c15b1873fc4e04
diff --git a/releases/euphrates/opnfvdocs.yaml b/releases/euphrates/opnfvdocs.yaml
new file mode 100644 (file)
index 0000000..0ea0796
--- /dev/null
@@ -0,0 +1,9 @@
+---
+project: opnfvdocs
+project-type: infra
+release-model: stable
+
+branches:
+  - name: stable/euphrates
+    location:
+      opnfvdocs: 18d0ebca65b68e56497c08cc489e4ecc3c649fa9
diff --git a/releases/euphrates/orchestra.yaml b/releases/euphrates/orchestra.yaml
new file mode 100644 (file)
index 0000000..b97361e
--- /dev/null
@@ -0,0 +1,9 @@
+---
+project: orchestra
+project-type: feature
+release-model: stable
+
+branches:
+  - name: stable/euphrates
+    location:
+      orchestra: 1f0d8ed7261f1b202476680b2e3fc2d41b399cc9
diff --git a/releases/euphrates/ovn4nfv.yaml b/releases/euphrates/ovn4nfv.yaml
new file mode 100644 (file)
index 0000000..ba60520
--- /dev/null
@@ -0,0 +1,9 @@
+---
+project: ovn4nfv
+project-type: feature
+release-model: stable
+
+branches:
+  - name: stable/euphrates
+    location:
+      ovn4nfv: 2c6027fb46d1a55f767cc2882d946c794ca5843c
diff --git a/releases/euphrates/ovno.yaml b/releases/euphrates/ovno.yaml
new file mode 100644 (file)
index 0000000..39ca54c
--- /dev/null
@@ -0,0 +1,9 @@
+---
+project: ovno
+project-type: feature
+release-model: stable
+
+branches:
+  - name: stable/euphrates
+    location:
+      ovno: f49eab063a13bb89bd90f583bd6d814c3a7d21d2
diff --git a/releases/euphrates/parser.yaml b/releases/euphrates/parser.yaml
new file mode 100644 (file)
index 0000000..7eb055e
--- /dev/null
@@ -0,0 +1,9 @@
+---
+project: parser
+project-type: feature
+release-model: stable
+
+branches:
+  - name: stable/euphrates
+    location:
+      parser: 3447589a78375d4dab41608a3504f56a6e4ac9c9
diff --git a/releases/euphrates/pharos.yaml b/releases/euphrates/pharos.yaml
new file mode 100644 (file)
index 0000000..0237762
--- /dev/null
@@ -0,0 +1,12 @@
+---
+project: pharos
+project-type: infra
+release-model: stable
+
+branches:
+  - name: stable/euphrates
+    location:
+      pharos: 1d7a94bf5ab86f28b3183f52644d00801cde815b
+  - name: stable/euphrates
+    location:
+      pharos-tools: d46ab54583a6c20bfa5bea581f512474f488e788
diff --git a/releases/euphrates/promise.yaml b/releases/euphrates/promise.yaml
new file mode 100644 (file)
index 0000000..799077f
--- /dev/null
@@ -0,0 +1,9 @@
+---
+project: promise
+project-type: feature
+release-model: stable
+
+branches:
+  - name: stable/euphrates
+    location:
+      promise: 2ff86a92816faa4d71d2b0e260a5f44ce51d9b2c
diff --git a/releases/euphrates/qtip.yaml b/releases/euphrates/qtip.yaml
new file mode 100644 (file)
index 0000000..51c07d9
--- /dev/null
@@ -0,0 +1,9 @@
+---
+project: qtip
+project-type: testing
+release-model: stable
+
+branches:
+  - name: stable/euphrates
+    location:
+      qtip: 3f929d991ea4ca402aaf4db46752f703771f44ea
diff --git a/releases/euphrates/samplevnf.yaml b/releases/euphrates/samplevnf.yaml
new file mode 100644 (file)
index 0000000..33f1a90
--- /dev/null
@@ -0,0 +1,9 @@
+---
+project: samplevnf
+project-type: feature
+release-model: stable
+
+branches:
+  - name: stable/euphrates
+    location:
+      samplevnf: af6b18166ddbe9331c529256cb71c11e8b280982
diff --git a/releases/euphrates/sdnvpn.yaml b/releases/euphrates/sdnvpn.yaml
new file mode 100644 (file)
index 0000000..371fe9a
--- /dev/null
@@ -0,0 +1,9 @@
+---
+project: sdnvpn
+project-type: feature
+release-model: stable
+
+branches:
+  - name: stable/euphrates
+    location:
+      sdnvpn: e66856ba6b9275582aa4fc370d2b9abf48b5381f
diff --git a/releases/euphrates/sfc.yaml b/releases/euphrates/sfc.yaml
new file mode 100644 (file)
index 0000000..ebd7a0e
--- /dev/null
@@ -0,0 +1,9 @@
+---
+project: sfc
+project-type: feature
+release-model: stable
+
+branches:
+  - name: stable/euphrates
+    location:
+      sfc: 2b785ea6a618b031cde2fd327f33733ab9c352e9
diff --git a/releases/euphrates/snaps.yaml b/releases/euphrates/snaps.yaml
new file mode 100644 (file)
index 0000000..9aaa018
--- /dev/null
@@ -0,0 +1,9 @@
+---
+project: snaps
+project-type: tools
+release-model: stable
+
+branches:
+  - name: stable/euphrates
+    location:
+      snaps: fd18b6790cd9b59851bce6746cc83f27d3e18e4f
diff --git a/releases/euphrates/storperf.yaml b/releases/euphrates/storperf.yaml
new file mode 100644 (file)
index 0000000..c7cf60c
--- /dev/null
@@ -0,0 +1,9 @@
+---
+project: storperf
+project-type: testing
+release-model: stable
+
+branches:
+  - name: stable/euphrates
+    location:
+      storperf: 577bb77e605f78934260d6578bf07fb5071f3354
diff --git a/releases/euphrates/vswitchperf.yaml b/releases/euphrates/vswitchperf.yaml
new file mode 100644 (file)
index 0000000..3ae3b08
--- /dev/null
@@ -0,0 +1,9 @@
+---
+project: vswitchperf
+project-type: testing
+release-model: stable
+
+branches:
+  - name: stable/euphrates
+    location:
+      vswitchperf: d126de94bea2e5d0e237dc6a3373fd3d53e3cfa3
diff --git a/releases/euphrates/yardstick.yaml b/releases/euphrates/yardstick.yaml
new file mode 100644 (file)
index 0000000..36cf6a5
--- /dev/null
@@ -0,0 +1,9 @@
+---
+project: yardstick
+project-type: testing
+release-model: stable
+
+branches:
+  - name: stable/euphrates
+    location:
+      yardstick: 3431cd1801023e2ee09b520fc9f7a890677ff7b1