X-Git-Url: https://gerrit.linuxfoundation.org/infra/gitweb?a=blobdiff_plain;f=.jjb-test%2Fexpected-xml%2Fgithub-python-tox-verify-master;h=199e18c4a69cf4a8358b7ee7229dd566a4ffd4a5;hb=refs%2Fchanges%2F29%2F7529%2F1;hp=31b825ec8d7195034ba010d0a6c6e0a416ed64df;hpb=0ea33652f2dbed50a617fc62a80d1df9d56fb3ae;p=releng%2Fglobal-jjb.git diff --git a/.jjb-test/expected-xml/github-python-tox-verify-master b/.jjb-test/expected-xml/github-python-tox-verify-master index 31b825ec..199e18c4 100644 --- a/.jjb-test/expected-xml/github-python-tox-verify-master +++ b/.jjb-test/expected-xml/github-python-tox-verify-master @@ -96,7 +96,7 @@ Example: docs,py2,py3 - ** + $sha1 @@ -273,20 +273,56 @@ pipdeptree # which accompanies this distribution, and is available at # http://www.eclipse.org/legal/epl-v10.html ############################################################################## -echo "---> tox-install.sh" +echo "---> tox-run.sh" # Ensure we fail the job if any steps fail. # DO NOT set -u as virtualenv's activate script has unbound variables set -e -o pipefail +ARCHIVE_TOX_DIR="$WORKSPACE/archives/tox" +mkdir -p "$ARCHIVE_TOX_DIR" + cd "$WORKSPACE/$TOX_DIR" -if [ -n "$TOX_ENVS" ]; -then - tox -e "$TOX_ENVS" +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[*]} else - tox + for env in "${TOX_ENVS[@]}"; do + run_tox "$ARCHIVE_TOX_DIR" "$env" + done 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 + +echo "Completed tox runs." @@ -369,7 +405,7 @@ echo "---> create-netrc.sh" # Ensure we fail the job if any steps fail. set -eu -o pipefail -NEXUS_URL="${NEXUS_URL:-$NEXUSPROXY}" +NEXUS_URL="${NEXUSPROXY:-$NEXUS_URL}" CREDENTIAL=$(xmlstarlet sel -N "x=http://maven.apache.org/SETTINGS/1.0.0" \ -t -m "/x:settings/x:servers/x:server[x:id='${SERVER_ID}']" \ -v x:username -o ":" -v x:password \ @@ -379,7 +415,7 @@ machine=$(echo "$NEXUS_URL" | awk -F/ '{print $3}') user=$(echo "$CREDENTIAL" | cut -f1 -d:) pass=$(echo "$CREDENTIAL" | cut -f2 -d:) -echo "machine $machine login $user password $pass" > ~/.netrc +echo "machine ${machine%:*} login $user password $pass" > ~/.netrc @@ -495,7 +531,7 @@ then echo "WARNING: Logging server not set" else - NEXUS_URL="${NEXUS_URL:-$NEXUSPROXY}" + NEXUS_URL="${NEXUSPROXY:-$NEXUS_URL}" NEXUS_PATH="${SILO}/${JENKINS_HOSTNAME}/${JOB_NAME}/${BUILD_NUMBER}" BUILD_URL="${BUILD_URL}" @@ -567,5 +603,14 @@ rm ~/.netrc test-credential + + + + npmrc + $HOME/.npmrc + + + +