openvax / neoantigen-vaccine-pipeline

Bioinformatics pipeline for selecting patient-specific cancer neoantigen vaccines
Apache License 2.0
75 stars 25 forks source link

Overriding yaml file paths using parameters in dockerless mode #150

Open gongyixiao opened 2 years ago

gongyixiao commented 2 years ago

https://github.com/openvax/neoantigen-vaccine-pipeline/blob/d2af22c68a93a4b7b5e36d740fb16bdd84f5feb8/run_snakemake.py#L335-L339

This is not practical to do.

Basically if you want to override the the tumor fastq files in the input for example using the below file: /home/user/tumor/tumor.fastq.gz

What you need to put into the yaml file is /home/user/inputs/tumor.fastq.gz and use the below argument: --inputs /tumor/

I don't think it makes any sense since these are all non existing paths

Same thing for --outputs and --reference-genome

Even worse, if you have multiple /inputs words in your path, they will all be replaced by --inputs and it will never be correct. /home/user/inputs/fastq/tumor/tumor.fastq.gz has to be /home/user/inputs/fastq/inputs/tumor.fastq.gz and will be replaced by --inputs /tumor and become /home/user/tumor/fastq/tumor/tumor/fastq.gz.

Due to the way the program wrote to parse the parameters, I think it's not an easy fix. But I think it's really necessary to make the change for Dockerless run or singularity run working.