diff options
| author | Glease <4586901+Glease@users.noreply.github.com> | 2022-03-02 01:29:49 +0800 |
|---|---|---|
| committer | Glease <4586901+Glease@users.noreply.github.com> | 2022-03-02 01:29:49 +0800 |
| commit | 11a61c3c2c32ac47bc2d63e1fc0c8734f8acc285 (patch) | |
| tree | 9011c314818fc2d68c62471436b4f26d0e1be71a /.github/scripts/test_no_error_reports | |
| parent | 345c435b7b2022f1ba095c44516d0d067d8606f4 (diff) | |
| download | GT5-Unofficial-11a61c3c2c32ac47bc2d63e1fc0c8734f8acc285.tar.gz GT5-Unofficial-11a61c3c2c32ac47bc2d63e1fc0c8734f8acc285.tar.bz2 GT5-Unofficial-11a61c3c2c32ac47bc2d63e1fc0c8734f8acc285.zip | |
structurelib support for LSC
Diffstat (limited to '.github/scripts/test_no_error_reports')
| -rwxr-xr-x | .github/scripts/test_no_error_reports | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/.github/scripts/test_no_error_reports b/.github/scripts/test_no_error_reports new file mode 100755 index 0000000000..1fcc7396c6 --- /dev/null +++ b/.github/scripts/test_no_error_reports @@ -0,0 +1,51 @@ +#!/usr/bin/env bash + +# bashsupport disable=BP5006 # Global environment variables +RUNDIR="run" \ + CRASH="crash-reports" \ + SERVERLOG="server.log" + +# enable nullglob to get 0 results when no match rather than the pattern +shopt -s nullglob + +# store matches in array +crash_reports=("$RUNDIR/$CRASH/crash"*.txt) + +# if array not empty there are crash_reports +if [ "${#crash_reports[@]}" -gt 0 ]; then + # get the latest crash_report from array + latest_crash_report="${crash_reports[-1]}" + { + printf 'Latest crash report detected %s:\n' "${latest_crash_report##*/}" + cat "$latest_crash_report" + } >&2 + exit 1 +fi + +if grep --quiet --fixed-strings 'Fatal errors were detected' "$SERVERLOG"; then + { + printf 'Fatal errors detected:\n' + cat server.log + } >&2 + exit 1 +fi + +if grep --quiet --fixed-strings 'The state engine was in incorrect state ERRORED and forced into state SERVER_STOPPED' \ + "$SERVERLOG"; then + { + printf 'Server force stopped:' + cat server.log + } >&2 + exit 1 +fi + +if ! grep --quiet --perl-regexp --only-matching '.+Done \(.+\)\! For help, type "help" or "\?"' "$SERVERLOG"; then + { + printf 'Server did not finish startup:' + cat server.log + } >&2 + exit 1 +fi + +printf 'No crash reports detected' +exit 0 |
