summaryrefslogtreecommitdiffstats
path: root/ci
diff options
context:
space:
mode:
authorkalyanreddy <reddyx.gundarapu@intel.com>2017-03-21 19:27:25 -0700
committerkalyanreddy <reddyx.gundarapu@intel.com>2017-03-22 12:36:20 +0530
commit611d8bd4c4027ebe8da338d3bbb10a6994975937 (patch)
tree2c6d949dc6396f7fa61cc349be27ec45b6588e9e /ci
parentb1495d4fa3175a3ffea301dedb9b0a60ca9ada44 (diff)
Code optimization and retrieving host_ip/test_time from host-config.
This patch includes updated scripts to: 1.Select the host environment and test duration from host-config file to execute the test cases based on the job type. 2.Remove code duplications like sourcing a file multiple times. 3.Make packet forwarding test cases execution look clear. Change-Id: I88457b7f3dfacad1db2495090504974097228a4d Signed-off-by: Gundarapu Kalyan Reddy <reddyx.gundarapu@intel.com>
Diffstat (limited to 'ci')
-rwxr-xr-xci/envs/host-config26
-rw-r--r--ci/envs/packet_forwarding.sh14
-rwxr-xr-xci/test_kvmfornfv.sh17
3 files changed, 42 insertions, 15 deletions
diff --git a/ci/envs/host-config b/ci/envs/host-config
index 4a5d1b5a2..2ad4b3eb7 100755
--- a/ci/envs/host-config
+++ b/ci/envs/host-config
@@ -35,6 +35,32 @@ done
stress_isolcpus=${first}-${last}
echo "Stress tool runs on $stress_isolcpus"
+#Host for executing test cases based on test_type/job from releng
+function setHostIP {
+ test_type=$1
+ if [ ${test_type} == "verify" ];then
+ HOST_IP="10.10.100.21"
+ elif [ ${test_type} == "daily" ];then
+ HOST_IP="10.10.100.22"
+ else
+ echo "Incorrect test type"
+ fi
+ echo ${HOST_IP}
+}
+
+#Time duration for executing test cases based on test_type/job from releng
+function setTestTime {
+ test_type=$1
+ if [ ${test_type} == "verify" ];then
+ test_time=1000 # 1s
+ elif [ ${test_type} == "daily" ];then
+ test_time=3600000 # 1hr
+ else
+ echo "Incorrect test type"
+ fi
+ echo ${test_time}
+}
+
#Tar the log files generated during testcase execution and exit.
function test_exit {
exitCode=$1
diff --git a/ci/envs/packet_forwarding.sh b/ci/envs/packet_forwarding.sh
index ec399c6ab..643957a2d 100644
--- a/ci/envs/packet_forwarding.sh
+++ b/ci/envs/packet_forwarding.sh
@@ -108,10 +108,10 @@ function execute_vsperf() {
# figure out log file name
LOG_SUBDIR="OvsDpdkVhost"
LOG_FILE="${LOG_FILE_PREFIX}_${LOG_SUBDIR}_${DATE_SUFFIX}.log"
- echo " $VSPERF_BIN $OPNFVPOD --vswitch OvsDpdkVhost --vnf QemuDpdkVhostUser $CONF_FILE $TESTPARAM $TESTCASES > $LOG_FILE"
- echo "daily test cases started"
cd $HOME/vswitchperf
$VSPERF_BIN --list
+ echo "daily test cases started"
+ echo " $VSPERF_BIN --vswitch OvsDpdkVhost --vnf QemuDpdkVhostUser $CONF_FILE $TESTPARAM $TESTCASES > $LOG_FILE"
$VSPERF_BIN --vswitch OvsDpdkVhost --vnf QemuDpdkVhostUser $CONF_FILE $TESTPARAM $TESTCASES &>> $LOG_FILE
;;
esac
@@ -146,8 +146,8 @@ function execute_vsperf() {
# copy logs into dedicated directory
mkdir -p ${TEST_REPORT_LOG_DIR}/${LOG_SUBDIR}
- [ -f "$LOG_FILE" ] && cp -a "${LOG_FILE}" "${TEST_REPORT_LOG_DIR}/${LOG_SUBDIR}" &> /dev/null
- [ -d "$RES_DIR" ] && cp -ar "$RES_DIR" "${TEST_REPORT_LOG_DIR}/${LOG_SUBDIR}" &> /dev/null
+ [ -f "$LOG_FILE" ] && mv "${LOG_FILE}" "${TEST_REPORT_LOG_DIR}/${LOG_SUBDIR}" &> /dev/null
+ [ -d "$RES_DIR" ] && mv "$RES_DIR" "${TEST_REPORT_LOG_DIR}/${LOG_SUBDIR}" &> /dev/null
}
#Install vsperf and set up the environment
@@ -159,9 +159,9 @@ install_qemu
# execute job based on passed parameter
case $1 in
"daily")
- echo "================"
- echo "VSPERF daily job"
- echo "================"
+ echo "========================================================"
+ echo "KVM4NFV daily job executing packet forwarding test cases"
+ echo "========================================================"
execute_vsperf OVS_with_DPDK_and_vHost_User $1
execute_vsperf SRIOV $1
exit $EXIT
diff --git a/ci/test_kvmfornfv.sh b/ci/test_kvmfornfv.sh
index 8199bf0e9..47158dedd 100755
--- a/ci/test_kvmfornfv.sh
+++ b/ci/test_kvmfornfv.sh
@@ -45,6 +45,11 @@ function packetForward {
fi
}
+function getTestParams {
+ HOST_IP=$( setHostIP $test_type )
+ test_time=$( setTestTime $test_type )
+}
+
function cyclictest {
test_case=$1
source $WORKSPACE/ci/cyclicTestTrigger.sh $HOST_IP $test_time $test_type $test_case
@@ -72,9 +77,8 @@ function cyclictest {
echo "Terminating PCM Process"
sudo ssh root@${HOST_IP} "pid=\$(ps aux | grep 'pcm' | awk '{print \$2}' | head -1); echo \$pid |xargs kill -SIGTERM"
}
+#Collecting the Memory Bandwidth Information using pcm-memory utility
function collect_MBWInfo {
- #Collecting the Memory Bandwidth Information using pcm-memory utility
- source $WORKSPACE/ci/envs/host-config
testType=$1
timeStamp=$(date +%Y%m%d%H%M%S)
echo "Running PCM memory to collect memory bandwidth"
@@ -82,7 +86,6 @@ function collect_MBWInfo {
sudo ssh root@${HOST_IP} "${pcm_memory} 60 &>/root/MBWInfo/MBWInfo_${testType}_${timeStamp} &disown"
}
function install_pcm {
- source $WORKSPACE/ci/envs/host-config
sudo ssh root@${HOST_IP} '
modelName=`cat /proc/cpuinfo | grep -i "model name" | uniq`
if echo "$modelName" | grep -i "xeon" ;then
@@ -107,8 +110,7 @@ function install_pcm {
#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=1000 # 1s
+ getTestParams
install_pcm
if [ ${ftrace_enable} -eq '1' ]; then
for env in ${cyclictest_env_verify[@]}
@@ -138,8 +140,7 @@ if [ ${test_type} == "verify" ];then
test_exit 0
fi
elif [ ${test_type} == "daily" ];then
- HOST_IP="10.10.100.22"
- test_time=3600000 #1h
+ getTestParams
install_pcm
if [ ${test_name} == "packet_forward" ];then
packetForward
@@ -162,7 +163,7 @@ elif [ ${test_type} == "daily" ];then
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.
+ #disabling ftrace and collecting the logs to upload to artifact repository.
ftrace_disable
sleep 5
done