mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2024-11-17 10:01:01 +03:00
3d0175d10e
There are cases, where some needed files for the summary page aren't created. Currently the whole Summary Page creation will fail then. Sample run: https://github.com/openzfs/zfs/actions/runs/11148248072/job/30999748588 Fix this, by properly checking for existence of the needed files. Reviewed-by: Tony Hutter <hutter2@llnl.gov> Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Reviewed-by: Rob Norris <robn@despairlabs.com> Signed-off-by: Tino Reichardt <milky-zfs@mcmilk.de> Closes #16599
58 lines
1.5 KiB
Bash
Executable File
58 lines
1.5 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
######################################################################
|
|
# 9) generate github summary page of all the testings
|
|
######################################################################
|
|
|
|
set -eu
|
|
|
|
function output() {
|
|
echo -e $* >> "out-$logfile.md"
|
|
}
|
|
|
|
function outfile() {
|
|
test -s "$1" || return
|
|
cat "$1" >> "out-$logfile.md"
|
|
}
|
|
|
|
function outfile_plain() {
|
|
test -s "$1" || return
|
|
output "<pre>"
|
|
cat "$1" >> "out-$logfile.md"
|
|
output "</pre>"
|
|
}
|
|
|
|
function send2github() {
|
|
test -f "$1" || exit 0
|
|
dd if="$1" bs=1023k count=1 >> $GITHUB_STEP_SUMMARY
|
|
}
|
|
|
|
# https://docs.github.com/en/enterprise-server@3.6/actions/using-workflows/workflow-commands-for-github-actions#step-isolation-and-limits
|
|
# Job summaries are isolated between steps and each step is restricted to a maximum size of 1MiB.
|
|
# [ ] can not show all error findings here
|
|
# [x] split files into smaller ones and create additional steps
|
|
|
|
# first call, generate all summaries
|
|
if [ ! -f out-1.md ]; then
|
|
logfile="1"
|
|
for tarfile in Logs-functional-*/qemu-*.tar; do
|
|
rm -rf vm* *.txt
|
|
if [ ! -s "$tarfile" ]; then
|
|
output "\n## Functional Tests: unknown\n"
|
|
output ":exclamation: Tarfile $tarfile is empty :exclamation:"
|
|
continue
|
|
fi
|
|
tar xf "$tarfile"
|
|
test -s env.txt || continue
|
|
source env.txt
|
|
output "\n## Functional Tests: $OSNAME\n"
|
|
outfile_plain uname.txt
|
|
outfile_plain summary.txt
|
|
outfile failed.txt
|
|
logfile=$((logfile+1))
|
|
done
|
|
send2github out-1.md
|
|
else
|
|
send2github out-$1.md
|
|
fi
|