annotate 0.2.0/modules/abricate/summary/main.nf @ 0:9e8b1c747a6a draft default tip

planemo upload
author galaxytrakr
date Fri, 29 May 2026 13:32:17 +0000
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
1 process ABRICATE_SUMMARY {
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
2 tag "${abdbs.join(',')}"
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
3 label 'process_micro'
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
4
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
5 module (params.enable_module ? "${params.swmodulepath}${params.fs}abricate${params.fs}1.0.1" : null)
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
6 conda (params.enable_conda ? "conda-forge::perl bioconda::abricate=1.0.1 conda-forge::coreutils" : null)
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
7 container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ?
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
8 'https://depot.galaxyproject.org/singularity/abricate:1.0.1--ha8f3691_1':
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
9 'quay.io/biocontainers/abricate:1.0.1--ha8f3691_1' }"
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
10
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
11 input:
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
12 tuple val(abdbs), path(abfiles)
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
13
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
14 output:
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
15 tuple val('abricate_ncbi'), path("*.ncbi.absum.txt") , emit: ncbi, optional: true
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
16 tuple val('abricate_ncbiamrplus'), path("*.ncbiamrplus.absum.txt"), emit: ncbiamrplus, optional: true
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
17 tuple val('abricate_resfinder'), path("*resfinder.absum.txt") , emit: resfinder, optional: true
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
18 tuple val('abricate_megares'), path("*.megares.absum.txt") , emit: megares, optional: true
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
19 tuple val('abricate_argannot'), path("*.argannot.absum.txt") , emit: argannot, optional: true
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
20 tuple val('abricate_ecoli_vf'), path("*.ecoli_vf.absum.txt") , emit: ecoli_vf, optional: true
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
21 path "versions.yml" , emit: versions
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
22
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
23 when:
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
24 task.ext.when == null || task.ext.when
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
25
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
26 script:
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
27 def args = task.ext.args ?: ''
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
28 def onthese = abdbs.collect{ db ->
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
29 abfiles.findAll { files ->
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
30 files =~ /\.${db}/
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
31 }.join(' ')
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
32 }.join('\\n')
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
33 """
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
34 filenum="1"
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
35
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
36 echo -e "$onthese" | while read -r files; do
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
37 db=\$( echo -e "\${files}" | grep -E -o '\\w+\\.ab\\.txt' | sort -u | sed -e 's/.ab.txt//' )
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
38
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
39 if [ -z "\$db" ]; then
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
40 db="\$filenum"
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
41 fi
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
42
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
43 abricate \\
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
44 $args \\
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
45 --summary \${files} \\
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
46 1> "abricate.\${db}.absum.txt"
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
47
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
48 sed -i -e "s/.\${db}.ab.txt//" "abricate.\${db}.absum.txt"
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
49 sed -i -e 's/.assembly_filtered_contigs.fasta//' "abricate.\${db}.absum.txt"
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
50
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
51 filenum=\$((filenum+1))
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
52 done
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
53
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
54 cat <<-END_VERSIONS > versions.yml
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
55 "${task.process}":
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
56 abricate: \$(echo \$(abricate --version 2>&1) | sed 's/^.*abricate //' )
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
57 bash: \$( bash --version 2>&1 | sed '1!d; s/^.*version //; s/ (.*\$//' )
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
58 END_VERSIONS
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
59
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
60 sedver=""
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
61 sortver=""
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
62 grepver=""
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
63
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
64 if [ "${workflow.containerEngine}" != "null" ]; then
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
65 sortver=\$( sort --help 2>&1 | sed -e '1!d; s/ (.*\$//' )
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
66 sedver="\$sortver"
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
67 grepver="\$sortver"
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
68 else
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
69 sortver=\$( sort --version 2>&1 | sed '1!d; s/^.*(GNU coreutils//; s/) //;' )
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
70 sedver=\$( echo \$(sed --version 2>&1) | sed 's/^.*(GNU sed) //; s/ Copyright.*\$//' )
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
71 grepver=\$( echo \$(grep --version 2>&1) | sed 's/^.*(GNU grep) //; s/ Copyright.*\$//' )
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
72 fi
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
73
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
74 cat <<-END_VERSIONS >> versions.yml
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
75 sort: \$sortver
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
76 grep: \$grepver
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
77 sed: \$sedver
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
78 END_VERSIONS
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
79 """
9e8b1c747a6a planemo upload
galaxytrakr
parents:
diff changeset
80 }