-
Notifications
You must be signed in to change notification settings - Fork 204
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
Breakout unit testing per OS. Issue: #353 #354
Conversation
@@ -1,4 +1,4 @@ | |||
name: build-and-test | |||
name: build-and-test-macos |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We only need one workflow that uploads test coverage. Can you remove the upload step from this workflow?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should be ok now
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
From what I can remember, we do need coverage uploads for each OS because some tests don't run on every runner
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is there no conflict/overriding that happens when we have multiple coverages being published for the same PR? I'll have to look into that again.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Read up on Codecov and there's no issue: https://docs.codecov.com/docs/merging-reports We should upload coverage from all of the workflows
Hi @GuillaumeBchd , thanks for opening up a PR for this. Still did not expect this though after opening my PR #355. However, there are some changes but you can look at my changes and will answer all of the changes though |
|
||
- name: Test | ||
run: make test | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please add the
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v2
with:
verbose: true
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why do we want to have all of the runners publish test coverage
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Assuming we retrying a single workflow and due to facts that our test are flakiness, so sometimes we cannot cover all of our tests. Therefore, uploading a test coverage for single workflow is to address this problem.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Uploading coverage from all of the OS workflows does not address test flakiness. That being said, it does make sense that we need to run it on all our OS because windows tests would only get run on the windows workflow, and Codecov does automatic report merging, so there's no conflict there. I was under the impression that different code coverage reports would overwrite previous ones on the same commit.
Please also changes to |
Codecov Report
@@ Coverage Diff @@
## master #354 +/- ##
==========================================
- Coverage 57.33% 57.15% -0.18%
==========================================
Files 359 370 +11
Lines 16471 17231 +760
==========================================
+ Hits 9443 9848 +405
- Misses 6488 6805 +317
- Partials 540 578 +38
Continue to review full report at Codecov.
|
…alling make, doing make test and make build, added upload to codecov in the windows pipeline
Please delete |
…-test-windows.yml
It should already be deleted |
You are right. My mistake though. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM.
Description of the issue
The "build.yml" workflow does both linux and macos build and test. This could lead to the failure of both of them if one of them fails and then require to rerun everything all over again for both OS, which is both costly and time consuming.
Link to the issue: #353
Description of changes
Split the "build.yml" workflow into "build-test-linux.yml" and "build-test-macos.yml".
License
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.
Tests
Pushed the same code in another fork and have run both of these workflow successfully .