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