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

Add ability to install a nf-core module into a private module library #3174

Open
kenibrewer opened this issue Sep 17, 2024 · 6 comments
Open

Comments

@kenibrewer
Copy link
Member

Description of feature

As a maintainer of a non-nfcore modules library using nf-core tooling, I would like to be able to install nf-core modules and subworkflows into my non-nfcore modules library for use building subworkflows.

This is currently prevented by this check . It could be adjusted to check if the org_name is nf_core before failing.

@kenibrewer
Copy link
Member Author

@ewels This is one of the issues.

@ewels
Copy link
Member

ewels commented Sep 18, 2024

Will #3083 also fix this?

@mirpedrol
Copy link
Member

Will #3083 also fix this?

I don't think so, we would have to adapt the command a bit to allow installing modules on a modules repo.
But once combinations of different module sources are allowed, will you need to install an nf-core module into a non-nf-core repo?

@kenibrewer
Copy link
Member Author

kenibrewer commented Sep 19, 2024 via email

@mirpedrol
Copy link
Member

oh, that's something to take into account! 👀 🚨
So the only way in which we could test a subworkflow is to have a duplicate of the nf-core module? I am wondering if we could find an alternative, but I can't think of one right now.
The reason is that nf-core modules will easily get out of sync every time there is an update on the nf-core repo and you don't update them on your repo. And even if we are installing the nf-core modules directly from nf-core in a pipeline (which is what #3083 will implement), this will possibly cause subworkflows to break if an updated module is used.

@ewels ewels added this to the 3.1 milestone Sep 26, 2024
@awgymer
Copy link
Contributor

awgymer commented Oct 8, 2024

So the only way in which we could test a subworkflow is to have a duplicate of the nf-core module? I am wondering if we could find an alternative, but I can't think of one right now.

If #3083 is accepted you could set it up so that your tests install the subworkflow and then run the tests. This would of course necessitate having a pipeline type repo in your CI/CD in which to install the subworkflow into.

this will possibly cause subworkflows to break if an updated module is used

As it stands this sort of affects nf-core/modules already. If you update a module and change its input/output in a breaking way, it will break any subworkflow using it (of course this will be flagged by CI/CD).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants