-
Notifications
You must be signed in to change notification settings - Fork 326
Restructure pipeline configs to improve discoverability #854
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
base: master
Are you sure you want to change the base?
Conversation
37db7f0
to
6d2e3ce
Compare
I support this! At least for me is easy to see now. |
This might be a good Hackathon task thinking about it (just moving stuff around), but we would need to coordinate with @mashehu as will need to update how the website parses this repo |
Yep, please don't move anything without updating the website at the same time. My hope is that surfacing them on the website with the latest website upgrade should solve already a lot of the discoverability. |
Can I get an overview of what you're doing that improves discoverability? Each config and related material (docs, pipeline) is put in a folder with the profile name? I think the README should be right next to the config. What other discoverability issues are there?
|
Hey @mahesh-panchal, sorry for missing this. I think it's also around the pipeline-specific configs and the discoverability of that. I think a lot of people look for the examples, and then they find them hidden under layers and layers of directories and spread all over the place. The way this ended up structured is that we're organizing based on the "types" of things. We're matching "this is a doc," "this is a pipeline config," and "this is an HPC system config." Versus "Here's all of this specific HPC system's docs and configs in one directory". |
- Rename conf/uppmax/uppmax.config to conf/uppmax/nextflow.config - Rename conf/uppmax/pipeline/ to conf/uppmax/pipelines/ - Move pipeline-specific configs to their own subdirectories: - conf/pipeline/sarek/uppmax.config → conf/uppmax/pipelines/sarek/nextflow.config - conf/pipeline/ampliseq/uppmax.config → conf/uppmax/pipelines/ampliseq/nextflow.config - Move pipeline documentation to co-located README files: - docs/pipeline/sarek/uppmax.md → conf/uppmax/pipelines/sarek/README.md - docs/pipeline/ampliseq/uppmax.md → conf/uppmax/pipelines/ampliseq/README.md - Remove duplicate config and documentation files All uppmax-related files are now co-located under conf/uppmax/ with consistent naming conventions (nextflow.config, README.md). 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
Current Structure Analysis
Target Structure
Actions Required
|
Update the includeConfig path for uppmax profile to point to the new location at conf/uppmax/nextflow.config after directory reorganization. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <[email protected]>
I don't think it's just the discoverability that would benefit from the new structure that @edmundmiller but for creation and maintenance, which the website would not help. Alongside the examples that @edmundmiller mentioned: everything is self contained in a single directory - it's easier to cross reference your 'own' configs related to the same infra with fewer clicks and to modify in the same way (e.g. imagine doing a global search/replace in an IDE across all configs - the restriction pattern will be a single directory Vs a more complex pattern with the current system). It also would make initialisation of templates for configs etc much simpler in the future - something that the config builder that @mirpedrol has taken over would potentially benefit from. So /approve (if that would work here... Maybe this could be an RFC @edmundmiller ) Also I guess you could probably write a little script to update the structure across all the configs @edmundmiller ? |
Edit: oh you did that already 🤣 |
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.
Agree with the above, I like this 👍🏻 The repo is old and has grown in scope over time, this structure makes more sense now, given the content that it now creates.
I don't think that it should affect pipelines, as they only import the one file, which imports everything else (yay past-us for doing that). So it's just the website that needs updating to match. Plus this PR should include all files to rename.
Not sure that it's worthy of a hackathon project. It should be a 5 minute job with Claude Code. Not sure how complex the website update will be, but again I'd be surprised if it's that bad.
I think restructuring the configs across the board like this would make it easier for new maintainers to find configs for pipeline for their institutions.