genepi / nf-gwas

A nextflow pipeline to perform state-of-the-art genome-wide association studies.
https://genepi.github.io/nf-gwas
MIT License
62 stars 21 forks source link

Add basic nextflow_schema.json #68

Closed robsyme closed 1 year ago

robsyme commented 1 year ago

We noticed that the nf-gwas workflow did not have a nextflow_schema.json file that describes the workflow parameters in a formalized way.

Including this json file allows external tools to understand the workflow inputs and parameters. Given that the nf-validation is nearing release, including this schema may make it easier to do automated parameter validation before the workflow starts.

drpatelh commented 1 year ago

Some minor tweaks coming up.

drpatelh commented 1 year ago

Created a PR to your branch @robsyme https://github.com/robsyme/nf-gwas/pull/1

We have written a blog to show how to create and stay on top of the schema during pipeline development. Once it has been created hopefully, it is quite low maintainence when adding/removing new parameters. As Rob mentioned, there is some other cool stuff on the horizon that we will be able to do with the schema in Nextflow pipelines. https://seqera.io/blog/best-practices-for-deploying-pipelines-with-nextflow-tower/

TL;DR: If you install nf-core/tools you can use the nf-core schema build command in the root of the pipeline repo and that can load the schema up in a website for you to edit.

What the schema looks like when loaded in the Tower UI: image

Be awesome if you can sanity check the changes we have made please @seppinho @lukfor 🙏🏽 We mostly scraped your existing documentation and pipeline code to create the schema. Think it's mostly there but some extra eyes wouldn't go amiss.

drpatelh commented 1 year ago

Hola! Be great if we can get this into an official release please 🙏🏽 We are running the pipeline via a fork on Tower at the moment which isn't ideal.

drpatelh commented 1 year ago

Thank you 🚀

lukfor commented 1 year ago

Thanks for your help! 🙌