add module for hpsuisero (#1331)

* add module for hpsuisero

* Update meta.yml

* Update main.nf

Co-authored-by: Sateesh <33637490+sateeshperi@users.noreply.github.com>
This commit is contained in:
Robert A. Petit III 2022-02-27 17:58:35 -07:00 committed by GitHub
parent e0bf0a1689
commit 55bee0b02e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 120 additions and 0 deletions

View file

@ -0,0 +1,44 @@
def VERSION = '1.0.1' // Version information not provided by tool on CLI
process HPSUISSERO {
tag "$meta.id"
label 'process_low'
conda (params.enable_conda ? "bioconda::hpsuissero=1.0.1" : null)
container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ?
'https://depot.galaxyproject.org/singularity/hpsuissero%3A1.0.1--hdfd78af_0':
'quay.io/biocontainers/hpsuissero:1.0.1--hdfd78af_0' }"
input:
tuple val(meta), path(fasta)
output:
tuple val(meta), path("*.tsv"), emit: tsv
path "versions.yml" , emit: versions
when:
task.ext.when == null || task.ext.when
script:
def args = task.ext.args ?: ''
def prefix = task.ext.prefix ?: "${meta.id}"
def is_compressed = fasta.getName().endsWith(".gz") ? true : false
def fasta_name = fasta.getName().replace(".gz", "")
"""
if [ "$is_compressed" == "true" ]; then
gzip -c -d $fasta > $fasta_name
fi
HpsuisSero.sh \\
-i $fasta_name \\
-o ./ \\
-s $prefix \\
-x fasta \\
-t $task.cpus
cat <<-END_VERSIONS > versions.yml
"${task.process}":
hpsuissero: $VERSION
END_VERSIONS
"""
}

View file

@ -0,0 +1,43 @@
name: hpsuissero
description: Serotype prediction of Haemophilus parasuis assemblies
keywords:
- bacteria
- fasta
- haemophilus
tools:
- hpsuissero:
description: Rapid Haemophilus parasuis serotyping pipeline for Nanpore data
homepage: https://github.com/jimmyliu1326/HpsuisSero
documentation: https://github.com/jimmyliu1326/HpsuisSero
tool_dev_url: https://github.com/jimmyliu1326/HpsuisSero
doi: ""
licence: ['MIT']
input:
- meta:
type: map
description: |
Groovy Map containing sample information
e.g. [ id:'test', single_end:false ]
- fasta:
type: file
description: Assembly in FASTA format
pattern: "*.{fasta,fasta.gz,fa,fa.gz,fna,fna.gz,faa,faa.gz}"
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"
- tsv:
type: file
description: Tab-delimited serotype prediction
pattern: "*.{tsv}"
authors:
- "@rpetit3"

View file

@ -807,6 +807,10 @@ homer/makeucscfile:
- modules/homer/makeucscfile/** - modules/homer/makeucscfile/**
- tests/modules/homer/makeucscfile/** - tests/modules/homer/makeucscfile/**
hpsuissero:
- modules/hpsuissero/**
- tests/modules/hpsuissero/**
ichorcna/createpon: ichorcna/createpon:
- modules/ichorcna/createpon/** - modules/ichorcna/createpon/**
- tests/modules/ichorcna/createpon/** - tests/modules/ichorcna/createpon/**

View file

@ -0,0 +1,15 @@
#!/usr/bin/env nextflow
nextflow.enable.dsl = 2
include { HPSUISSERO } from '../../../modules/hpsuissero/main.nf'
workflow test_hpsuissero {
input = [
[ id:'test', single_end:false ], // meta map
file(params.test_data['haemophilus_influenzae']['genome']['genome_fna_gz'], checkIfExists: true)
]
HPSUISSERO ( input )
}

View file

@ -0,0 +1,5 @@
process {
publishDir = { "${params.outdir}/${task.process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()}" }
}

View file

@ -0,0 +1,9 @@
- name: hpsuissero test_hpsuissero
command: nextflow run tests/modules/hpsuissero -entry test_hpsuissero -c tests/config/nextflow.config
tags:
- hpsuissero
files:
- path: output/hpsuissero/test_serotyping_res.tsv
md5sum: 559dd2ca386eeb58f3975e3204ce9d43
- path: output/hpsuissero/versions.yml
md5sum: f65438e63a74ac6ee365bfdbbd3f996a