From 81a2d4bb7984248a13736ac9aa74cf452b0d5b95 Mon Sep 17 00:00:00 2001 From: Laurent Modolo <laurent.modolo@ens-lyon.fr> Date: Thu, 2 Aug 2018 16:51:11 +0200 Subject: [PATCH] Bowtie2: modify single-end to have a file_id variable like for paired-end --- src/nf_modules/Bowtie2/bowtie2.nf | 13 +++++++------ src/nf_modules/Bowtie2/tests/mapping_single.nf | 13 +++++++------ 2 files changed, 14 insertions(+), 12 deletions(-) diff --git a/src/nf_modules/Bowtie2/bowtie2.nf b/src/nf_modules/Bowtie2/bowtie2.nf index d35c344..efee164 100644 --- a/src/nf_modules/Bowtie2/bowtie2.nf +++ b/src/nf_modules/Bowtie2/bowtie2.nf @@ -101,6 +101,7 @@ log.info "index files : ${params.index}" Channel .fromPath( params.fastq ) .ifEmpty { error "Cannot find any fastq files matching: ${params.fastq}" } + .map { it -> [(it.baseName =~ /([^\.]*)/)[0][1], it]} .set { fastq_files } Channel .fromPath( params.index ) @@ -108,16 +109,16 @@ Channel .set { index_files } process mapping_fastq { - tag "$reads.baseName" + tag "$file_id" cpus 4 publishDir "results/mapping/bams/", mode: 'copy' input: - file reads from fastq_files + set file_id, file(reads) from fastq_files file index from index_files.collect() output: - file "*.bam" into bam_files + set file_id, "*.bam" into bam_files file "*_report.txt" into mapping_report script: @@ -130,10 +131,10 @@ process mapping_fastq { """ bowtie2 --very-sensitive -p ${task.cpus} -x ${index_id} \ -U ${reads} 2> \ -${reads.baseName}_bowtie2_report.txt | \ -samtools view -Sb - > ${reads.baseName}.bam +${file_id}_bowtie2_report.txt | \ +samtools view -Sb - > ${file_id}.bam -if grep -q "Error" ${reads.baseName}_bowtie2_report.txt; then +if grep -q "Error" ${file_id}_bowtie2_report.txt; then exit 1 fi """ diff --git a/src/nf_modules/Bowtie2/tests/mapping_single.nf b/src/nf_modules/Bowtie2/tests/mapping_single.nf index 5f6a9de..6667699 100644 --- a/src/nf_modules/Bowtie2/tests/mapping_single.nf +++ b/src/nf_modules/Bowtie2/tests/mapping_single.nf @@ -6,6 +6,7 @@ log.info "index files : ${params.index}" Channel .fromPath( params.fastq ) .ifEmpty { error "Cannot find any fastq files matching: ${params.fastq}" } + .map { it -> [(it.baseName =~ /([^\.]*)/)[0][1], it]} .set { fastq_files } Channel .fromPath( params.index ) @@ -13,16 +14,16 @@ Channel .set { index_files } process mapping_fastq { - tag "$reads.baseName" + tag "$file_id" cpus 4 publishDir "results/mapping/bams/", mode: 'copy' input: - file reads from fastq_files + set file_id, file(reads) from fastq_files file index from index_files.collect() output: - file "*.bam" into bam_files + set file_id, "*.bam" into bam_files file "*_report.txt" into mapping_report script: @@ -35,10 +36,10 @@ process mapping_fastq { """ bowtie2 --very-sensitive -p ${task.cpus} -x ${index_id} \ -U ${reads} 2> \ -${reads.baseName}_bowtie2_report.txt | \ -samtools view -Sb - > ${reads.baseName}.bam +${file_id}_bowtie2_report.txt | \ +samtools view -Sb - > ${file_id}.bam -if grep -q "Error" ${reads.baseName}_bowtie2_report.txt; then +if grep -q "Error" ${file_id}_bowtie2_report.txt; then exit 1 fi """ -- GitLab