Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 4 additions & 17 deletions modules/nf-core/braker3/main.nf
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,10 @@ process BRAKER3 {
tuple val(meta), path("$prefix/hintsfile.gff") , emit: hintsfile , optional: true
tuple val(meta), path("$prefix/braker.gff3") , emit: gff3 , optional: true
tuple val(meta), path("$prefix/what-to-cite.txt") , emit: citations
path "versions.yml" , emit: versions
tuple val("${task.process}"), val('braker3'), eval("braker.pl --version 2>/dev/null | sed 's/braker.pl version //'"), emit: versions_braker3, topic: versions
tuple val("${task.process}"), val('augustus'), eval("augustus --version |& sed -n 's/AUGUSTUS (\\(.*\\)) is a gene .*/\\1/p'"), emit: versions_augustus, topic: versions
tuple val("${task.process}"), val('genemark-etp'), eval("gmetp.pl |& sed -n 's/ETP version \\(.*\\)/\\1/p'"), emit: versions_genemarketp, topic: versions
tuple val("${task.process}"), val('prothint'), eval("prothint.py --version |& sed 's/prothint.py //1'"), emit: versions_prothint, topic: versions

when:
task.ext.when == null || task.ext.when
Expand Down Expand Up @@ -60,14 +63,6 @@ process BRAKER3 {
$prot_arg \\
$hints \\
$args

cat <<-END_VERSIONS > versions.yml
"${task.process}":
braker3: \$(braker.pl --version 2>/dev/null | sed 's/braker.pl version //')
augustus: \$(augustus --version |& sed -n 's/AUGUSTUS (\\(.*\\)) is a gene .*/\\1/p')
genemark-etp: \$(echo "\$(gmetp.pl || echo '')" | sed -n 's/ETP version \\(.*\\)/\\1/p')
prothint: \$(prothint.py --version | sed 's/prothint.py //1')
END_VERSIONS
"""

stub:
Expand All @@ -87,13 +82,5 @@ process BRAKER3 {
touch "$prefix/braker.log"
touch "$prefix/what-to-cite.txt"
$touch_gff

cat <<-END_VERSIONS > versions.yml
"${task.process}":
braker3: \$(braker.pl --version 2>/dev/null | sed 's/braker.pl version //')
augustus: \$(augustus --version |& sed -n 's/AUGUSTUS (\\(.*\\)) is a gene .*/\\1/p')
genemark-etp: \$(echo "\$(gmetp.pl || echo '')" | sed -n 's/ETP version \\(.*\\)/\\1/p')
prothint: \$(prothint.py --version | sed 's/prothint.py //1')
END_VERSIONS
"""
}
198 changes: 146 additions & 52 deletions modules/nf-core/braker3/meta.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,9 @@ tools:
documentation: https://github.com/Gaius-Augustus/BRAKER
tool_dev_url: https://github.com/Gaius-Augustus/BRAKER
doi: "10.13140/RG.2.2.20047.36004"
licence: ["Artistic-1.0"]
licence:
- "Artistic-1.0"
identifier: biotools:braker3

input:
- - meta:
type: map
Expand All @@ -28,93 +28,187 @@ input:
type: file
description: Genome assembly fasta
pattern: "*.{fasta,fa,fas,faa,fna}"
- - bam:
type: file
description: BAM file of RNA-seq data to be passed to --bam
pattern: "*.bam"
- - rnaseq_sets_dirs:
type: file
description: Directories of RNA-seq data sets to be passed to --rnaseq_sets_dirs
- - rnaseq_sets_ids:
type: file
description: IDs of RNA-seq data sets to be passed to --rnaseq_sets_ids
- - proteins:
type: file
description: Protein evidence to be passed to --proteins
pattern: "*.{fasta,fa,fas,faa}"
- - hintsfile:
type: file
description: Hintsfile to be passed to --hintsfile
pattern: "*.{gff, gtf, gff3}"
ontologies: []
- bam:
type: file
description: BAM file of RNA-seq data to be passed to --bam
pattern: "*.bam"
ontologies: []
- rnaseq_sets_dirs:
type: file
description: Directories of RNA-seq data sets to be passed to
--rnaseq_sets_dirs
ontologies: []
- rnaseq_sets_ids:
type: file
description: IDs of RNA-seq data sets to be passed to --rnaseq_sets_ids
ontologies: []
- proteins:
type: file
description: Protein evidence to be passed to --proteins
pattern: "*.{fasta,fa,fas,faa}"
ontologies: []
- hintsfile:
type: file
description: Hintsfile to be passed to --hintsfile
pattern: "*.{gff, gtf, gff3}"
ontologies: []
output:
gtf:
- - meta:
type: file
description: Gene transfer format file as output by BRAKER3
pattern: "*.{gtf}"
- $prefix/braker.gtf:
type: file
description: Gene transfer format file as output by BRAKER3
pattern: "*.{gtf}"
ontologies: []
- $prefix/braker.gtf:
type: file
description: Gene transfer format file as output by BRAKER3
pattern: "*.{gtf}"
ontologies: []
cds:
- - meta:
type: file
description: Gene transfer format file as output by BRAKER3
pattern: "*.{gtf}"
ontologies: []
- $prefix/braker.codingseq:
type: file
description: Coding sequence file as output by BRAKER3
pattern: "*.{codingseq}"
- $prefix/braker.codingseq:
type: file
description: Coding sequence file as output by BRAKER3
pattern: "*.{codingseq}"
ontologies: []
aa:
- - meta:
type: file
description: Gene transfer format file as output by BRAKER3
pattern: "*.{gtf}"
ontologies: []
- $prefix/braker.aa:
type: file
description: Protein sequence file as output by BRAKER3
pattern: "*.{aa}"
- $prefix/braker.aa:
type: file
description: Protein sequence file as output by BRAKER3
pattern: "*.{aa}"
ontologies: []
log:
- - meta:
type: file
description: Gene transfer format file as output by BRAKER3
pattern: "*.{gtf}"
ontologies: []
- $prefix/braker.log:
type: file
description: BRAKER3 log file
pattern: "*.log"
- $prefix/braker.log:
type: file
description: BRAKER3 log file
pattern: "*.log"
ontologies: []
hintsfile:
- - meta:
type: file
description: Gene transfer format file as output by BRAKER3
pattern: "*.{gtf}"
ontologies: []
- $prefix/hintsfile.gff:
type: file
description: Hints file as output by BRAKER3
pattern: "*hintsfile.{gff}"
- $prefix/hintsfile.gff:
type: file
description: Hints file as output by BRAKER3
pattern: "*hintsfile.{gff}"
ontologies: []
gff3:
- - meta:
type: file
description: Gene transfer format file as output by BRAKER3
pattern: "*.{gtf}"
ontologies: []
- $prefix/braker.gff3:
type: file
description: GFF3 file as output by BRAKER3
pattern: "*.{gff3}"
- $prefix/braker.gff3:
type: file
description: GFF3 file as output by BRAKER3
pattern: "*.{gff3}"
ontologies: []
citations:
- - meta:
type: file
description: Gene transfer format file as output by BRAKER3
pattern: "*.{gtf}"
ontologies: []
- $prefix/what-to-cite.txt:
type: file
description: BRAKER3 citations
pattern: "what-to-cite.txt"
- "$prefix/what-to-cite.txt":
type: file
description: BRAKER3 citations
pattern: "what-to-cite.txt"
ontologies: []
versions_braker3:
- - ${task.process}:
type: string
description: The name of the process
- braker3:
type: string
description: The name of the tool
- braker.pl --version 2>/dev/null | sed 's/braker.pl version //':
type: eval
description: The expression to obtain the version of the tool
versions_augustus:
- - ${task.process}:
type: string
description: The name of the process
- augustus:
type: string
description: The name of the tool
- augustus --version |& sed -n 's/AUGUSTUS (\(.*\)) is a gene .*/\1/p':
type: eval
description: The expression to obtain the version of the tool
versions_genemarketp:
- - ${task.process}:
type: string
description: The name of the process
- genemark-etp:
type: string
description: The name of the tool
- gmetp.pl |& sed -n 's/ETP version \(.*\)/\1/p':
type: eval
description: The expression to obtain the version of the tool
versions_prothint:
- - ${task.process}:
type: string
description: The name of the process
- prothint:
type: string
description: The name of the tool
- prothint.py --version |& sed 's/prothint.py //1':
type: eval
description: The expression to obtain the version of the tool
topics:
versions:
- versions.yml:
type: file
description: File containing software versions
pattern: "versions.yml"
- - ${task.process}:
type: string
description: The name of the process
- braker3:
type: string
description: The name of the tool
- braker.pl --version 2>/dev/null | sed 's/braker.pl version //':
type: eval
description: The expression to obtain the version of the tool
- - ${task.process}:
type: string
description: The name of the process
- augustus:
type: string
description: The name of the tool
- augustus --version |& sed -n 's/AUGUSTUS (\(.*\)) is a gene .*/\1/p':
type: eval
description: The expression to obtain the version of the tool
- - ${task.process}:
type: string
description: The name of the process
- genemark-etp:
type: string
description: The name of the tool
- gmetp.pl |& sed -n 's/ETP version \(.*\)/\1/p':
type: eval
description: The expression to obtain the version of the tool
- - ${task.process}:
type: string
description: The name of the process
- prothint:
type: string
description: The name of the tool
- prothint.py --version |& sed 's/prothint.py //1':
type: eval
description: The expression to obtain the version of the tool
authors:
- "@kherronism"
- "@GallVp"
Expand Down
12 changes: 6 additions & 6 deletions modules/nf-core/braker3/tests/main.nf.test
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ nextflow_process {
process {
"""
input[0] = [
[ id:'test' ], // meta map
[ id:'test' ],
file('https://raw.githubusercontent.com/Gaius-Augustus/BRAKER/f58479fe5bb13a9e51c3ca09cb9e137cab3b8471/example/genome.fa', checkIfExists: true)
]
input[1] = file('http://topaz.gatech.edu/GeneMark/Braker/RNAseq.bam', checkIfExists: true)
Expand All @@ -30,16 +30,16 @@ nextflow_process {
then {
assertAll(
{ assert process.success },
{ assert file(process.out.log[0][1]).text.contains('BRAKER RUN FINISHED') },
{ assert snapshot(
process.out.aa,
process.out.cds,
process.out.citations,
process.out.gff3,
process.out.gtf,
process.out.hintsfile,
process.out.versions,
).match() },
{ assert file(process.out.log[0][1]).text.contains('BRAKER RUN FINISHED') }
process.out.findAll { key, val -> key.startsWith('versions') }
).match() }
)
}

Expand All @@ -53,7 +53,7 @@ nextflow_process {
process {
"""
input[0] = [
[ id:'test' ], // meta map
[ id:'test' ],
file(params.modules_testdata_base_path + 'genomics/sarscov2/genome/genome.fasta', checkIfExists: true),
]
input[1] = []
Expand All @@ -68,7 +68,7 @@ nextflow_process {
then {
assertAll(
{ assert process.success },
{ assert snapshot(process.out).match() }
{ assert snapshot(sanitizeOutput(process.out)).match() }
)
}

Expand Down
Loading
Loading