X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=ci%2Ftest_kvmfornfv.sh;h=e87d6eb409f3047d42f2ebe12701a543387206e3;hb=be208cb48be4f4db438ce27be15e1f6166c26910;hp=a2cee1f95555ecb077308450d22bd7e77c592fbe;hpb=2046178d894438b492d93f30941076ee7964f6ab;p=kvmfornfv.git diff --git a/ci/test_kvmfornfv.sh b/ci/test_kvmfornfv.sh index a2cee1f95..e87d6eb40 100755 --- a/ci/test_kvmfornfv.sh +++ b/ci/test_kvmfornfv.sh @@ -13,10 +13,12 @@ test_type=$1 test_name=$2 +ftrace_enable=0 cyclictest_env_verify=("idle_idle" "cpustress_idle" "memorystress_idle" "iostress_idle") #cyclictest environment cyclictest_env_daily=("idle_idle" "cpustress_idle" "memorystress_idle" "iostress_idle") cyclictest_result=0 #exit code of cyclictest packetforward_result=0 #exit code of packet forward +source $WORKSPACE/ci/envs/host-config function packetForward { # source $WORKSPACE/ci/packet_forward_test.sh $HOST_IP @@ -50,48 +52,83 @@ function cyclictest { fi } +function ftrace_disable { + sudo ssh root@${HOST_IP} "sh /root/workspace/scripts/disbale-trace.sh" + sudo ssh root@${HOST_IP} "cd /tmp ; a=\$(ls -rt | tail -1) ; echo \$a ; mv \$a cyclictest_${env}.txt" + sudo mkdir -p $WORKSPACE/build_output/log/kernel_trace + sudo scp root@${HOST_IP}:/tmp/cyclictest_${env}.txt $WORKSPACE/build_output/log/kernel_trace/ +} + #Execution of testcases based on test type and test name from releng. if [ ${test_type} == "verify" ];then HOST_IP="10.10.100.21" test_time=120000 # 2m - for env in ${cyclictest_env_verify[@]} - do - #Executing cyclictest through yardstick. - cyclictest ${env} - sleep 10 - done - #Execution of packet forwarding test cases. - packetForward - if [ ${cyclictest_result} -ne 0 ] || [ ${packetforward_result} -ne 0 ];then - echo "Test case FAILED" - exit 1 + if [ ${ftrace_enable} -eq '1' ]; then + for env in ${cyclictest_env_verify[@]} + do + #Enabling ftrace for kernel debugging. + sed -i '/host-setup1.sh/a\ \- \"enable-trace.sh\"' kvmfornfv_cyclictest_hostenv_guestenv.yaml + #Executing cyclictest through yardstick. + cyclictest ${env} + #disabling ftrace and collecting the logs to upload to artifact repository. + ftrace_disable + sleep 10 + done + #Execution of packet forwarding test cases. + packetForward else - exit 0 + for env in ${cyclictest_env_verify[@]} + do + #Executing cyclictest through yardstick. + cyclictest ${env} + sleep 10 + done + #Execution of packet forwarding test cases. + packetForward fi + if [ ${cyclictest_result} -ne 0 ] || [ ${packetforward_result} -ne 0 ];then + echo "Test case FAILED" + err_exit 1 + else + err_exit 0 + fi elif [ ${test_type} == "daily" ];then HOST_IP="10.10.100.22" test_time=3600000 #1h if [ ${test_name} == "packet_forward" ];then packetForward if [ ${packetforward_result} -ne 0 ] ; then - exit 1 + err_exit 1 else - exit 0 + err_exit 0 fi elif [ ${test_name} == "cyclictest" ];then - for env in ${cyclictest_env_daily[@]} - do + if [ ${ftrace_enable} -eq '1' ]; then + for env in ${cyclictest_env_daily[@]} + do + #Enabling ftrace for kernel debugging. + sed -i '/host-setup1.sh/a\ \- \"enable-trace.sh\"' kvmfornfv_cyclictest_hostenv_guestenv.yaml + #Executing cyclictest through yardstick. + cyclictest ${env} + #disabling ftrace and collecting the logs to upload to artifact repository. + ftrace_disable + sleep 5 + done + else + for env in ${cyclictest_env_daily[@]} + do #Executing cyclictest through yardstick. cyclictest ${env} sleep 5 - done - if [ ${cyclictest_result} -ne 0 ] ; then - echo "Cyclictest case execution FAILED" - exit 1 - else - echo "Cyclictest case executed SUCCESSFULLY" - exit 0 + done fi + if [ ${cyclictest_result} -ne 0 ] ; then + echo "Cyclictest case execution FAILED" + err_exit 1 + else + echo "Cyclictest case executed SUCCESSFULLY" + err_exit 0 + fi fi elif [ ${test_type} == "merge" ];then echo "Test is not enabled for ${test_type}"