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

nf-core container download for downloading #2408

Open
adamrtalbot opened this issue Aug 21, 2023 · 3 comments
Open

nf-core container download for downloading #2408

adamrtalbot opened this issue Aug 21, 2023 · 3 comments
Labels
download nf-core download enhancement

Comments

@adamrtalbot
Copy link
Contributor

Description of feature

Break out the feature for downloading singularity containers from nf-core download and put it in it's own command line. When running nf-core download the tool could incorporate this function as part of it.

Modularity will help #2407 and possibly #2406 via breaking each tool into it's constituent components. The next step will be to give each it's own CLI.

@MatthiasZepper
Copy link
Member

Indeed, a massive refactoring and rewrite of the nf-core download tool is required, that should

  • Refactor the whole codebase into separate, more modular classes
  • Make use of nextflow inspect for container detection.
  • Sport a separate container download CLI command. (Should also support docker then?)
  • Implement the new GUI with Textualize

Any volunteers?

@edmundmiller
Copy link
Contributor

Talking to @MatthiasZepper in Office Hours

I understood his recommendation is to separate into two separate commands
nf-core containers - Using nextflow inspect or just the wave-api
nf-core downloads - legacy anything pre tools 3.0

@MatthiasZepper Also pitched that an issue with nextflow inspect is the need for a profile. We could just skip nextflow inspect and pull all the environment.ymls and pass them to the wave-api, which will do it's hashing magic and return the containers. I think this is pretty clever.

@MatthiasZepper
Copy link
Member

MatthiasZepper commented Jul 10, 2024

I just learned that Phil has already come up with a similar solution. Like him, I was also thinking of a custom config file with container specifications, like in POC1. The difference between our proposals is that Phil want to create it upfront and include it into pipeline releases, while I suggest that nf-core download could generate it when downloading the pipeline.

In either way, the first step to implementing the desired modularity would be to start work on #2940 and move the new cleaned class WorkflowRepo out of the download command to a separate file from which it can be imported into both, the new nf-core container command and the refactored download command.

Some more ramblings are here btw.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
download nf-core download enhancement
Projects
None yet
Development

No branches or pull requests

3 participants