annotate 0.1.0/modules/prodigal/main.nf @ 0:c8597e9e1a97

"planemo upload"
author kkonganti
date Mon, 27 Nov 2023 12:37:44 -0500
parents
children
rev   line source
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 }