You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Some of the workflow logic and works often need to be redefined both within the subworkflow as well as the main snakefile. This sometimes results in redundancy. If a change to workflow rule selection logic is made, it needs to be modified in both places the main snakfile and the subworkflow for correct/desired DAG.
For example:
Checks on whether to execute contamination subworkflow and summarize it's results is referenced in both main snakefile and sample_qc subworkflow:
Similar issue was noted when adding a logic to skip plink ibd in PR #367 .
Solution:
Unless there comes a use case to implement a secondary rule selection in main snakefile, It might be preferable to have rule selection logics defined in the subworkflow and the main snakefile simply replicates the subworkflow logic in an identical manner. The main Snakefile would be a good place to select which subworklfows gets executed. But the DAG of the concerned rules for subworkflow and main snakefile should be identical for ease in maintainence.
The text was updated successfully, but these errors were encountered:
Description:
Some of the workflow logic and works often need to be redefined both within the subworkflow as well as the main snakefile. This sometimes results in redundancy. If a change to workflow rule selection logic is made, it needs to be modified in both places the main snakfile and the subworkflow for correct/desired DAG.
For example:
Checks on whether to execute contamination subworkflow and summarize it's results is referenced in both main snakefile and sample_qc subworkflow:
GwasQcPipeline/src/cgr_gwas_qc/workflow/Snakefile
Line 51 in e326cda
GwasQcPipeline/src/cgr_gwas_qc/workflow/sub_workflows/sample_qc.smk
Line 254 in e326cda
Similar issue was noted when adding a logic to skip plink ibd in PR #367 .
Solution:
Unless there comes a use case to implement a secondary rule selection in main snakefile, It might be preferable to have rule selection logics defined in the subworkflow and the main snakefile simply replicates the subworkflow logic in an identical manner. The main Snakefile would be a good place to select which subworklfows gets executed. But the DAG of the concerned rules for subworkflow and main snakefile should be identical for ease in maintainence.
The text was updated successfully, but these errors were encountered: