Refactor: Simplify and improve readability
[releng/global-jjb.git] / shell / tox-run.sh
index 68a5af9..4321ea6 100644 (file)
@@ -34,23 +34,27 @@ fi
 tox --version
 
 PARALLEL="${PARALLEL:-true}"
-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]}"
-    else
-        tox --parallel auto --parallel-live | tee -a "$ARCHIVE_TOX_DIR/tox.log"
-        tox_status="${PIPESTATUS[0]}"
-    fi
-else
-    if [[ -n ${TOX_ENVS:-} ]]; then
-        tox -e "$TOX_ENVS" | tee -a "$ARCHIVE_TOX_DIR/tox.log"
-        tox_status="${PIPESTATUS[0]}"
-    else
-        tox | tee -a "$ARCHIVE_TOX_DIR/tox.log"
-        tox_status="${PIPESTATUS[0]}"
-    fi
-fi
+TOX_OPTIONS_LIST=""
+
+if [[ -n ${TOX_ENVS:-} ]]; then
+    TOX_OPTIONS_LIST=$TOX_OPTIONS_LIST" -e $TOX_ENVS"
+fi;
+
+case ${PARALLEL,,} in
+    true|auto )
+        TOX_OPTIONS_LIST=$TOX_OPTIONS_LIST" --parallel auto --parallel-live";;
+    all )
+        TOX_OPTIONS_LIST=$TOX_OPTIONS_LIST" --parallel all --parallel-live";;
+    [0-9]* )
+        TOX_OPTIONS_LIST=$TOX_OPTIONS_LIST" --parallel ${PARALLEL} --parallel-live";;
+esac
+
+
+# $TOX_OPTIONS_LIST are intentionnaly not surrounded by quotes
+# to correcly pass options to tox
+# shellcheck disable=SC2086
+tox $TOX_OPTIONS_LIST | tee -a "$ARCHIVE_TOX_DIR/tox.log"
+tox_status="${PIPESTATUS[0]}"
 
 echo "---> Completed tox runs"