Add sonar-prescan-script jobs for maven
[releng/global-jjb.git] / shell / tox-run.sh
index af3ac7a..68a5af9 100644 (file)
@@ -13,6 +13,9 @@ echo "---> tox-run.sh"
 # do not use -o pipefail
 set -eux
 
+#Ensure that tox from tox-install.sh takes precedence.
+PATH=$HOME/.local/bin:$PATH
+
 ARCHIVE_TOX_DIR="$WORKSPACE/archives/tox"
 ARCHIVE_DOC_DIR="$WORKSPACE/archives/docs"
 mkdir -p "$ARCHIVE_TOX_DIR"
@@ -27,8 +30,11 @@ if [[ -d /opt/pyenv ]]; then
     export TOX_TESTENV_PASSENV=PYTHONPATH
 fi
 
+#Useful debug
+tox --version
+
 PARALLEL="${PARALLEL:-true}"
-if [[ ${PARALLEL} = true ]]; then
+if [[ ${PARALLEL,,} = true ]]; then
     if [[ -n ${TOX_ENVS:-} ]]; then
         tox -e "$TOX_ENVS" --parallel auto --parallel-live | tee -a "$ARCHIVE_TOX_DIR/tox.log"
         tox_status="${PIPESTATUS[0]}"
@@ -52,7 +58,11 @@ echo "---> Completed tox runs"
 # shellcheck disable=SC2116
 for i in .tox/*/log; do
     tox_env=$(echo "$i" | awk -F'/' '{print $2}')
-    cp -r "$i" "$ARCHIVE_TOX_DIR/$tox_env"
+    # defend against glob finding no matches
+    if ! cp -r "$i" "$ARCHIVE_TOX_DIR/$tox_env"; then
+        echo "WARN: no logs found to archive"
+        break
+    fi
 done
 
 # If docs are generated push them to archives.