annotate 0.5.0/modules/cat/tables/main.nf @ 0:3c767f9cfd88 draft default tip

planemo upload
author galaxytrakr
date Fri, 29 May 2026 13:37:56 +0000
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
1 process TABLE_SUMMARY {
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
2 tag "$table_sum_on"
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
3 label 'process_low'
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
4
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
5 // Requires `pyyaml` which does not have a dedicated container but is in the MultiQC container
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
6 module (params.enable_module ? "${params.swmodulepath}${params.fs}python${params.fs}3.8.1" : null)
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
7 conda (params.enable_conda ? "conda-forge::python=3.9 conda-forge::pyyaml conda-forge::coreutils" : null)
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
8 container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ?
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
9 'https://depot.galaxyproject.org/singularity/multiqc:1.11--pyhdfd78af_0' :
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
10 'quay.io/biocontainers/multiqc:1.11--pyhdfd78af_0' }"
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
11
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
12 input:
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
13 tuple val(table_sum_on), path(tables)
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
14
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
15 output:
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
16 tuple val(table_sum_on), path("*.tblsum.txt"), emit: tblsummed
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
17 path "*_mqc.yml" , emit: mqc_yml
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
18 path "versions.yml" , emit: versions
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
19
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
20 when:
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
21 task.ext.when == null || task.ext.when || tables
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
22
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
23 script:
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
24 def args = task.ext.args ?: ''
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
25 def onthese = tables.collect().join('\\n')
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
26 """
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
27 filenum="1"
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
28 header=""
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
29
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
30 echo -e "$onthese" | while read -r file; do
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
31
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
32 if [ "\${filenum}" == "1" ]; then
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
33 header=\$( head -n1 "\${file}" )
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
34 echo -e "\${header}" > ${table_sum_on}.tblsum.txt
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
35 fi
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
36
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
37 tail -n+2 "\${file}" >> ${table_sum_on}.tblsum.txt
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
38
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
39 filenum=\$((filenum+1))
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
40 done
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
41
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
42 create_mqc_data_table.py $table_sum_on ${workflow.manifest.name}
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
43
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
44 cat <<-END_VERSIONS > versions.yml
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
45 "${task.process}":
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
46 bash: \$( bash --version 2>&1 | sed '1!d; s/^.*version //; s/ (.*\$//' )
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
47 python: \$( python --version | sed 's/Python //g' )
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
48 END_VERSIONS
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
49
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
50 headver=\$( head --version 2>&1 | sed '1!d; s/^.*(GNU coreutils//; s/) //;' )
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
51 tailver=\$( tail --version 2>&1 | sed '1!d; s/^.*(GNU coreutils//; s/) //;' )
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
52
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
53 cat <<-END_VERSIONS >> versions.yml
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
54 head: \$headver
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
55 tail: \$tailver
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
56 END_VERSIONS
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
57 """
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
58 }