Ferlab-Ste-Justine / Post-processing-Pipeline

Variant analysis for genome and exome VGCFs
Apache License 2.0
0 stars 0 forks source link

Feat/clin 2947 add exomiser #25

Closed LysianeBouchard closed 1 month ago

LysianeBouchard commented 2 months ago

This PR introduce the exomiser tool in the pipeline. Additionally, it introduces a new parameter called tools, which allows users to specify whether VEP, Exomiser, or both should be executed.

Additionally, there is some refactoring in the main workflow (postprocessing.nf) to use the def keyword and more standard variable names. I could not do it only for exomiser variables as, strangely, the code was not compiling when a channel with local scope was derived from a channel with non-local scope.

Here is the associated JIRA for exomiser: https://ferlab-crsj.atlassian.net/browse/CLIN-2947

Limitations

For the schema, if-else blocks are used to conditionally require exomiser/vep parameters based on the value of the tools parameter.

If an exomiser or vep parameter is removed/added/modified, the logic in the if-else block will need to be manually updated. For example, if the removed parameter was required, it must be manually removed from the list of required parameters.

Tests

Running the pipeline:

Note: the V3 dataset covers REMM and CADD data sources and produces non empty exomiser files.

Linter:

Test the schema:

Test exomiser/vep parameter validation (stub mode)

Extra tests with CADD/REMM

Validate json format is supported for analysis files and familyPheno files:

PR checklist