kkonganti@0
|
1 process PRODIGAL {
|
kkonganti@0
|
2 tag "$meta.id"
|
kkonganti@0
|
3 label 'process_nano'
|
kkonganti@0
|
4
|
kkonganti@0
|
5 module (params.enable_module ? "${params.swmodulepath}${params.fs}prodigal${params.fs}2.6.3" : null)
|
kkonganti@0
|
6 conda (params.enable_conda ? "bioconda::prodigal=2.6.3 conda-forge::pigz=2.6" : null)
|
kkonganti@0
|
7 container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ?
|
kkonganti@0
|
8 'https://depot.galaxyproject.org/singularity/mulled-v2-2e442ba7b07bfa102b9cf8fac6221263cd746ab8:57f05cfa73f769d6ed6d54144cb3aa2a6a6b17e0-0' :
|
kkonganti@0
|
9 'quay.io/biocontainers/mulled-v2-2e442ba7b07bfa102b9cf8fac6221263cd746ab8:57f05cfa73f769d6ed6d54144cb3aa2a6a6b17e0-0' }"
|
kkonganti@0
|
10
|
kkonganti@0
|
11 input:
|
kkonganti@0
|
12 tuple val(meta), path(genome)
|
kkonganti@0
|
13 val(output_format)
|
kkonganti@0
|
14
|
kkonganti@0
|
15 output:
|
kkonganti@0
|
16 tuple val(meta), path("*.${output_format}"), emit: gene_annotations
|
kkonganti@0
|
17 tuple val(meta), path("*.fna") , emit: cds
|
kkonganti@0
|
18 tuple val(meta), path("*.faa") , emit: proteins
|
kkonganti@0
|
19 tuple val(meta), path("*_all.txt") , emit: all_gene_annotations
|
kkonganti@0
|
20 tuple val(meta), path("*trn") , emit: trained, optional: true
|
kkonganti@0
|
21 path "versions.yml" , emit: versions
|
kkonganti@0
|
22
|
kkonganti@0
|
23 when:
|
kkonganti@0
|
24 task.ext.when == null || task.ext.when
|
kkonganti@0
|
25
|
kkonganti@0
|
26 script:
|
kkonganti@0
|
27 def args = task.ext.args ?: ''
|
kkonganti@0
|
28 def prefix = task.ext.prefix ?: "${meta.id}"
|
kkonganti@0
|
29 def training = args.toString().matches(/.*-t/) ? "-t ${prefix}.trn" : ''
|
kkonganti@0
|
30 args = args.toString().replace(/-t/, '')
|
kkonganti@0
|
31 """
|
kkonganti@0
|
32 if [ "$training" = "-t ${prefix}.trn" ]; then
|
kkonganti@0
|
33 touch "${prefix}.fna"
|
kkonganti@0
|
34 touch "${prefix}.faa"
|
kkonganti@0
|
35 touch "${prefix}_all.txt"
|
kkonganti@0
|
36 touch "${prefix}.${output_format}"
|
kkonganti@0
|
37
|
kkonganti@0
|
38 prodigal \\
|
kkonganti@0
|
39 $training \\
|
kkonganti@0
|
40 -i $genome
|
kkonganti@0
|
41 fi
|
kkonganti@0
|
42
|
kkonganti@0
|
43 prodigal \\
|
kkonganti@0
|
44 $args \\
|
kkonganti@0
|
45 -d "${prefix}.fna" \\
|
kkonganti@0
|
46 -o "${prefix}.${output_format}" \\
|
kkonganti@0
|
47 -a "${prefix}.faa" \\
|
kkonganti@0
|
48 -s "${prefix}_all.txt" \\
|
kkonganti@0
|
49 -i $genome
|
kkonganti@0
|
50
|
kkonganti@0
|
51 cat <<-END_VERSIONS > versions.yml
|
kkonganti@0
|
52 "${task.process}":
|
kkonganti@0
|
53 prodigal: \$(prodigal -v 2>&1 | sed -n 's/Prodigal V\\(.*\\):.*/\\1/p')
|
kkonganti@0
|
54 END_VERSIONS
|
kkonganti@0
|
55 """
|
kkonganti@0
|
56 } |