Merge "[armband] Add RTD Build Jobs"
[releng.git] / jjb / functest / functest-alpine.sh
index 701d4b4..f0733b6 100755 (executable)
@@ -8,6 +8,7 @@ REPO=${REPO:-opnfv}
 CI_LOOP=${CI_LOOP:-daily}
 TEST_DB_URL=http://testresults.opnfv.org/test/api/v1/results
 ENERGY_RECORDER_API_URL=http://energy.opnfv.fr/resources
+DOCKER_TAG=${DOCKER_TAG:-$([[ ${BRANCH##*/} == "master" ]] && echo "latest" || echo ${BRANCH##*/})}
 
 check_os_deployment() {
     FUNCTEST_IMAGE=${REPO}/functest-healthcheck:${DOCKER_TAG}
@@ -42,6 +43,7 @@ run_tiers() {
             echo ${ret_value} > ${ret_val_file}
             if [ ${tier} == 'healthcheck' ]; then
                 echo "Healthcheck tier failed. Exiting Functest..."
+                skip_tests=1
                 break
             fi
         fi
@@ -87,7 +89,6 @@ FUNCTEST_DIR=/home/opnfv/functest
 DEPLOY_TYPE=baremetal
 [[ $BUILD_TAG =~ "virtual" ]] && DEPLOY_TYPE=virt
 HOST_ARCH=$(uname -m)
-DOCKER_TAG=`[[ ${BRANCH##*/} == "master" ]] && echo "latest" || echo ${BRANCH##*/}`
 
 # Prepare OpenStack credentials volume
 rc_file=${HOME}/opnfv-openrc.sh
@@ -131,14 +132,21 @@ envs="-e INSTALLER_TYPE=${INSTALLER_TYPE} -e INSTALLER_IP=${INSTALLER_IP} \
 
 ssh_options="-o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no"
 
+if [[ "${INSTALLER_TYPE}" == 'apex' ]] || [[ "${INSTALLER_TYPE}" == 'compass' ]]; then
+    envs="${envs} -e STORAGE_PROTOCOL=ceph"
+fi
 
 if [ "${INSTALLER_TYPE}" == 'fuel' ]; then
     COMPUTE_ARCH=$(ssh -l ubuntu ${INSTALLER_IP} -i ${SSH_KEY} ${ssh_options} \
         "sudo salt 'cmp*' grains.get cpuarch --out yaml | awk '{print \$2; exit}'")
-    IMAGE_PROPERTIES="hw_disk_bus: scsi, hw_scsi_model: virtio-scsi"
-    envs="${envs} -e POD_ARCH=${COMPUTE_ARCH} -e IMAGE_PROPERTIES=\"${IMAGE_PROPERTIES}\""
+    IMAGE_PROPERTIES="hw_disk_bus:scsi,hw_scsi_model:virtio-scsi"
+    envs="${envs} -e POD_ARCH=${COMPUTE_ARCH}"
 fi
 
+if [[ ${INSTALLER_TYPE} == 'fuel' && ${DEPLOY_SCENARIO} == 'os-nosdn-nofeature-noha' ]]; then
+    libvirt_vol="-v ${ssh_key}:${FUNCTEST_DIR}/conf/libvirt_key"
+    envs="${envs} -e LIBVIRT_USER=ubuntu -e LIBVIRT_KEY_PATH=${FUNCTEST_DIR}/conf/libvirt_key"
+fi
 
 if [[ ${INSTALLER_TYPE} == 'compass' && ${DEPLOY_SCENARIO} =~ 'sfc' ]]; then
     ssh_key="/tmp/id_rsa"
@@ -150,8 +158,20 @@ if [[ ${INSTALLER_TYPE} == 'compass' && ${DEPLOY_SCENARIO} =~ 'sfc' ]]; then
     envs="${envs} -e EXTERNAL_NETWORK=${EXTERNAL_NETWORK}"
 fi
 
+if [[ ${DEPLOY_SCENARIO} == *"ovs"* ]] || [[ ${DEPLOY_SCENARIO} == *"fdio"* ]]; then
+    if [[ -n ${IMAGE_PROPERTIES} ]]; then
+        IMAGE_PROPERTIES="${IMAGE_PROPERTIES},hw_mem_page_size:large"
+    else
+        IMAGE_PROPERTIES="hw_mem_page_size:large"
+    fi
+    FLAVOR_EXTRA_SPECS="hw:mem_page_size:large"
+fi
 
-volumes="${images_vol} ${results_vol} ${sshkey_vol} ${userconfig_vol} ${rc_file_vol} ${cacert_file_vol}"
+if [[ -n ${IMAGE_PROPERTIES} ]] || [[ -n ${FLAVOR_EXTRA_SPECS} ]]; then
+    envs="${envs} -e IMAGE_PROPERTIES=${IMAGE_PROPERTIES} -e FLAVOR_EXTRA_SPECS=${FLAVOR_EXTRA_SPECS}"
+fi
+
+volumes="${images_vol} ${results_vol} ${sshkey_vol} ${libvirt_vol} ${userconfig_vol} ${rc_file_vol} ${cacert_file_vol}"
 
 ret_val_file="${HOME}/opnfv/functest/results/${BRANCH##*/}/return_value"
 echo 0 > ${ret_val_file}
@@ -167,6 +187,7 @@ elif [ ${FUNCTEST_MODE} == 'tier' ]; then
     run_tiers ${tiers}
 else
     tests=(tempest_full tempest_scenario)
+    skip_tests=0
     if [ ${DEPLOY_TYPE} == 'baremetal' ] && [ "${HOST_ARCH}" != "aarch64" ]; then
         if [[ ${BRANCH} == "stable/fraser" ]]; then
             tiers=(healthcheck smoke features vnf parser)
@@ -183,7 +204,9 @@ else
         fi
     fi
     run_tiers ${tiers}
-    for test in "${tests[@]}"; do
-        run_test "$test"
-    done
+    if [ ${skip_tests} -eq 0 ]; then
+        for test in "${tests[@]}"; do
+            run_test "$test"
+        done
+    fi
 fi