X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=jjb%2Ffunctest%2Ffunctest-alpine.sh;h=8c29249e1b523cdd107f5a9195d649ece603e55b;hb=4818cd9300b643d2af764639593632f2074e62d3;hp=da167358a823ffb6f492fccd3dda7eefa81e02d3;hpb=bede394dae3cc0f577a35a10880ea1f9fceeebbc;p=releng.git diff --git a/jjb/functest/functest-alpine.sh b/jjb/functest/functest-alpine.sh index da167358a..8c29249e1 100755 --- a/jjb/functest/functest-alpine.sh +++ b/jjb/functest/functest-alpine.sh @@ -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 @@ -53,14 +55,12 @@ run_test() { cmd_opt="run_tests -t ${test_name}" # Determine which Functest image should be used for the test case case ${test_name} in - connection_check|tenantnetwork1|tenantnetwork2|vmready1|vmready2|singlevm1|singlevm2|vping_ssh|vping_userdata|cinder_test|odl|api_check|snaps_health_check) + connection_check|tenantnetwork1|tenantnetwork2|vmready1|vmready2|singlevm1|singlevm2|vping_ssh|vping_userdata|cinder_test|odl|api_check|snaps_health_check|tempest_smoke) FUNCTEST_IMAGE=${REPO}/functest-healthcheck:${DOCKER_TAG} ;; - tempest_smoke_serial|tempest_smoke|neutron-tempest-plugin-api|rally_sanity|refstack_defcore|patrole|snaps_smoke|neutron_trunk|networking-bgpvpn|networking-sfc|barbican) + neutron-tempest-plugin-api|rally_sanity|refstack_defcore|tempest_full|tempest_scenario|patrole|snaps_smoke|neutron_trunk|networking-bgpvpn|networking-sfc|barbican) FUNCTEST_IMAGE=${REPO}/functest-smoke:${DOCKER_TAG} ;; - shaker|vmtp) + rally_full|rally_jobs|shaker|vmtp) FUNCTEST_IMAGE=${REPO}/functest-benchmarking:${DOCKER_TAG} ;; - tempest_full_parallel|tempest_full|tempest_scenario|rally_full) - FUNCTEST_IMAGE=${REPO}/functest-components:${DOCKER_TAG} ;; cloudify|cloudify_ims|heat_ims|vyos_vrouter|juju_epc) FUNCTEST_IMAGE=${REPO}/functest-vnf:${DOCKER_TAG} ;; doctor-notification|bgpvpn|functest-odl-sfc|barometercollectd|fds|vgpu|stor4nfv_os) @@ -82,12 +82,11 @@ run_test() { } -[[ $CI_DEBUG == true ]] && redirect="/dev/stdout" || redirect="/dev/null" +redirect="/dev/stdout" 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 @@ -97,7 +96,7 @@ if [[ ${INSTALLER_TYPE} == 'joid' ]]; then elif [[ ${INSTALLER_TYPE} == 'compass' ]]; then cacert_file_vol="-v ${HOME}/os_cacert:${FUNCTEST_DIR}/conf/os_cacert" echo "export OS_CACERT=${FUNCTEST_DIR}/conf/os_cacert" >> ${HOME}/opnfv-openrc.sh -elif [[ ${INSTALLER_TYPE} == 'fuel' && ${DEPLOY_TYPE} == 'baremetal' ]]; then +elif [[ ${INSTALLER_TYPE} == 'fuel' ]] && [[ "${DEPLOY_SCENARIO}" =~ -ha$ ]]; then cacert_file_vol="-v ${HOME}/os_cacert:/etc/ssl/certs/mcp_os_cacert" fi @@ -108,10 +107,6 @@ echo "Functest: Start Docker and prepare environment" echo "Functest: Download images that will be used by test cases" images_dir="${HOME}/opnfv/functest/images" download_script=${WORKSPACE}/functest/ci/download_images.sh -if [[ ! -f ${download_script} ]]; then - # to support Danube as well - wget https://git.opnfv.org/functest/plain/functest/ci/download_images.sh -O ${download_script} 2> ${redirect} -fi chmod +x ${download_script} ${download_script} ${images_dir} ${DEPLOY_SCENARIO} ${HOST_ARCH} 2> ${redirect} @@ -131,12 +126,11 @@ envs="-e INSTALLER_TYPE=${INSTALLER_TYPE} -e INSTALLER_IP=${INSTALLER_IP} \ ssh_options="-o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no" - 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}" + envs="${envs} -e POD_ARCH=${COMPUTE_ARCH}" fi if [[ ${INSTALLER_TYPE} == 'fuel' && ${DEPLOY_SCENARIO} == 'os-nosdn-nofeature-noha' ]]; then @@ -154,17 +148,105 @@ if [[ ${INSTALLER_TYPE} == 'compass' && ${DEPLOY_SCENARIO} =~ 'sfc' ]]; then envs="${envs} -e EXTERNAL_NETWORK=${EXTERNAL_NETWORK}" fi +if [[ ${INSTALLER_TYPE} == 'compass' ]] || [[ ${DEPLOY_SCENARIO} == *"odl"* ]]; then + envs="${envs} -e SDN_CONTROLLER_RESTCONFPORT=8080" +fi + if [[ ${DEPLOY_SCENARIO} == *"ovs"* ]] || [[ ${DEPLOY_SCENARIO} == *"fdio"* ]]; then if [[ -n ${IMAGE_PROPERTIES} ]]; then - IMAGE_PROPERTIES="${IMAGE_PROPERTIES}, hw_mem_page_size: large" + IMAGE_PROPERTIES="${IMAGE_PROPERTIES},hw_mem_page_size:large" else - IMAGE_PROPERTIES="hw_mem_page_size: large" + IMAGE_PROPERTIES="hw_mem_page_size:large" fi - FLAVOR_EXTRA_SPECS="hw:mem_page_size: large" - envs="${envs} -e IMAGE_PROPERTIES=\"${IMAGE_PROPERTIES}\" -e FLAVOR_EXTRA_SPECS=\"${FLAVOR_EXTRA_SPECS}\"" + FLAVOR_EXTRA_SPECS="hw:mem_page_size:large" fi -volumes="${images_vol} ${results_vol} ${sshkey_vol} ${libvirt_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 + +tempest_conf_yaml=$(mktemp) +case ${INSTALLER_TYPE} in +apex) + cat << EOF > "${tempest_conf_yaml}" +--- +compute-feature-enabled: + shelve: false + vnc_console: true +identity-feature-enabled: + api_v2: false + api_v2_admin: false +image-feature-enabled: + api_v2: true + api_v1: false +volume: + storage_protocol: ceph +volume-feature-enabled: + backup: false +EOF + ;; +compass) + cat << EOF > "${tempest_conf_yaml}" +--- +compute-feature-enabled: + shelve: false + vnc_console: false + spice_console: true +identity-feature-enabled: + api_v2: false + api_v2_admin: false +image-feature-enabled: + api_v2: true + api_v1: false +volume: + storage_protocol: ceph +volume-feature-enabled: + backup: false +EOF + ;; +fuel) + cat << EOF > "${tempest_conf_yaml}" +--- +compute-feature-enabled: + shelve: false + vnc_console: false + spice_console: true +identity-feature-enabled: + api_v2: false + api_v2_admin: false +image-feature-enabled: + api_v2: true + api_v1: false +volume: + storage_protocol: iSCSI +volume-feature-enabled: + backup: false +EOF + ;; +*) + cat << EOF > "${tempest_conf_yaml}" +--- +compute-feature-enabled: + shelve: false + vnc_console: false +identity-feature-enabled: + api_v2: false + api_v2_admin: false +image-feature-enabled: + api_v2: true + api_v1: false +volume: + storage_protocol: iSCSI +volume-feature-enabled: + backup: false +EOF + ;; +esac +echo "tempest_conf.yaml:" && cat "${tempest_conf_yaml}" + +volumes="${images_vol} ${results_vol} ${sshkey_vol} ${libvirt_vol} \ + ${userconfig_vol} ${rc_file_vol} ${cacert_file_vol} \ + -v ${tempest_conf_yaml}:/usr/lib/python2.7/site-packages/functest/opnfv_tests/openstack/tempest/custom_tests/tempest_conf.yaml" ret_val_file="${HOME}/opnfv/functest/results/${BRANCH##*/}/return_value" echo 0 > ${ret_val_file} @@ -179,11 +261,14 @@ elif [ ${FUNCTEST_MODE} == 'tier' ]; then tiers=(${FUNCTEST_TIER}) run_tiers ${tiers} else - tests=(tempest_full tempest_scenario) + tests=() + skip_tests=0 if [ ${DEPLOY_TYPE} == 'baremetal' ] && [ "${HOST_ARCH}" != "aarch64" ]; then if [[ ${BRANCH} == "stable/fraser" ]]; then tiers=(healthcheck smoke features vnf parser) tests=(tempest_full_parallel) + elif [[ ${BRANCH} == "stable/gambia" ]]; then + tiers=(healthcheck smoke benchmarking features vnf components) else tiers=(healthcheck smoke benchmarking features vnf) fi @@ -191,12 +276,16 @@ else if [[ ${BRANCH} == "stable/fraser" ]]; then tiers=(healthcheck smoke features parser) tests=(tempest_full_parallel) + elif [[ ${BRANCH} == "stable/gambia" ]]; then + tiers=(healthcheck smoke benchmarking features vnf components) else tiers=(healthcheck smoke benchmarking features) 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