-
Laurent Modolo authoredLaurent Modolo authored
main.nf 2.04 KiB
version = "2.1"
container_url = "lbmc/cutadapt:${version}"
adapter_3_prim = "AGATCGGAAGAG"
adapter_5_prim = "CTCTTCCGATCT"
trim_quality = "20"
process adaptor_removal_paired {
container = "${container_url}"
label "big_mem_mono_cpus"
tag "$pair_id"
publishDir "results/fastq/adaptor_removal/", mode: 'copy'
input:
tuple val(pair_id), path(reads)
output:
tuple val(pair_id), path("*_cut_R{1,2}.fastq.gz"), emit: fastq
path "*_report.txt", emit: report
script:
"""
cutadapt -a ${adapter_3_prim} -g ${adapter_5_prim} -A ${adapter_3_prim} -G ${adapter_5_prim} \
-o ${pair_id}_cut_R1.fastq.gz -p ${pair_id}_cut_R2.fastq.gz \
${reads[0]} ${reads[1]} > ${pair_id}_report.txt
"""
}
process adaptor_removal_singleend {
container = "${container_url}"
label "big_mem_mono_cpus"
tag "$file_id"
publishDir "results/fastq/adaptor_removal/", mode: 'copy'
input:
tuple val(file_id), path(reads)
output:
tuple val(file_id), path("*_cut.fastq.gz"), emit: fastq
path "*_report.txt", emit: report
script:
"""
cutadapt -a ${adapter_3_prim} -g ${adapter_5_prim} \
-o ${file_id}_cut.fastq.gz \
${reads} > ${file_id}_report.txt
"""
}
process trimming_pairedend {
container = "${container_url}"
label "big_mem_mono_cpus"
tag "$pair_id"
publishDir "results/fastq/trimming/", mode: 'copy'
input:
tuple val(pair_id), path(reads)
output:
tuple val(pair_id), path("*_trim_R{1,2}.fastq.gz"), emit:fastq
path "*_report.txt", emit: report
script:
"""
cutadapt -q ${trim_quality},${trim_quality} \
-o ${pair_id}_trim_R1.fastq.gz -p ${pair_id}_trim_R2.fastq.gz \
${reads[0]} ${reads[1]} > ${pair_id}_report.txt
"""
}
process trimming_singleend {
container = "${container_url}"
label "big_mem_mono_cpus"
tag "$file_id"
input:
tuple val(file_id), path(reads)
output:
tuple val(file_id), path("*_trim.fastq.gz"), emit: fastq
path "*_report.txt", emit: report
script:
"""
cutadapt -q ${trim_quality},${trim_quality} \
-o ${file_id}_trim.fastq.gz \
${reads} > ${file_id}_report.txt
"""
}