-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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
Move Codecov Ignores to LCOV #9726
Conversation
7869808
to
b546cb8
Compare
@behlendorf , @freqlabs and @rlaager I finally manage to get the problems with ignoring paths researched and got the ignore working. 💯 |
Interesting find! There is a much newer version of this file available, do you see anything we might get out of updating it? |
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 does seem to work as intended. There's no longer any mention of the entire tests subdirectory in the codecov report and it's dropped by ~2300 lines which sounds reasonable.
@freqlabs But: I don't think there is much gain in an update either, simply because it doesn't do that much for us and much of its features/flags do not seem to be used by us. Besides: An update of this file, seems to be beter combined with a complete update of the autoconf stack and combining it with an added ignore flag seems out-of-scope of both. |
b546cb8
to
72be14a
Compare
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.
Seems reasonable to me!
Thanks for the fast feedback and review guys, appreciate it! :) |
.github/codecov.yml is missing the end-of-file newline. (You can see this in the GitHub diff viewer.) |
- Removes broken codecov ignore - Places ignore section in ax_code_coverage - Forwards users from codecov to LCOV for ignores Signed-off-by: Kjeld Schouten-Lebbing <kjeld@schouten-lebbing.nl>
72be14a
to
ea4cf40
Compare
@rlaager Thanks for noticing, totally missed that. |
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
Codecov Report
@@ Coverage Diff @@
## master #9726 +/- ##
=========================================
+ Coverage 79% 79% +<1%
=========================================
Files 420 385 -35
Lines 123654 121282 -2372
=========================================
- Hits 98136 96340 -1796
+ Misses 25518 24942 -576
Continue to review full report at Codecov.
|
TL:DR
Signed-off-by: Kjeld Schouten-Lebbing kjeld@schouten-lebbing.nl
Motivation and Context
After many hours trying to figure out why we/I couldn't get codecov ignore working I have finally solved the problem.
The issue with codecov ignore came out to be two fold:
This leads to my conclusion:
If we want to ignore folders, we beter not rely on codecov to do it for us.
Description
This PR ignores folders, by removing them from the report before they are send to codecov. As this is actually opensource and maintainable by OpenZFS/ZoL, I expect this to keep be a more sustainable long-term solution and this would even survive changing codecov-report-provider.
Before you ask: Why the wildcard prefix?
Removing /var/lib/buildbot/slaves/zfs/Ubuntu_17_04_x86_64_Coverage__TEST_/build/zfs/tests/zfs-tests/cmd/file_check/file_check.c
Not:
tests/zfs-tests/cmd/file_check/file_check.c
It's a bit of an oddity or bug with lcov, but it does not lead to sideeffects on the ZFS codebase.
Before you ask: Do we really need an ignore at all?
It would be cleaner to ignore tests covering themselves, but yes that wouldn't in itself warrant a change. However some PR's in the future might rely on externally maintained libraries that are not covered by our tests completely, an ignore would be essential to keep codecoverage reports representing actual coverage of zfs. (an example of which is/could be ZSTD)
How Has This Been Tested?
Currently it's a draft. As soon as I get all tests to pass, i'll note it down and open it up for review.
Types of changes
Checklist:
Signed-off-by
.