mirror of
https://github.com/MillironX/nf-core_modules.git
synced 2024-12-22 11:08:17 +00:00
Initial module creation
This commit is contained in:
parent
90b203d3e9
commit
1c1e813c67
6 changed files with 274 additions and 0 deletions
58
modules/antismash/antismashlite/main.nf
Normal file
58
modules/antismash/antismashlite/main.nf
Normal file
|
@ -0,0 +1,58 @@
|
|||
process ANTISMASH_ANTISMASHLITE {
|
||||
tag "$meta.id"
|
||||
label 'process_medium'
|
||||
|
||||
conda (params.enable_conda ? "bioconda::antismash-lite=6.0.1" : null)
|
||||
container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ?
|
||||
'https://depot.galaxyproject.org/singularity/antismash-lite:6.0.1--pyhdfd78af_1' :
|
||||
'quay.io/biocontainers/antismash-lite:6.0.1--pyhdfd78af_1' }"
|
||||
|
||||
input:
|
||||
tuple val(meta), path(sequence_input)
|
||||
path(databases)
|
||||
|
||||
output:
|
||||
tuple val(meta), path("${prefix}/clusterblast/*_c*.txt") , optional: true, emit: clusterblast_file
|
||||
tuple val(meta), path("$prefix/css/*.css") , emit: css_file
|
||||
tuple val(meta), path("$prefix/images") , emit: image_directory
|
||||
tuple val(meta), path("$prefix/js/*.js") , emit: javascript
|
||||
tuple val(meta), path("${prefix}/knownclusterblast/region*/ctg*.html") , optional: true, emit: knownclusterblast_html
|
||||
tuple val(meta), path("${prefix}/knownclusterblast/*_c*.txt") , optional: true, emit: knownclusterblast_txt
|
||||
tuple val(meta), path("${prefix}/svg/clusterblast*.svg") , optional: true, emit: svg_files_clusterblast
|
||||
tuple val(meta), path("${prefix}/svg/knownclusterblast*.svg") , optional: true, emit: svg_files_knownclusterblast
|
||||
tuple val(meta), path("$prefix/*.gbk") , emit: gbk_input
|
||||
tuple val(meta), path("$prefix/*.json") , emit: json_results
|
||||
tuple val(meta), path("$prefix/*.log") , emit: log
|
||||
tuple val(meta), path("$prefix/*.zip") , emit: zip
|
||||
tuple val(meta), path("$prefix/*region*.gbk") , emit: gbk_results
|
||||
tuple val(meta), path("${prefix}/clusterblastoutput.txt") , optional: true, emit: clusterblastoutput
|
||||
tuple val(meta), path("$prefix/index.html") , emit: html
|
||||
tuple val(meta), path("${prefix}/knownclusterblastoutput.txt") , optional: true, emit: knownclusterblastoutput
|
||||
tuple val(meta), path("$prefix/regions.js") , emit: json_sideloading
|
||||
path "versions.yml" , emit: versions
|
||||
|
||||
when:
|
||||
task.ext.when == null || task.ext.when
|
||||
|
||||
script:
|
||||
def args = task.ext.args ?: ''
|
||||
prefix = task.ext.suffix ? "${meta.id}${task.ext.suffix}" : "${meta.id}"
|
||||
|
||||
"""
|
||||
## We specifically do not include annotations (--genefinding-tool none) as
|
||||
## this should be run as a separate module for versioning purposes
|
||||
antismash \\
|
||||
$sequence_input \\
|
||||
$args \\
|
||||
-c $task.cpus \\
|
||||
--output-dir $prefix \\
|
||||
--genefinding-tool none \\
|
||||
--logfile $prefix/${prefix}.log \\
|
||||
--databases $databases
|
||||
|
||||
cat <<-END_VERSIONS > versions.yml
|
||||
"${task.process}":
|
||||
antismash: \$(antismash --version | sed 's/antiSMASH //')
|
||||
END_VERSIONS
|
||||
"""
|
||||
}
|
121
modules/antismash/antismashlite/meta.yml
Normal file
121
modules/antismash/antismashlite/meta.yml
Normal file
|
@ -0,0 +1,121 @@
|
|||
name: antismash_antismashlite
|
||||
description: antiSMASH allows the rapid genome-wide identification, annotation and analysis of secondary metabolite biosynthesis gene clusters.
|
||||
keywords:
|
||||
- secondary metabolites
|
||||
- BGC
|
||||
- biosynthetic gene cluster
|
||||
- genome mining
|
||||
- NRPS
|
||||
- RiPP
|
||||
- antibiotics
|
||||
- prokaryotes
|
||||
- bacteria
|
||||
- eukaryotes
|
||||
- fungi
|
||||
- antismash
|
||||
|
||||
tools:
|
||||
- antismashlite:
|
||||
description: "antiSMASH - the antibiotics and Secondary Metabolite Analysis SHell"
|
||||
homepage: "https://docs.antismash.secondarymetabolites.org"
|
||||
documentation: "https://docs.antismash.secondarymetabolites.org"
|
||||
tool_dev_url: "https://github.com/antismash/antismash"
|
||||
doi: "10.1093/nar/gkab335"
|
||||
licence: "['AGPL v3']"
|
||||
|
||||
input:
|
||||
- meta:
|
||||
type: map
|
||||
description: |
|
||||
Groovy Map containing sample information
|
||||
e.g. [ id:'test', single_end:false ]
|
||||
- sequence_input:
|
||||
type: file
|
||||
description: nucleotide sequence file (annotated)
|
||||
pattern: "*.{gbk, gb, gbff, genbank, embl}"
|
||||
- databases:
|
||||
type: directory
|
||||
description: downloaded antismash databases e.g. data/databases
|
||||
pattern: "*"
|
||||
|
||||
output:
|
||||
- meta:
|
||||
type: map
|
||||
description: |
|
||||
Groovy Map containing sample information
|
||||
e.g. [ id:'test', single_end:false ]
|
||||
- versions:
|
||||
type: file
|
||||
description: File containing software versions
|
||||
pattern: "versions.yml"
|
||||
- clusterblast_file:
|
||||
type: file
|
||||
description: Output of ClusterBlast algorithm
|
||||
pattern: "clusterblast/*_c*.txt"
|
||||
- css_file:
|
||||
type: file
|
||||
description: Style sheet containing the formatting of HTML output
|
||||
pattern: "css/*.css"
|
||||
- image_directory:
|
||||
type: directory
|
||||
description: image files for web view of antiSMASH results
|
||||
pattern: "images"
|
||||
- javascript:
|
||||
type: file
|
||||
description: JavaScript files
|
||||
pattern: "js/*.js"
|
||||
- knownclusterblast_html:
|
||||
type: file
|
||||
description: Tables with MIBiG hits in HTML format
|
||||
pattern: "knownclusterblast/region*/ctg*.html"
|
||||
- knownclusterblast_txt:
|
||||
type: file
|
||||
description: Tables with MIBiG hits
|
||||
pattern: "knownclusterblast/*_c*.txt"
|
||||
- svg_files_clusterblast:
|
||||
type: file
|
||||
description: SVG image showing the % identity of the aligned hits against their queries
|
||||
pattern: "svg/clusterblast*.svg"
|
||||
- svg_files_knownclusterblast:
|
||||
type: file
|
||||
description: SVG image showing the % identity of the aligned hits against their queries
|
||||
pattern: "svg/knownclusterblast*.svg"
|
||||
- gbk_input:
|
||||
type: file
|
||||
description: Nucleotide sequence + annotations in GenBank file format; converted from input file
|
||||
pattern: "*.gbk"
|
||||
- json_results:
|
||||
type: file
|
||||
description: Simple representation of all detected areas during the antiSMASH run in JSON format
|
||||
pattern: "*.json"
|
||||
- log:
|
||||
type: file
|
||||
description: Contains all the logging output that antiSMASH produced during its run
|
||||
pattern: "*.log"
|
||||
- zip:
|
||||
type: file
|
||||
description: Contains a compressed version of the folder in zip format
|
||||
pattern: "*.zip"
|
||||
- gbk_results:
|
||||
type: file
|
||||
description: Nucleotide sequence + annotations in GenBank file format; one file per antiSMASH hit
|
||||
pattern: "*region*.gbk"
|
||||
- clusterblastoutput:
|
||||
type: file
|
||||
description: Raw BLAST output of known clusters previously predicted by antiSMASH using the built-in ClusterBlast algorithm
|
||||
pattern: "clusterblastoutput.txt"
|
||||
- html:
|
||||
type: file
|
||||
description: Graphical web view of results in HTML format
|
||||
patterN: "index.html"
|
||||
- knownclusterblastoutput:
|
||||
type: file
|
||||
description: Raw BLAST output of known clusters of the MIBiG database
|
||||
pattern: "knownclusterblastoutput.txt"
|
||||
- json_sideloading:
|
||||
type: file
|
||||
description: Sideloaded annotations of protoclusters and/or subregions (see documentation "Annotation sideloading")
|
||||
pattern: "regions.js"
|
||||
|
||||
authors:
|
||||
- "@jasmezz"
|
|
@ -42,6 +42,10 @@ amrfinderplus/update:
|
|||
- modules/amrfinderplus/update/**
|
||||
- tests/modules/amrfinderplus/update/**
|
||||
|
||||
antismash/antismashlite:
|
||||
- modules/antismash/antismashlite/**
|
||||
- tests/modules/antismash/antismashlite/**
|
||||
|
||||
antismash/antismashlitedownloaddatabases:
|
||||
- modules/antismash/antismashlitedownloaddatabases/**
|
||||
- tests/modules/antismash/antismashlitedownloaddatabases/**
|
||||
|
|
49
tests/modules/antismash/antismashlite/main.nf
Normal file
49
tests/modules/antismash/antismashlite/main.nf
Normal file
|
@ -0,0 +1,49 @@
|
|||
#!/usr/bin/env nextflow
|
||||
|
||||
nextflow.enable.dsl = 2
|
||||
|
||||
//include { GUNZIP } from '../../../modules/gunzip/main.nf'
|
||||
include { UNTAR as UNTAR1 } from '../../../../modules/untar/main.nf'
|
||||
include { UNTAR as UNTAR2 } from '../../../../modules/untar/main.nf'
|
||||
include { UNTAR as UNTAR3 } from '../../../../modules/untar/main.nf'
|
||||
include { ANTISMASH_ANTISMASHLITEDOWNLOADDATABASES } from '../../../modules/antismash/antismashlitedownloaddatabases/main.nf'
|
||||
include { ANTISMASH_ANTISMASHLITE } from '../../../../modules/antismash/antismashlite/main.nf'
|
||||
include { PROKKA } from '../../../modules/prokka/main.nf'
|
||||
|
||||
workflow test_antismashlite {
|
||||
input = [
|
||||
[ id:'test' ], // meta map
|
||||
file(params.test_data['bacteroides_fragilis']['genome']['genome_gbff_gz'], checkIfExists: true) ]
|
||||
|
||||
input_antismash_db1 = [
|
||||
[],
|
||||
file('https://github.com/nf-core/test-datasets/raw/modules/data/delete_me/antismash/css.tar.gz', checkIfExists: true)
|
||||
]
|
||||
|
||||
input_antismash_db2 = [
|
||||
[],
|
||||
file('https://github.com/nf-core/test-datasets/raw/modules/data/delete_me/antismash/detection.tar.gz', checkIfExists: true)
|
||||
]
|
||||
|
||||
input_antismash_db3 = [
|
||||
[],
|
||||
file('https://github.com/nf-core/test-datasets/raw/modules/data/delete_me/antismash/modules.tar.gz', checkIfExists: true)
|
||||
]
|
||||
|
||||
UNTAR1 ( input_antismash_db1 )
|
||||
UNTAR2 ( input_antismash_db2 )
|
||||
UNTAR3 ( input_antismash_db3 )
|
||||
ANTISMASH_ANTISMASHLITEDOWNLOADDATABASES ( UNTAR1.out.untar.map{ it[1] }, UNTAR2.out.untar.map{ it[1] }, UNTAR3.out.untar.map{ it[1] } )
|
||||
ANTISMASH_ANTISMASHLITE ( input, ANTISMASH_ANTISMASHLITEDOWNLOADDATABASES.out.database )
|
||||
}
|
||||
|
||||
//workflow test_prokka_antismashlite {
|
||||
// input_gunzip = [ [ id:'test' ], // meta map
|
||||
// file(params.test_data['bacteroides_fragilis']['genome']['genome_fna_gz'], checkIfExists: true) ]
|
||||
|
||||
// GUNZIP ( input_gunzip )
|
||||
// PROKKA ( GUNZIP.out.gunzip, [], [] )
|
||||
// ANTISMASHLITEDOWNLOADDATABASES ()
|
||||
// ANTISMASH ( PROKKA.out.gbk )
|
||||
// }
|
||||
|
5
tests/modules/antismash/antismashlite/nextflow.config
Normal file
5
tests/modules/antismash/antismashlite/nextflow.config
Normal file
|
@ -0,0 +1,5 @@
|
|||
process {
|
||||
|
||||
publishDir = { "${params.outdir}/${task.process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()}" }
|
||||
|
||||
}
|
37
tests/modules/antismash/antismashlite/test.yml
Normal file
37
tests/modules/antismash/antismashlite/test.yml
Normal file
|
@ -0,0 +1,37 @@
|
|||
- name: antismash antismashlite test_antismashlite
|
||||
command: nextflow run ./tests/modules/antismash/antismashlite -entry test_antismashlite -c tests/config/nextflow.config
|
||||
tags:
|
||||
- antismash/antismashlite
|
||||
- antismash
|
||||
files:
|
||||
- path: output/antismash/test/NZ_CP069563.1.region001.gbk
|
||||
contains: ['/tool="antismash"']
|
||||
- path: output/antismash/test/NZ_CP069563.1.region002.gbk
|
||||
contains: ['/tool="antismash"']
|
||||
- path: output/antismash/test/css/bacteria.css
|
||||
md5sum: 8b3c2f8b143d5245a5f42f55803c532c
|
||||
- path: output/antismash/test/genome.gbk
|
||||
contains: ['/tool="antismash"']
|
||||
- path: output/antismash/test/genome.json
|
||||
contains: ['{"version": "6.0.1", "input_file": "genome.gbff.gz", "records": [{"id": "NZ_CP069563.1", "seq": {"data":']
|
||||
- path: output/antismash/test/genome.zip
|
||||
- path: output/antismash/test/index.html
|
||||
md5sum: 4792f0f4faf318035fbec5b4bf0ff76e
|
||||
- path: output/antismash/test/js/antismash.js
|
||||
md5sum: 58e90c3d783ae014cc3d51849bcb50a2
|
||||
- path: output/antismash/test/js/jquery.js
|
||||
md5sum: 397754ba49e9e0cf4e7c190da78dda05
|
||||
- path: output/antismash/test/js/jquery.tablesorter.min.js
|
||||
md5sum: 5e9e08cef4d1be0eaa538e6eb28809a7
|
||||
- path: output/antismash/test/regions.js
|
||||
md5sum: dfc82025379d87df63fbfce734e67725
|
||||
- path: output/antismash/test/test.log
|
||||
contains: ['antiSMASH version: 6.0.1']
|
||||
- path: output/antismash/versions.yml
|
||||
md5sum: 7151dfd4d39173338397b2dab50acf8e
|
||||
- path: output/untar1/versions.yml
|
||||
md5sum: 42c2c02eb6b5bc47b151bdd2c49bbb2d
|
||||
- path: output/untar2/versions.yml
|
||||
md5sum: 5a608b991b7d3e55cc43206939991a2d
|
||||
- path: output/untar3/versions.yml
|
||||
md5sum: ec74401950e3820b7575840571a6f00c
|
Loading…
Reference in a new issue