bioconda/bioconda-utils

Make git-lfs available at cloning time ?

blinard-BIOINFO opened this issue · 2 comments

If I'm not mistaken, when running mulled-tests, there seems to be no way to retrieve github test files that are stored via git-lfs.
E.g. files that after cloning appear as empty because not stored on github, but linked to their lfs storage.
If the package git-lfs is installed on the system, those are cloned too.
If a basal git installation is available, these files are cloned as empty files (actually just a few bytes, the link to the storage.

Note that for github, when creating a release archive, this files are by default not inserted in the archive.
Only workaround would be to have some CI releasing a custom archive where everything is present.

Potential workaround:
Make sure git-lfs is available when bioconda-utils clones something.
I know cloning is discouraged and archive are preferred, but they will not contain test files stored in this way without substantial work.

To reproduce:

  • repo: https://github.com/phylo42/IPK/
  • it contains some test files in tests/data
  • it is not cloned by bioconda-utils, right now I use wget to retrieve the raw test files. See recipe ipk (PR in the process of review).

I replied over on bioconda/bioconda-recipes#40369 (comment) -- since we don't run unit tests, it's not clear that this is needed for a recipe test.

Thanks for the reply, I understand and in my case, I will remove the test that indeed uses some data files and requires 10 minutes of CPU resources.

However, the choice of not including git-lfs capabilities should be documented.
It may be used even for very small files and tests, when the team approach is to manage any non-source file via lfs.