diff --git a/src/RNAseq.config b/src/RNAseq.config index ed42799d9cc1e9a8d3c532a61f3918d3c727cfbd..5d949d41d9de0ca5d7d1fac2b0da77af36c5970b 100644 --- a/src/RNAseq.config +++ b/src/RNAseq.config @@ -51,3 +51,113 @@ profiles { } } } + +profiles { + docker { + docker.temp = 'auto' + docker.enabled = true + process { + withName: trimming { + cpus = 4 + container = "lbmc/urqt:d62c1f8" + } + } + } + singularity { + singularity.enabled = true + singularity.cacheDir = "./bin/" + process { + withName: trimming { + cpus = 4 + container = "lbmc/urqt:d62c1f8" + } + } + } + psmn{ + process{ + withName: trimming { + beforeScript = "source $baseDir/.conda_psmn.sh" + conda = "$baseDir/.conda_envs/urqt_d62c1f8" + executor = "sge" + clusterOptions = "-cwd -V" + memory = "5GB" + cpus = 16 + time = "12h" + queue = 'E5-2670deb128A,E5-2670deb128B,E5-2670deb128C,E5-2670deb128D,E5-2670deb128E,E5-2670deb128F' + penv = 'openmp16' + } + } + } + ccin2p3 { + singularity.enabled = true + singularity.cacheDir = "$baseDir/.singularity_in2p3/" + singularity.runOptions = "--bind /pbs,/sps,/scratch" + process{ + withName: trimming { + container = "lbmc/urqt:d62c1f8" + scratch = true + stageInMode = "copy" + stageOutMode = "rsync" + executor = "sge" + clusterOptions = "-P P_lbmc -l os=cl7 -l sps=1 -r n\ + " + cpus = 1 + queue = 'huge' + } + } + } +} + +profiles { + docker { + docker.temp = 'auto' + docker.enabled = true + process { + withName: fasta_from_bed { + container = "lbmc/bedtools:2.25.0" + cpus = 1 + } + } + } + singularity { + singularity.enabled = true + singularity.cacheDir = "./bin/" + process { + withName: fasta_from_bed { + container = "lbmc/bedtools:2.25.0" + cpus = 1 + } + } + } + psmn{ + process{ + withName: fasta_from_bed { + beforeScript = "source $baseDir/.conda_psmn.sh" + conda = "$baseDir/.conda_envs/bedtools_2.25.0" + executor = "sge" + clusterOptions = "-cwd -V" + cpus = 1 + memory = "20GB" + time = "12h" + queue = 'monointeldeb128,monointeldeb48,h48-E5-2670deb128,h6-E5-2667v4deb128' + } + } + } + ccin2p3 { + singularity.enabled = true + singularity.cacheDir = "$baseDir/.singularity_in2p3/" + singularity.runOptions = "--bind /pbs,/sps,/scratch" + process{ + withName: fasta_from_bed { + container = "lbmc/bedtools:2.25.0" + scratch = true + stageInMode = "copy" + stageOutMode = "rsync" + executor = "sge" + clusterOptions = "-P P_lbmc -l os=cl7 -l sps=1 -r n" + cpus = 1 + queue = 'huge' + } + } + } +} diff --git a/src/RNAseq.nf b/src/RNAseq.nf index f78d5c2dab0c8a83fd105c5eaddbbc1fd8c4e13e..e9c859d7ac798005a919ec2e9d4345cb88fdff6e 100644 --- a/src/RNAseq.nf +++ b/src/RNAseq.nf @@ -1,10 +1,22 @@ log.info "fastq files : ${params.fastq}" +log.info "fasta file : ${params.fasta}" +log.info "bed file : ${params.bed}" + Channel .fromFilePairs( params.fastq ) .ifEmpty { error "Cannot find any fastq files matching: ${params.fastq}" } .set { fastq_files } +Channel + .fromPath( params.fasta ) + .ifEmpty { error "Cannot find any fasta files matching: ${params.fasta}" } + .set { fasta_files } +Channel + .fromPath( params.bed ) + .ifEmpty { error "Cannot find any bed files matching: ${params.bed}" } + .set { bed_files } + process adaptor_removal { tag "$pair_id" publishDir "results/fastq/adaptor_removal/", mode: 'copy' @@ -22,3 +34,55 @@ process adaptor_removal { ${reads[0]} ${reads[1]} > ${pair_id}_report.txt """ } + +process trimming { + tag "${reads}" + publishDir "results/fastq/trimming/", mode: 'copy' + + input: + set pair_id, file(reads) from fastq_files_cut + + output: + set pair_id, "*_trim_R{1,2}.fastq.gz" into fastq_files_trim + + script: +""" +UrQt --t 20 --m ${task.cpus} --gz \ +--in ${reads[0]} --inpair ${reads[1]} \ +--out ${pair_id}_trim_R1.fastq.gz --outpair ${pair_id}_trim_R2.fastq.gz \ +> ${pair_id}_trimming_report.txt +""" +} + +/* +* bedtools : +* Imputs : fasta files +* Imputs : bed files +* Output : fasta files +*/ +/* fasta extraction */ + +params.fasta = "$baseDir/data/fasta/*.fasta" +params.bed = "$baseDir/data/annot/*.bed" + + + + + +process fasta_from_bed { + tag "${bed.baseName}" + publishDir "results/fasta/", mode: 'copy' + + input: + file fasta from fasta_files + file bed from bed_files + + output: + file "*_extracted.fasta" into fasta_files_extracted + + script: +""" +bedtools getfasta -name \ +-fi ${fasta} -bed ${bed} -fo ${bed.baseName}_extracted.fasta +""" +}