Merge "Add PyPI stage templates"
authorJessica Wagantall <jwagantall@linuxfoundation.org>
Tue, 31 Mar 2020 23:44:43 +0000 (23:44 +0000)
committerGerrit Code Review <gerrit@linuxfoundation.org>
Tue, 31 Mar 2020 23:44:43 +0000 (23:44 +0000)
releasenotes/notes/tox-defend-no-logs-ce81e3136a6816ce.yaml [new file with mode: 0644]
shell/tox-run.sh

diff --git a/releasenotes/notes/tox-defend-no-logs-ce81e3136a6816ce.yaml b/releasenotes/notes/tox-defend-no-logs-ce81e3136a6816ce.yaml
new file mode 100644 (file)
index 0000000..e48e231
--- /dev/null
@@ -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.
index af3ac7a..498ddc7 100644 (file)
@@ -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.