From: Lott, Christopher (cl778h) Date: Thu, 26 Mar 2020 21:32:23 +0000 (-0400) Subject: Repair tox-run for case of no tox logs to archive X-Git-Tag: v0.53.0~13 X-Git-Url: https://gerrit.linuxfoundation.org/infra/gitweb?a=commitdiff_plain;h=refs%2Fchanges%2F20%2F63520%2F1;p=releng%2Fglobal-jjb.git Repair tox-run for case of no tox logs to archive Revise tox-run.sh to guard against glob matching no tox log files. In that case the pattern is passed to the cp command, which fails. Detect the cp failure ('cp: cannot stat ..') and exit the loop. I introduced this new and undesired behavior by adding -e in change 76a0761, so the script stops when the cp command fails. Change-Id: I1d60bb69e270c4aea413f4f14cf2d4f8f672853b Signed-off-by: Lott, Christopher (cl778h) --- diff --git a/releasenotes/notes/tox-defend-no-logs-ce81e3136a6816ce.yaml b/releasenotes/notes/tox-defend-no-logs-ce81e3136a6816ce.yaml new file mode 100644 index 00000000..e48e2316 --- /dev/null +++ b/releasenotes/notes/tox-defend-no-logs-ce81e3136a6816ce.yaml @@ -0,0 +1,8 @@ +--- +fixes: + - | + Revise tox-run.sh to guard against glob matching no tox log files. + In that case the pattern is passed to the cp command, which fails. + Detect the cp failure ('cp: cannot stat ..') and exit the loop. + This new and undesired behavior was introduced by adding -e in + change 76a0761, so the script stops when the cp command fails. diff --git a/shell/tox-run.sh b/shell/tox-run.sh index af3ac7a1..498ddc7f 100644 --- a/shell/tox-run.sh +++ b/shell/tox-run.sh @@ -52,7 +52,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.