X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=jjb%2Ffunctest%2Ffunctest-alpine.sh;h=9961f717eb51d0765bd6012f853d3944ebb0b098;hb=7d251e861b54f1a9d9ab192c7c65e5a810541e43;hp=ef2a64903341ffbeb8f2ec1d4778267426568830;hpb=ac6c1c4e595c9ce75f3bcaf65926be545334c144;p=releng.git diff --git a/jjb/functest/functest-alpine.sh b/jjb/functest/functest-alpine.sh index ef2a64903..9961f717e 100755 --- a/jjb/functest/functest-alpine.sh +++ b/jjb/functest/functest-alpine.sh @@ -10,23 +10,6 @@ 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} - echo "Functest: Pulling Functest Docker image ${FUNCTEST_IMAGE} ..." - docker pull ${FUNCTEST_IMAGE}>/dev/null - cmd="docker run --rm ${volumes} ${FUNCTEST_IMAGE} check_deployment" - echo "Checking deployment, CMD: ${cmd}" - eval ${cmd} - ret_value=$? - if [ ${ret_value} != 0 ]; then - echo "ERROR: Problem while checking OpenStack deployment." - exit 1 - else - echo "OpenStack deployment OK." - fi - -} - run_tiers() { tiers=$1 cmd_opt="run_tests -r -t all" @@ -55,14 +38,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) @@ -84,7 +65,7 @@ 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 @@ -98,7 +79,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 @@ -109,10 +90,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} @@ -128,14 +105,11 @@ test -f ${HOME}/opnfv/functest/custom/params_${DOCKER_TAG} && custom_params=$(ca envs="-e INSTALLER_TYPE=${INSTALLER_TYPE} -e INSTALLER_IP=${INSTALLER_IP} \ -e NODE_NAME=${NODE_NAME} -e DEPLOY_SCENARIO=${DEPLOY_SCENARIO} \ -e BUILD_TAG=${BUILD_TAG} -e DEPLOY_TYPE=${DEPLOY_TYPE} -e CI_LOOP=${CI_LOOP} \ - -e TEST_DB_URL=${TEST_DB_URL} -e ENERGY_RECORDER_API_URL=${ENERGY_RECORDER_API_URL}" + -e TEST_DB_URL=${TEST_DB_URL} -e ENERGY_RECORDER_API_URL=${ENERGY_RECORDER_API_URL} \ + -e DEBUG=true" ssh_options="-o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no" -if [ "${INSTALLER_TYPE}" == 'apex' ]; 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}'") @@ -158,6 +132,10 @@ 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" @@ -171,7 +149,136 @@ 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}" +tempest_conf_yaml=$(mktemp) +case ${INSTALLER_TYPE} in +apex) + cat << EOF > "${tempest_conf_yaml}" +--- +compute-feature-enabled: + shelve: false + vnc_console: true + block_migration_for_live_migration: false +identity-feature-enabled: + api_v2: false + api_v2_admin: false +image-feature-enabled: + api_v2: true + api_v1: false +object-storage: + operator_role: SwiftOperator +volume: + storage_protocol: ceph +volume-feature-enabled: + backup: false +EOF + ;; +compass) + cat << EOF > "${tempest_conf_yaml}" +--- +compute-feature-enabled: + shelve: false + vnc_console: false + block_migration_for_live_migration: 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 +case ${BRANCH} in +master) + cat << EOF >> "${tempest_conf_yaml}" +compute: + max_microversion: latest +EOF + ;; +stable/hunter) + cat << EOF >> "${tempest_conf_yaml}" +compute: + max_microversion: 2.65 +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" + +if [[ ${INSTALLER_TYPE} == 'apex' ]]; then + blacklist_yaml=$(mktemp) + cat << EOF >> "${blacklist_yaml}" +--- +- + scenarios: + - os-ovn-nofeature-ha + tests: + - neutron_tempest_plugin.api.admin.test_agent_management + - neutron_tempest_plugin.api.admin.test_dhcp_agent_scheduler + - patrole_tempest_plugin.tests.api.network.test_agents_rbac + - patrole_tempest_plugin.tests.api.network.test_networks_rbac.NetworksRbacTest.test_create_network_provider_network_type + - patrole_tempest_plugin.tests.api.network.test_networks_rbac.NetworksRbacTest.test_create_network_provider_segmentation_id + - tempest.api.network.admin.test_agent_management + - tempest.api.network.admin.test_dhcp_agent_scheduler + - tempest.api.object_storage.test_crossdomain.CrossdomainTest.test_get_crossdomain_policy +- + scenarios: + - os-nosdn-nofeature-ha + tests: + - tempest.api.object_storage.test_crossdomain.CrossdomainTest.test_get_crossdomain_policy +- + scenarios: + - os-nosdn-nofeature-noha + tests: + - tempest.api.object_storage.test_crossdomain.CrossdomainTest.test_get_crossdomain_policy +EOF + volumes="${volumes} -v ${blacklist_yaml}:/usr/lib/python2.7/site-packages/functest/opnfv_tests/openstack/tempest/custom_tests/blacklist.yaml" +fi ret_val_file="${HOME}/opnfv/functest/results/${BRANCH##*/}/return_value" echo 0 > ${ret_val_file} @@ -186,22 +293,12 @@ 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) - else - tiers=(healthcheck smoke benchmarking features vnf) - fi + if [ "${HOST_ARCH}" != "aarch64" ]; then + tiers=(healthcheck smoke benchmarking features vnf) else - if [[ ${BRANCH} == "stable/fraser" ]]; then - tiers=(healthcheck smoke features parser) - tests=(tempest_full_parallel) - else - tiers=(healthcheck smoke benchmarking features) - fi + tiers=(healthcheck smoke benchmarking features) fi run_tiers ${tiers} if [ ${skip_tests} -eq 0 ]; then