annotate 0.5.0/modules/seqkit/grep/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 SEQKIT_GREP {
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
2 tag "$meta.id"
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 module (params.enable_module ? "${params.swmodulepath}${params.fs}seqkit${params.fs}2.2.0" : null)
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
6 conda (params.enable_conda ? "bioconda::seqkit=2.2.0 conda-forge::sed=4.7 conda-forge::coreutils" : null)
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
7 container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ?
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
8 'https://depot.galaxyproject.org/singularity/seqkit:2.1.0--h9ee0642_0':
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
9 'quay.io/biocontainers/seqkit:2.1.0--h9ee0642_0' }"
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
10
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
11 input:
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
12 tuple val(meta), path(reads), path(pattern_file)
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
13
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
14 output:
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
15 tuple val(meta), path("*.gz"), emit: fastx
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
16 path "versions.yml" , emit: versions
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
17
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
18 when:
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
19 task.ext.when == null || task.ext.when
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
20
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
21 script:
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
22 def args = task.ext.args ?: ''
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
23 def prefix = task.ext.prefix ?: "${meta.id}"
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
24 def num_read_files = reads.toList().size()
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
25 def extension = "fastq"
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
26 if ("$reads" ==~ /.+\.fasta|.+\.fasta.gz|.+\.fa|.+\.fa.gz|.+\.fas|.+\.fas.gz|.+\.fna|.+\.fna.gz/) {
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
27 extension = "fasta"
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
28 }
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
29
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
30 if (meta.single_end || num_read_files == 1) {
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
31 """
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
32 pattern_file_contents=\$(sed '1!d' $pattern_file)
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
33 if [ "\$pattern_file_contents" != "DuMmY" ]; then
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
34 cut -f1 -d " " $pattern_file > ${prefix}.seqids.txt
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
35 additional_args="-f ${prefix}.seqids.txt $args"
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
36 else
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
37 additional_args="$args"
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
38 fi
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
39
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
40 seqkit \\
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
41 grep \\
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
42 -j $task.cpus \\
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
43 -o ${prefix}.seqkit-grep.${extension}.gz \\
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
44 \$additional_args \\
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
45 $reads
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
46
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
47 cat <<-END_VERSIONS > versions.yml
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
48 "${task.process}":
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
49 seqkit: \$( seqkit | sed '3!d; s/Version: //' )
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
50 END_VERSIONS
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
51 """
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
52 } else {
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
53 """
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
54 pattern_file_contents=\$(sed '1!d' $pattern_file)
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
55 if [ "\$pattern_file_contents" != "DuMmY" ]; then
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
56 additional_args="-f $pattern_file $args"
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
57 else
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
58 additional_args="$args"
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
59 fi
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
60
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
61 seqkit \\
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
62 grep \\
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
63 -j $task.cpus \\
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
64 -o ${prefix}.R1.seqkit-grep.${extension}.gz \\
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
65 \$additional_args \\
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
66 ${reads[0]}
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
67
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
68 seqkit \\
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
69 grep \\
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
70 -j $task.cpus \\
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
71 -o ${prefix}.R2.seqkit-grep.${extension}.gz \\
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
72 \$additional_args \\
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
73 ${reads[1]}
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
74
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
75 seqkit \\
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
76 pair \\
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
77 -j $task.cpus \\
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
78 -1 ${prefix}.R1.seqkit-grep.${extension}.gz \\
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
79 -2 ${prefix}.R2.seqkit-grep.${extension}.gz
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
80
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
81 rm ${prefix}.R1.seqkit-grep.${extension}.gz
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
82 rm ${prefix}.R2.seqkit-grep.${extension}.gz
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
83
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
84 cat <<-END_VERSIONS > versions.yml
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
85 "${task.process}":
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
86 seqkit: \$( seqkit | sed '3!d; s/Version: //' )
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
87 END_VERSIONS
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
88 """
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
89 }
3c767f9cfd88 planemo upload
galaxytrakr
parents:
diff changeset
90 }