Newer
Older
// SPDX-FileCopyrightText: 2022 Laurent Modolo <laurent.modolo@ens-lyon.fr>
//
// SPDX-License-Identifier: AGPL-3.0-or-later
version = "0.44.0"
container_url = "lbmc/kallisto:${version}"
params.index_fasta = "-k 31 --make-unique"
params.index_fasta_out = ""
process index_fasta {
container = "${container_url}"
label "big_mem_multi_cpus"
tag "$file_id"
if (params.index_fasta_out != "") {
publishDir "results/${params.index_fasta_out}", mode: 'copy'
}
tuple val(file_id), path("*.index*"), emit: index
tuple val(file_id), path("*_report.txt"), emit: report
kallisto index ${params.index_fasta} -i ${fasta.baseName}.index ${fasta} \
2> ${fasta.baseName}_kallisto_index_report.txt
"""
}
params.mapping_fastq = "--bias --bootstrap-samples 100"
params.mapping_fastq_out = ""
process mapping_fastq {
container = "${container_url}"
label "big_mem_multi_cpus"
tag "$pair_id"
if (params.mapping_fastq_out != "") {
publishDir "results/${params.mapping_fastq_out}", mode: 'copy'
}
tuple val(index_id), path(index)
tuple val(file_id), path("${file_prefix}"), emit: counts
tuple val(file_id), path("*_report.txt"), emit: report
if (file_id instanceof List){
file_prefix = file_id[0]
kallisto quant -i ${index} -t ${task.cpus} \
${params.mapping_fastq} -o ${file_prefix} \
${reads[0]} ${reads[1]} &> ${file_prefix}_kallisto_mapping_report.txt
kallisto quant -i ${index} -t ${task.cpus} --single \
${params.mapping_fastq} -o ${file_prefix} \
${reads[0]} &> ${file_prefix}_kallisto_mapping_report.txt