annotate 0.4.2/modules/centrifuge/classify/main.nf @ 0:082e0091e813 draft default tip

planemo upload
author galaxytrakr
date Fri, 29 May 2026 13:27:47 +0000
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
1 process CENTRIFUGE_CLASSIFY {
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
2 tag "$meta.id"
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
3 label 'process_medium'
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
4
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
5 module (params.enable_module ? 'centrifuge' : null)
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
6 conda (params.enable_conda ? "bioconda::centrifuge=1.0.4_beta" : null)
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
7 container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ?
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
8 'https://depot.galaxyproject.org/singularity/centrifuge:1.0.4_beta--h9a82719_6' :
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
9 'quay.io/biocontainers/centrifuge:1.0.4_beta--h9a82719_6' }"
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
10
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
11 input:
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
12 tuple val(meta), path(reads)
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
13
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
14 output:
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
15 tuple val(meta), path('*.report.txt') , emit: report
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
16 tuple val(meta), path('*.output.txt') , emit: output
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
17 tuple val(meta), path('*.kreport.txt') , emit: kreport
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
18 tuple val(meta), path('*.sam') , optional: true, emit: sam
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
19 tuple val(meta), path('*.mapped.fastq{,.1,.2}.gz') , optional: true, emit: fastq_mapped
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
20 tuple val(meta), path('*.unmapped.fastq{,.1,.2}.gz') , optional: true, emit: fastq_unmapped
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
21 path "versions.yml" , emit: versions
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
22
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
23 when:
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
24 task.ext.when == null || task.ext.when
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
25
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
26 script:
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
27 def args = task.ext.args ?: ''
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
28 def prefix = task.ext.prefix ?: "${meta.id}"
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
29 def paired = meta.single_end ? "-U ${reads}" : "-1 ${reads[0]} -2 ${reads[1]}"
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
30 def db = meta.centrifuge_x ?: ''
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
31 def db_name = db.toString().replace(".tar.gz","")
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
32 def unaligned = ''
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
33 def aligned = ''
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
34 if (meta.single_end) {
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
35 unaligned = params.centrifuge_save_unaligned ? "--un-gz ${prefix}.unmapped.fastq.gz" : ''
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
36 aligned = params.centrifuge_save_aligned ? "--al-gz ${prefix}.mapped.fastq.gz" : ''
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
37 } else {
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
38 unaligned = params.centrifuge_save_unaligned ? "--un-conc-gz ${prefix}.unmapped.fastq.gz" : ''
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
39 aligned = params.centrifuge_save_aligned ? "--al-conc-gz ${prefix}.mapped.fastq.gz" : ''
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
40 }
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
41 def sam_output = params.centrifuge_out_fmt_sam ? "--out-fmt 'sam'" : ''
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
42 """
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
43 centrifuge \\
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
44 -x $db \\
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
45 -p $task.cpus \\
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
46 $paired \\
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
47 --report-file ${prefix}.centrifuge.report.txt \\
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
48 -S ${prefix}.centrifuge.output.txt \\
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
49 $unaligned \\
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
50 $aligned \\
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
51 $sam_output \\
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
52 $args
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
53
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
54 centrifuge-kreport -x $db_name ${prefix}.centrifuge.output.txt > ${prefix}.centrifuge.kreport.txt
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
55
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
56 cat <<-END_VERSIONS > versions.yml
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
57 "${task.process}":
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
58 centrifuge: \$( centrifuge --version | sed -n 1p | sed 's/^.*centrifuge-class version //')
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
59 END_VERSIONS
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
60 """
082e0091e813 planemo upload
galaxytrakr
parents:
diff changeset
61 }