chore: fix piped test errors being suppressed #1396
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
By explicitly configuring
shell: bash
in test step it enablesset -eo pipefail
(documentation) which means errors in left side of pipe will no longer be suppressed by the success of the right side of the pipe.go test -race -v ./... | tee test_results.txt
Additionally, with new
pipefail
being set, if line that runs the testgo test -race -v ./... | tee test_results.txt
fails (i.e. a test fails) than this causes an exit code and for the line below itgo-junit-report ...
not to be run which in turn disables flakybot from working as it requires XML sponge log.By moving the convert XML functionality to its own step in the workflow we can make sure it always runs no matter what happens with the tests.