X-Git-Url: https://gerrit.linuxfoundation.org/infra/gitweb?a=blobdiff_plain;f=.jjb-test%2Fexpected-xml%2Fgithub-python-tox-verify-master;h=38ac0dd2b0217d30fb8a9e49b621ad5b749e705d;hb=refs%2Fchanges%2F80%2F8380%2F3;hp=34e8959b0be25857cd7c38edd35136b78db6b843;hpb=069fe5a151b96af411f29c66f06e86c5e263b704;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 34e8959b..38ac0dd2 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 @@ -236,6 +236,11 @@ lftools --version # pipdeptree + + + PYTHON_VERSION=python3 + + #!/bin/bash # SPDX-License-Identifier: EPL-1.0 @@ -253,17 +258,19 @@ echo "---> tox-install.sh" # DO NOT set -u as virtualenv's activate script has unbound variables set -e -o pipefail -virtualenv --quiet "/tmp/v/tox" +virtualenv --quiet -p "$PYTHON_VERSION" "/tmp/v/tox" # shellcheck source=/tmp/v/tox/bin/activate disable=SC1091 source "/tmp/v/tox/bin/activate" pip install --quiet --upgrade pip pip install --quiet --upgrade pipdeptree -pip install --quiet --upgrade tox argparse +pip install --quiet --upgrade argparse detox tox tox-pyenv echo "----> Pip Dependency Tree" pipdeptree - -#!/bin/bash + + + + #!/bin/bash # SPDX-License-Identifier: EPL-1.0 ############################################################################## # Copyright (c) 2017 The Linux Foundation and others. @@ -275,48 +282,34 @@ pipdeptree ############################################################################## echo "---> tox-run.sh" +# shellcheck source=/tmp/v/tox/bin/activate disable=SC1091 +source "/tmp/v/tox/bin/activate" + # 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 [ -z "$TOX_ENVS" ]; then - TOX_ENVS=$(crudini --get tox.ini tox envlist) +if [ -d "/opt/pyenv" ]; then + echo "---> Setting up pyenv" + export PYENV_ROOT="/opt/pyenv" + export PATH="$PYENV_ROOT/bin:$PATH" 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")) - 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." @@ -362,9 +355,9 @@ SAR_DIR="$WORKSPACE/archives/sar-reports" mkdir -p "$SAR_DIR" cp "$SYSSTAT_PATH/"* "$_" # convert sar data to ascii format -while IFS="" read -r s +while IFS="" read -r sarfilenum do - [ -f "$s" ] && LC_TIME=POSIX sar -A -f "$s" > "$SAR_DIR/sar${s//[!0-9]/}" + [ -f "$sarfilenum" ] && LC_TIME=POSIX sar -A -f "$sarfilenum" > "$SAR_DIR/sar${sarfilenum//[!0-9]/}" done < <(find "$SYSSTAT_PATH" -name "sa[0-9]*" || true) # DON'T fail build if script fails. @@ -401,7 +394,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 \ @@ -411,7 +404,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 @@ -527,7 +520,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}" @@ -599,5 +592,14 @@ rm ~/.netrc test-credential + + + + npmrc + $HOME/.npmrc + + + +