X-Git-Url: https://gerrit.linuxfoundation.org/infra/gitweb?a=blobdiff_plain;f=shell%2Ftox-run.sh;h=97f8855b6aa97e52a3a0920673b676049ac9da2b;hb=5e403dec080850163f75cf80e0317fcf839d69aa;hp=45cb1f20a99803dbdd8f5785ba335b8b1ef7926b;hpb=1945ffb09e4857fbe7e6b14310dbbcf84a50a361;p=releng%2Fglobal-jjb.git diff --git a/shell/tox-run.sh b/shell/tox-run.sh index 45cb1f20..97f8855b 100644 --- a/shell/tox-run.sh +++ b/shell/tox-run.sh @@ -19,42 +19,16 @@ mkdir -p "$ARCHIVE_TOX_DIR" cd "$WORKSPACE/$TOX_DIR" -if [ -z "$TOX_ENVS" ]; then - TOX_ENVS=$(crudini --get tox.ini tox envlist) -fi - -run_tox() { - local log_dir="$1" - local env="$2" - - # Sleep a random 10 second interval to workaround tox sdist - # conflicts due to building in the same dist directory. - sleep $[ ( $RANDOM % 10 ) + 1 ]s - - echo "-----> Running tox $env" - if ! tox -e $env > "$log_dir/tox-$env.log"; then - echo "$env" >> "$log_dir/failed-envs.log" - fi -} - -TOX_ENVS=(${TOX_ENVS//,/ }) -if hash parallel 2>/dev/null; then - export -f run_tox - parallel --jobs 200% "run_tox $ARCHIVE_TOX_DIR {}" ::: ${TOX_ENVS[*]} +if [ ! -z "$TOX_ENVS" ]; then + detox -e "$TOX_ENVS" | tee -a "$ARCHIVE_TOX_DIR/detox.log" else - for env in "${TOX_ENVS[@]}"; do - run_tox "$ARCHIVE_TOX_DIR" "$env" - done + detox | tee -a "$ARCHIVE_TOX_DIR/detox.log" fi -if [ -f "$ARCHIVE_TOX_DIR/failed-envs.log" ]; then - failed_envs=($(cat "$ARCHIVE_TOX_DIR/failed-envs.log")) - for e in "${failed_envs[@]}"; do - echo "cat $ARCHIVE_TOX_DIR/tox-$e.log" - cat "$ARCHIVE_TOX_DIR/tox-$e.log" - done - echo "ERROR: Failed the following builds: ${failed_envs[*]}" - exit 1 -fi +# Disable SC2116 as we want to echo a space separated list of TOX_ENVS +# shellcheck disable=SC2116 +for i in $(echo "${TOX_ENVS//,/ }"); do + cp -r ".tox/$i/log" "$ARCHIVE_TOX_DIR/$i" +done echo "Completed tox runs."