hs-test: fixed incorrect exit status 91/42291/2
authorAdrian Villin <[email protected]>
Thu, 30 Jan 2025 18:14:24 +0000 (19:14 +0100)
committerDave Wallace <[email protected]>
Wed, 5 Feb 2025 15:25:47 +0000 (15:25 +0000)
Type: fix

Change-Id: Icabe556448ad7109f4802ad48a701667911652de
Signed-off-by: Adrian Villin <[email protected]>
(cherry picked from commit d39fa81d599f53d67994e79c6816369688d8f4cd)

extras/hs-test/hs_test.sh

index 59edf57..4a9378c 100644 (file)
@@ -140,25 +140,40 @@ fi
 mkdir -p summary
 # shellcheck disable=SC2086
 sudo -E go run github.com/onsi/ginkgo/v2/ginkgo --json-report=summary/report.json $ginkgo_args -- $args
+exit_status=$?
 
-if [ $? != 0 ]; then
+if [ -e "summary/failed-summary.log" ]; then
+        rm summary/failed-summary.log
+fi
+
+if [ $exit_status != 0 ]; then
     jq -r '.[0] | .SpecReports[] | select((.State == "failed") or (.State == "timedout") or (.State == "panicked")) | select(.Failure != null) |
 "TestName:
     \(.LeafNodeText)
 Suite:
     \(.Failure.FailureNodeLocation.FileName)
 Message:\n"
-+(if .ReportEntries? then .ReportEntries[] | select(.Name == "VPP Backtrace") |
-"\tVPP crashed
++ (
+    if .ReportEntries? then
+        (.ReportEntries[] | select(.Name == "VPP Backtrace") |
+        "\tVPP crashed
 Full Back Trace:
-\(.Value.Representation | ltrimstr("{{red}}") | rtrimstr("{{/}}"))" else
-    "\(.Failure.Message)"
-     + (if .Failure.Message == "A spec timeout occurred" then "\n" else
-"\nFull Stack Trace:
-\(.Failure.Location.FullStackTrace)\n" end) end)' summary/report.json > summary/failed-summary.log \
-       && echo "Summary generated -> summary/failed-summary.log"
+\(.Value.Representation | ltrimstr("{{red}}") | rtrimstr("{{/}}"))"
+        ) // "\(.Failure.Message)"
+    else
+        "parse error"
+    end
+)
++ (
+    if .Failure.Message == "A spec timeout occurred" then
+        "\n"
+    else
+        "\nFull Stack Trace:
+\(.Failure.Location.FullStackTrace)\n"
+    end
+)' summary/report.json > summary/failed-summary.log \
+&& echo "Summary generated -> summary/failed-summary.log"
+    exit $exit_status
 else
-    if [ -e "summary/failed-summary.log" ]; then
-        rm summary/failed-summary.log
-    fi
+    exit $exit_status
 fi