X-Git-Url: https://gerrit.fd.io/r/gitweb?p=csit.git;a=blobdiff_plain;f=bootstrap-verify-perf.sh;h=e3a79707635dd81fb971e0f658d1ef52f48e6ea7;hp=12afedb1c6c373dbe20a1dd88813749f9d622566;hb=780238d888cc9c513625bb09dbf547b02b0e2c47;hpb=65765ab9f038aed6729fd436e6af6d3ca339e0d8 diff --git a/bootstrap-verify-perf.sh b/bootstrap-verify-perf.sh index 12afedb1c6..e3a7970763 100755 --- a/bootstrap-verify-perf.sh +++ b/bootstrap-verify-perf.sh @@ -1,5 +1,5 @@ #!/bin/bash -# Copyright (c) 2016 Cisco and/or its affiliates. +# Copyright (c) 2017 Cisco and/or its affiliates. # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at: @@ -27,7 +27,7 @@ INSTALLATION_DIR="/tmp/install_dir" PYBOT_ARGS="-W 150 -L TRACE" -ARCHIVE_ARTIFACTS=(log.html output.xml report.html output_perf_data.xml) +ARCHIVE_ARTIFACTS=(log.html output.xml report.html output_perf_data.xml output_perf_data.json) # If we run this script from CSIT jobs we want to use stable vpp version if [[ ${JOB_NAME} == csit-* ]] ; @@ -35,7 +35,9 @@ then mkdir vpp_download cd vpp_download - if [[ ${TEST_TAG} == "PERFTEST_NIGHTLY" ]] ; + if [[ ${TEST_TAG} == *NIGHTLY ]] || \ + [[ ${TEST_TAG} == *DAILY ]] || \ + [[ ${TEST_TAG} == *WEEKLY ]]; then # Download the latest VPP build .deb install packages echo Downloading VPP packages... @@ -152,6 +154,134 @@ case "$TEST_TAG" in tests/ RETURN_STATUS=$(echo $?) ;; + VERIFY-PERF-NDRDISC ) + pybot ${PYBOT_ARGS} \ + -v TOPOLOGY_PATH:${WORKING_TOPOLOGY} \ + -s "tests.perf" \ + --include ndrdiscAND1t1cORndrdiscAND2t2c \ + tests/ + RETURN_STATUS=$(echo $?) + ;; + VERIFY-PERF-PDRDISC ) + pybot ${PYBOT_ARGS} \ + -v TOPOLOGY_PATH:${WORKING_TOPOLOGY} \ + -s "tests.perf" \ + --include pdrdiscAND1t1cORpdrdiscAND2t2c \ + tests/ + RETURN_STATUS=$(echo $?) + ;; + VERIFY-PERF-NDRCHK ) + pybot ${PYBOT_ARGS} \ + -v TOPOLOGY_PATH:${WORKING_TOPOLOGY} \ + -s "tests.perf" \ + --include ndrchkAND1t1cORndrchkAND2t2c \ + tests/ + RETURN_STATUS=$(echo $?) + ;; + PERFTEST_NDRCHK_DAILY ) + pybot ${PYBOT_ARGS} \ + -v TOPOLOGY_PATH:${WORKING_TOPOLOGY} \ + -s "tests.perf" \ + --include ndrchkAND1t1cORndrchkAND2t2c \ + tests/ + RETURN_STATUS=$(echo $?) + ;; + VERIFY-PERF-IP4 ) + pybot ${PYBOT_ARGS} \ + -v TOPOLOGY_PATH:${WORKING_TOPOLOGY} \ + -s "tests.perf" \ + --include ndrdiscANDnic_intel-x520-da2AND1t1cANDip4baseORndrdiscANDnic_intel-x520-da2AND1t1cANDip4fwdANDfib_2m \ + tests/ + RETURN_STATUS=$(echo $?) + ;; + VERIFY-PERF-IP6 ) + pybot ${PYBOT_ARGS} \ + -v TOPOLOGY_PATH:${WORKING_TOPOLOGY} \ + -s "tests.perf" \ + --include ndrdiscANDnic_intel-x520-da2AND1t1cANDip6baseORndrdiscANDnic_intel-x520-da2AND1t1cANDip6fwdANDfib_2m \ + tests/ + RETURN_STATUS=$(echo $?) + ;; + VERIFY-PERF-L2 ) + pybot ${PYBOT_ARGS} \ + -v TOPOLOGY_PATH:${WORKING_TOPOLOGY} \ + -s "tests.perf" \ + --include ndrdiscANDnic_intel-x520-da2AND1t1cANDl2xcbaseORndrdiscANDnic_intel-x520-da2AND1t1cANDl2bdbase \ + tests/ + RETURN_STATUS=$(echo $?) + ;; + VERIFY-PERF-LISP ) + pybot ${PYBOT_ARGS} \ + -v TOPOLOGY_PATH:${WORKING_TOPOLOGY} \ + -s "tests.perf" \ + --include ndrdiscANDnic_intel-x520-da2AND1t1cANDlisp \ + tests/ + RETURN_STATUS=$(echo $?) + ;; + VERIFY-PERF-VXLAN ) + pybot ${PYBOT_ARGS} \ + -v TOPOLOGY_PATH:${WORKING_TOPOLOGY} \ + -s "tests.perf" \ + --include ndrdiscANDnic_intel-x520-da2AND1t1cANDvxlan \ + tests/ + RETURN_STATUS=$(echo $?) + ;; + VERIFY-PERF-VHOST ) + pybot ${PYBOT_ARGS} \ + -v TOPOLOGY_PATH:${WORKING_TOPOLOGY} \ + -s "tests.perf" \ + --include ndrdiscANDnic_intel-x520-da2AND1t1cANDvhost \ + tests/ + RETURN_STATUS=$(echo $?) + ;; + VPP-VERIFY-PERF-IP4 ) + pybot ${PYBOT_ARGS} \ + -v TOPOLOGY_PATH:${WORKING_TOPOLOGY} \ + -s "tests.perf" \ + --include ndrchkANDnic_intel-x520-da2AND1t1cANDip4baseORndrchkANDnic_intel-x520-da2AND1t1cANDip4fwdANDfib_2m \ + tests/ + RETURN_STATUS=$(echo $?) + ;; + VPP-VERIFY-PERF-IP6 ) + pybot ${PYBOT_ARGS} \ + -v TOPOLOGY_PATH:${WORKING_TOPOLOGY} \ + -s "tests.perf" \ + --include ndrchkANDnic_intel-x520-da2AND1t1cANDip6baseORndrchkANDnic_intel-x520-da2AND1t1cANDip6fwdANDfib_2m \ + tests/ + RETURN_STATUS=$(echo $?) + ;; + VPP-VERIFY-PERF-L2 ) + pybot ${PYBOT_ARGS} \ + -v TOPOLOGY_PATH:${WORKING_TOPOLOGY} \ + -s "tests.perf" \ + --include ndrchkANDnic_intel-x520-da2AND1t1cANDl2xcbaseORndrchkANDnic_intel-x520-da2AND1t1cANDl2bdbase \ + tests/ + RETURN_STATUS=$(echo $?) + ;; + VPP-VERIFY-PERF-LISP ) + pybot ${PYBOT_ARGS} \ + -v TOPOLOGY_PATH:${WORKING_TOPOLOGY} \ + -s "tests.perf" \ + --include ndrchkANDnic_intel-x520-da2AND1t1cANDlisp \ + tests/ + RETURN_STATUS=$(echo $?) + ;; + VPP-VERIFY-PERF-VXLAN ) + pybot ${PYBOT_ARGS} \ + -v TOPOLOGY_PATH:${WORKING_TOPOLOGY} \ + -s "tests.perf" \ + --include ndrchkANDnic_intel-x520-da2AND1t1cANDvxlan \ + tests/ + RETURN_STATUS=$(echo $?) + ;; + VPP-VERIFY-PERF-VHOST ) + pybot ${PYBOT_ARGS} \ + -v TOPOLOGY_PATH:${WORKING_TOPOLOGY} \ + -s "tests.perf" \ + --include ndrchkANDnic_intel-x520-da2AND1t1cANDvhost \ + tests/ + RETURN_STATUS=$(echo $?) + ;; PERFTEST_LONG ) pybot ${PYBOT_ARGS} \ -v TOPOLOGY_PATH:${WORKING_TOPOLOGY} \ @@ -169,7 +299,7 @@ case "$TEST_TAG" in tests/ RETURN_STATUS=$(echo $?) ;; - PERFTEST_NIGHTLY ) + PERFTEST_NIGHTLY ) #run all available tests pybot ${PYBOT_ARGS} \ -v TOPOLOGY_PATH:${WORKING_TOPOLOGY} \ @@ -197,6 +327,14 @@ if [ ! $? -eq 0 ]; then echo "Parsing ${SCRIPT_DIR}/output.xml failed" fi +python ${SCRIPT_DIR}/resources/tools/report_gen/run_robot_json_data.py \ + --input ${SCRIPT_DIR}/output.xml \ + --output ${SCRIPT_DIR}/output_perf_data.json \ + --vdevice ${VPP_STABLE_VER} +if [ ! $? -eq 0 ]; then + echo "Generating JSON data for report from ${SCRIPT_DIR}/output.xml failed" +fi + # Archive artifacts mkdir archive for i in ${ARCHIVE_ARTIFACTS[@]}; do