blob: 2ad4b3eb7096ce18d148e4a25638af4a891ed14c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
|
#!/bin/bash
##############################################################################
## Copyright (c) 2015 Intel Corp.
##
## All rights reserved. This program and the accompanying materials
## are made available under the terms of the Apache License, Version 2.0
## which accompanies this distribution, and is available at
## http://www.apache.org/licenses/LICENSE-2.0
###############################################################################
# Number of huge pages to create and on which NUMA node
numa_node=1
huge_pages=2
# QEMU executable path and number of cpus for guest
qemu=/usr/local/bin/qemu-system-x86_64
guest_cpus=2
pcm_memory=/root/pcm/pcm-memory.x
# Isolated cpus for nfv, must be given as a range '-' and Numa node1 CPU's should be considered
host_isolcpus=`lscpu | grep "NUMA node1 CPU(s)"| awk -F ':' '{print \$2}' | sed 's/[[:space:]]//g'`
first=$(echo ${host_isolcpus} | cut -f1 -d-)
last=$(echo ${host_isolcpus} | cut -f2 -d- | cut -d',' -f1 )
# Bind cpus from host_isolcpus range for QEMU processor threads
i=0
while [ ${i} -lt ${guest_cpus} ]; do
qemu_cpu[$i]=${first}
i=`expr $i + 1`
first=`expr $first + 1`
done
#Isolated cpus from host_isolcpus range to run Stress tool
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
cd $WORKSPACE/build_output/
if [ -d log ];then
tar -czvf log-$(date -u +"%Y-%m-%d_%H-%M-%S").tar.gz log
fi
exit $exitCode
}
function copyLogs {
echo "Copying Log files from Node to Jump Server"
sudo ssh root@${HOST_IP} "cd /root;tar -czvf MBWInfo.tar.gz MBWInfo"
mkdir -p $WORKSPACE/build_output/log/MBWInfo
scp root@${HOST_IP}:/root/MBWInfo.tar.gz $WORKSPACE/build_output/log/MBWInfo
echo "Listing all the logs collected"
cd $WORKSPACE;ls build_output/log/MBWInfo;
sudo ssh root@${HOST_IP} "cd /root;rm -rf MBWInfo MBWInfo.tar.gz"
}
function packet_fwd_logs {
#Tar and copy logs for uploading to artifacts repository
echo "Copying Log files from Node to Jump Server"
mkdir -p $WORKSPACE/build_output/log/packet_fwd
scp -r root@${HOST_IP}:/tmp/packet_fwd_logs $WORKSPACE/build_output/log/packet_fwd
#removing collected logs on the node after copying.
sudo ssh root@${HOST_IP} "cd /tmp;rm -rf packet_fwd_logs"
}
function packet_fwd_exit {
exitCode=$1
TIMESTAMP=$(date -u +"%Y-%m-%d_%H-%M-%S")
cd $WORKSPACE/build_output/
if [ -d log ];then
tar -czvf log-${TIMESTAMP}.tar.gz log
echo "Uploading packet forwarding logs and results"
gsutil cp -r log-*.tar.gz gs://artifacts.opnfv.org/kvmfornfv/packet_fwd_${TIMESTAMP} > $WORKSPACE/build_output/gsutil.log 2>&1
echo "http://artifacts.opnfv.org/kvmfornfv/packet_fwd_${TIMESTAMP}"
fi
exit $exitCode
}
|