aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Klozik <martinx.klozik@intel.com>2017-11-20 09:40:38 +0000
committerMartin Klozik <martinx.klozik@intel.com>2017-11-20 15:04:01 +0000
commit4bca2eeb7fabe20112d0b9c5a4c166615124bcd0 (patch)
tree70687f4195513aaad70a2129649c9a7289687011
parent62cc56705f9ec94c59b2b0597ffdd1fa41008982 (diff)
ci: Skip VPP tests if needed
If VPP can't be executed properly, then VPP tests will be skipped for VERIFY and MERGE jobs. It sometimes happens, that VPP can't be executed at builders used for VERIFY & MERGE jobs execution. These failures are not caused by patches themselves, but they are blocking standard review & merge process. Thus VPP tests will be suppressed in case that VPP can't be started at all. This change is not related to DAILY job, which is executed at POD dedicated to VSPERF project. It means that VPP tests are always executed by DAILY job. Change-Id: I4752601561b94a82482c403305bc3f24779f538b Signed-off-by: Martin Klozik <martinx.klozik@intel.com> Reviewed-by: Al Morton <acmorton@att.com> Reviewed-by: Christian Trautman <ctrautma@redhat.com> Reviewed-by: Sridhar Rao <sridhar.rao@spirent.com> Reviewed-by: Trevor Cooper <trevor.cooper@intel.com>
-rwxr-xr-xci/build-vsperf.sh15
-rw-r--r--conf/integration/01_testcases.conf11
2 files changed, 26 insertions, 0 deletions
diff --git a/ci/build-vsperf.sh b/ci/build-vsperf.sh
index a8a42ce..755fb51 100755
--- a/ci/build-vsperf.sh
+++ b/ci/build-vsperf.sh
@@ -213,6 +213,21 @@ function execute_vsperf() {
LOG_FILE="${LOG_FILE_PREFIX}_${LOG_SUBDIR}_${DATE_SUFFIX}.log"
hugepages_info > $LOG_FILE
+
+ # check if VPP is up & running
+ echo " $VSPERF_BIN $OPNFVPOD --vswitch VppDpdkVhost --vnf QemuDpdkVhostUser $CONF_FILE $TESTPARAM vswitch_version_vpp >> ${LOG_FILE}2"
+ $VSPERF_BIN $OPNFVPOD --vswitch VppDpdkVhost --vnf QemuDpdkVhostUser $CONF_FILE $TESTPARAM vswitch_version_vpp &>> ${LOG_FILE}2
+ if (grep FAILED ${LOG_FILE}2 &> /dev/null ) ; then
+ # VPP can't be executed or vppctl can't connect to it, so skip
+ # VPP tests as it is probably an issue with jenkins slave
+ printf " %-70s %-6s\n" "vswitch_version_vpp" "FAILED"
+ echo
+ echo "VPP is not working properly. VPP tests will be skipped."
+ echo
+ return
+ else
+ printf " %-70s %-6s\n" "vswitch_version_vpp" "OK"
+ fi
echo " $VSPERF_BIN $OPNFVPOD --vswitch VppDpdkVhost --vnf QemuDpdkVhostUser $CONF_FILE $TESTPARAM $TESTCASES > $LOG_FILE"
$VSPERF_BIN $OPNFVPOD --vswitch VppDpdkVhost --vnf QemuDpdkVhostUser $CONF_FILE $TESTPARAM $TESTCASES &>> $LOG_FILE
hugepages_info >> $LOG_FILE
diff --git a/conf/integration/01_testcases.conf b/conf/integration/01_testcases.conf
index 647e39c..dfc8a4c 100644
--- a/conf/integration/01_testcases.conf
+++ b/conf/integration/01_testcases.conf
@@ -970,9 +970,20 @@ INTEGRATION_TESTS = [
# VPP tests used by VERIFY and MERGE jobs by OPNFV Jenkins
#
{
+ "Name": "vswitch_version_vpp",
+ "Deployment": "clean",
+ "Description": "VPP: vSwitch - determine VPP version and fail if it is not possible.",
+ "vSwitch" : "VppDpdkVhost",
+ "TestSteps": [
+ ['vswitch', 'run_vppctl', ['show', 'version', 'verbose'], '|Version:\s+(v\d+\.\d+)'],
+ ['tools', 'assert', 'len(#STEP[-1][0])'],
+ ]
+ },
+ {
"Name": "vswitch_vports_add_del_connection_vpp",
"Deployment": "clean",
"Description": "VPP: vSwitch - configure switch with vports, add and delete connection",
+ "vSwitch" : "VppDpdkVhost",
"TestSteps": [
['vswitch', 'add_switch', 'int_br0'],
['vswitch', 'add_vport', 'int_br0'],