Fix tox test loop in mvn-phase-script.sh 27/128327/1
authorEric Ball <eball@linuxfoundation.org>
Tue, 5 Apr 2022 22:54:50 +0000 (15:54 -0700)
committerEric Ball <eball@linuxfoundation.org>
Tue, 5 Apr 2022 22:58:35 +0000 (15:58 -0700)
This loop was not running correctly, because the find results were
being returned as a string rather than an array. The results always
contain a newline, and the complicated rev-cut-rev script seems to
be a workaround that fails if the wrong result is shown first.

By adding parentheses around the TOXINIS assignment command, the
results are returned as an array. We can then simply use bash's
dirname command to get the parent directory.

Issue-ID: MODELING-604
Signed-off-by: Eric Ball <eball@linuxfoundation.org>
Change-Id: I0881958395c7104f263928a3c4394fd141b79208

mvn-phase-script.sh

index 13b755e..ab8155e 100755 (executable)
@@ -50,9 +50,9 @@ run_tox_test()
   if [[ ${CURDIR} =~ "-sonar" ]]
   then
     echo "====Sonar job, need execute tox."
-    TOXINIS=$(find . -name "tox.ini")
+    TOXINIS=($(find . -name "tox.ini"))
     for TOXINI in "${TOXINIS[@]}"; do
-      DIR=$(echo "$TOXINI" | rev | cut -f3- -d'/' | rev)
+      DIR=$(dirname "$TOXINI")
       cd "${CURDIR}/${DIR}"
       rm -rf ./venv-tox ./.tox
       virtualenv ./venv-tox