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