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

check in large pyreport sample using git-lfs #22

Merged
merged 1 commit into from
Aug 2, 2024

Conversation

matt-codecov
Copy link
Collaborator

@matt-codecov matt-codecov commented Aug 1, 2024

Git LFS is a git extension that lets you check in "pointers" to large files and upload the files themselves to a separate LFS store (for us, that's GitHub's LFS server). it's powered by git hooks that make it seem as though the large files are actually in the repository when you're working with it locally

using it for large sample reports will let us write benchmarks or integration tests against large, real-world data without bloating the repository

$ brew install git-lfs
$ cd /path/to/codecov-rs
$ git lfs install

if we want to use LFS files in CI jobs, we will need to tell the checkout step to check out LFS files too somehow

Copy link

codecov bot commented Aug 1, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 99.16%. Comparing base (19cf114) to head (a072c52).
Report is 2 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main      #22   +/-   ##
=======================================
  Coverage   99.16%   99.16%           
=======================================
  Files          17       17           
  Lines        7526     7526           
=======================================
  Hits         7463     7463           
  Misses         63       63           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

.gitattributes Outdated
@@ -0,0 +1 @@
reports/large/** filter=lfs diff=lfs merge=lfs -text
Copy link
Contributor

Choose a reason for hiding this comment

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

These are the first real world "fixtures".

How about we put them in /fixtures/pyreport/large/…
Then we can add other things such as /fixtures/lcov/…, /fixtures/llvm/…, etc for various other coverage file fixtures.

Copy link
Collaborator Author

@matt-codecov matt-codecov Aug 2, 2024

Choose a reason for hiding this comment

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

hm, i think fixtures/**/large in .gitattributes would probably work in your scheme without making us have to remember to run git lfs track reports/pyreport/large each time we add a new dir

i was imagining the following which would Just Work with the current glob in .gitattributes:

reports/
  - large/
    - pyreport/
    - lcov/
  - pyreport/
  - lcov/

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

updated

@matt-codecov matt-codecov force-pushed the matt/add-git-lfs-large-reports branch from 93b2024 to a072c52 Compare August 2, 2024 20:12
@matt-codecov matt-codecov merged commit bef1685 into main Aug 2, 2024
5 checks passed
@matt-codecov matt-codecov deleted the matt/add-git-lfs-large-reports branch August 2, 2024 20:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants