diff --git a/workflow/main.nf b/workflow/main.nf index 4ceed7a75f55ca37b624750c353649e281a0df25..c0f8594a1712070b8b2bdc500a52ff32a39d186c 100755 --- a/workflow/main.nf +++ b/workflow/main.nf @@ -79,7 +79,14 @@ chemistryParam = params.chemistryParam version = params.version outDir = params.outDir -// Define constant variables +// Define script files +check_designScript = Channel.fromPath("$baseDir/scripts/check_design.py") +filename_checkScript = Channel.fromPath("$baseDir/scripts/filename_check.sh") +versionsScript = Channel.fromPath("$baseDir/scripts/generate_versions.py") +referencesScript = Channel.fromPath("$baseDir/scripts/generate_references.py") +versions_pythonScript = Channel.fromPath("$baseDir/scripts/versions_python.sh") + +// Define report files multiqcConf = "${baseDir}/conf/multiqc_config.yaml" references = "${baseDir}/../docs/references.md" @@ -119,6 +126,7 @@ process checkDesignFile { input: file designLocation file fastqList + file check_designScript output: file("design.checked.csv") into designPaths @@ -131,7 +139,7 @@ process checkDesignFile { if [[ "\${noSpaceDesign}" != "${designLocation}" ]]; then mv "${designLocation}" "\${noSpaceDesign}" fi - python3 ${baseDir}/scripts/check_design.py -d \${noSpaceDesign} -f ${fastqList} + python3 check_design.py -d \${noSpaceDesign} -f ${fastqList} """ } @@ -179,6 +187,7 @@ process count211 { expectCells211 forceCells211 chemistryParam211 + file filename_checkScript output: file("**/outs/**") into outPaths211 @@ -193,7 +202,7 @@ process count211 { hostname ulimit -u 16384 ulimit -a - bash ${baseDir}/scripts/filename_check.sh -r ${ref} + bash filename_check.sh -r ${ref} cellranger count --id=${sample} --transcriptome=./${ref} --fastqs=. --sample=${sample} --expect-cells=${expectCells211} --chemistry=${chemistryParam211} sed -E 's/("([^"]*)")?(,|\$)/\\2\t/g' ${sample}/outs/metrics_summary.csv | tr -d "," | sed "s/^/${sample}\t/" > ${sample}_metrics_summary.tsv """ @@ -203,7 +212,7 @@ process count211 { hostname ulimit -u 16384 ulimit -a - bash ${baseDir}/scripts/filename_check.sh -r ${ref} + bash filename_check.sh -r ${ref} cellranger count --id=${sample} --transcriptome=./${ref} --fastqs=. --sample=${sample} --force-cells=${forceCells211} --chemistry=${chemistryParam211} sed -E 's/("([^"]*)")?(,|\$)/\\2\t/g' ${sample}/outs/metrics_summary.csv | tr -d "," | sed "s/^/${sample}\t/" > ${sample}_metrics_summary.tsv """ @@ -226,6 +235,7 @@ process count302 { expectCells302 forceCells302 chemistryParam302 + file filename_checkScript output: file("**/outs/**") into outPaths302 @@ -240,7 +250,7 @@ process count302 { hostname ulimit -u 16384 ulimit -a - bash ${baseDir}/scripts/filename_check.sh -r ${ref} + bash filename_check.sh -r ${ref} cellranger count --id=${sample} --transcriptome=./${ref} --fastqs=. --sample=${sample} --expect-cells=${expectCells302} --chemistry=${chemistryParam302} sed -E 's/("([^"]*)")?(,|\$)/\\2\t/g' ${sample}/outs/metrics_summary.csv | tr -d "," | sed "s/^/${sample}\t/" > ${sample}_metrics_summary.tsv """ @@ -250,7 +260,7 @@ process count302 { hostname ulimit -u 16384 ulimit -a - bash ${baseDir}/scripts/filename_check.sh -r ${ref} + bash filename_check.sh -r ${ref} cellranger count --id=${sample} --transcriptome=./${ref} --fastqs=. --sample=${sample} --force-cells=${forceCells302} --chemistry=${chemistryParam302} sed -E 's/("([^"]*)")?(,|\$)/\\2\t/g' ${sample}/outs/metrics_summary.csv | tr -d "," | sed "s/^/${sample}\t/" > ${sample}_metrics_summary.tsv """ @@ -272,6 +282,7 @@ process count310 { expectCells310 forceCells310 chemistryParam310 + file filename_checkScript output: file("**/outs/**") into outPaths310 @@ -286,7 +297,7 @@ process count310 { hostname ulimit -u 16384 ulimit -a - bash ${baseDir}/scripts/filename_check.sh -r ${ref} + bash filename_check.sh -r ${ref} cellranger count --id=${sample} --transcriptome=./${ref} --fastqs=. --sample=${sample} --expect-cells=${expectCells310} --chemistry=${chemistryParam310} sed -E 's/("([^"]*)")?(,|\$)/\\2\t/g' ${sample}/outs/metrics_summary.csv | tr -d "," | sed "s/^/${sample}\t/" > ${sample}_metrics_summary.tsv """ @@ -296,7 +307,7 @@ process count310 { hostname ulimit -u 16384 ulimit -a - bash ${baseDir}/scripts/filename_check.sh -r ${ref} + bash filename_check.sh -r ${ref} cellranger count --id=${sample} --transcriptome=./${ref} --fastqs=. --sample=${sample} --force-cells=${forceCells310} --chemistry=${chemistryParam310} sed -E 's/("([^"]*)")?(,|\$)/\\2\t/g' ${sample}/outs/metrics_summary.csv | tr -d "," | sed "s/^/${sample}\t/" > ${sample}_metrics_summary.tsv """ @@ -311,6 +322,8 @@ process versions { input: file versions_pythonScript + file referencesScript + file versions_pythonScript output: file("*.yaml") into yamlPaths @@ -324,8 +337,8 @@ process versions { echo "${pipelineVersion}" > version_pipeline.txt echo "${version}" > version_cellranger.txt bash versions_python.sh > version_python.txt - python3 "${baseDir}/scripts/generate_versions.py" -f version_*.txt -o versions - python3 "${baseDir}/scripts/generate_references.py" -r "${references}" -o references + python3 generate_versions.py -f version_*.txt -o versions + python3 generate_references.py -r "${references}" -o references """ }