feat(vpp): run make test and hs-test in the coverage job 57/42957/5
authorSemir Sionek <[email protected]>
Wed, 14 May 2025 14:01:39 +0000 (14:01 +0000)
committerSemir Sionek <[email protected]>
Mon, 19 May 2025 13:54:33 +0000 (13:54 +0000)
Change-Id: I378eb24b9b22d3ced166efdbabb6b514e627c958
Signed-off-by: Semir Sionek <[email protected]>
jjb/scripts/publish_cov.sh
jjb/scripts/vpp/cov-build.sh
jjb/vpp/vpp.yaml

index cdbbcdd..67082d5 100644 (file)
@@ -49,3 +49,36 @@ terraform apply -no-color -auto-approve
 popd
 
 echo "S3 Test Coverage: <a href=\"https://${CDN_URL}/${bucket_path}\">https://${CDN_URL}/${bucket_path}</a>"
+
+# Check result
+FAILED_TESTS=""
+FAILED_HSTESTS=""
+
+FAILURE_REGEX='--- addFailure\(\) ([A-Za-z0-9-]+\.[a-zA-Z0-9_-]+)'
+for dir in /tmp/vpp-failed-unittests/*; do
+    TESTCLASS_LOG="$(gunzip -c $dir/log.txt.gz)"
+    while [[ $TESTCLASS_LOG =~ $FAILURE_REGEX ]]; do
+        FAILED_TESTS="$FAILED_TESTS${BASH_REMATCH[1]}"$'\n'
+       TESTCLASS_LOG=${TESTCLASS_LOG/"${BASH_REMATCH[0]}"/}
+    done
+done
+if [[ -n $FAILED_TESTS ]]; then
+    echo -e "make test coverage run failed!\nFailed tests:\n$FAILED_TESTS"
+else
+    echo "make test coverage run succeeded!"
+fi
+if [[ -f "${WORKSPACE}/extras/hs-test/summary/report.json" ]]; then
+    FAILED_HSTESTS=$(jq '.[].SpecReports[] | select(.State=="failed").LeafNodeText' "${WORKSPACE}/extras/hs-test/summary/report.json")
+    if [[ -n $FAILED_HSTESTS ]]; then
+       echo -e "hs-test coverage run failed!\nFailed tests:\n$FAILED_HSTESTS"
+    else
+        echo "hs-test coverage run succeeded!"
+    fi
+else
+    echo "hs-test framework failed!"
+fi
+
+if [[ -n $FAILED_TESTS || -n $FAILED_HSTESTS ]]; then
+   die "Some tests failed, check the log!"
+fi
+
index 268b9b4..fcc3d9f 100755 (executable)
@@ -85,7 +85,7 @@ make_test_coverage_report() {
         fi
     fi
     if grep -q "${OS_ID}-${OS_VERSION_ID}" <<< "${MAKE_TEST_OS}"; then
-        if ! make COMPRESS_FAILED_TEST_LOGS=yes TEST_JOBS="$TEST_JOBS" CCACHE_DISABLE=1 test-cov ; then
+        if ! make COMPRESS_FAILED_TEST_LOGS=yes TEST_JOBS="$TEST_JOBS" CCACHE_DISABLE=1 test-cov-both ; then
             BUILD_ERROR="FAILED 'make test-cov'"
             return
         fi
index 43fa364..1841a90 100644 (file)
           - ../scripts/vpp/cov-build.sh
 
     publishers:
-      - fdio-infra-publish-cov-7day
       - fdio-infra-publish
+      - fdio-infra-publish-cov-7day
 # [end] VPP-COV-VERIFY JOB TEMPLATE
 
 # VPP-CSIT-VERIFY-PERF JOB TEMPLATE