Skip to content
Open
Show file tree
Hide file tree
Changes from 3 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
8 changes: 8 additions & 0 deletions modules/nf-core/svdss/index/environment.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
# yaml-language-server: $schema=https://raw.githubusercontent.com/nf-core/modules/master/modules/environment-schema.json
channels:
- conda-forge
- bioconda
dependencies:
# renovate: datasource=conda depName=bioconda/svdss
- bioconda::svdss=2.1.1
36 changes: 36 additions & 0 deletions modules/nf-core/svdss/index/main.nf
Comment thread
vagkaratzas marked this conversation as resolved.
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
process SVDSS_INDEX {
tag "$meta.id"
label 'process_medium'

conda "${moduleDir}/environment.yml"
container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ?
'https://depot.galaxyproject.org/singularity/svdss:2.1.1--he17396a_0' :
'quay.io/biocontainers/svdss:2.1.1--he17396a_0' }"

input:
tuple val(meta), path(fasta)

output:
tuple val(meta), path("${prefix}.fmd"), emit: fmd
tuple val("${task.process}"), val('svdss'), eval("SVDSS --version 2>&1 | sed 's/SVDSS, //'"), emit: versions_svdss, topic: versions

when:
task.ext.when == null || task.ext.when

script:
def args = task.ext.args ?: ''
prefix = task.ext.prefix ?: "${meta.id}"
Comment thread
vagkaratzas marked this conversation as resolved.
"""
SVDSS index \\
-t ${task.cpus} \\
-d ${fasta} \\
${args} \\
> ${prefix}.fmd
"""

stub:
prefix = task.ext.prefix ?: "${meta.id}"
Comment thread
vagkaratzas marked this conversation as resolved.
"""
touch ${prefix}.fmd
"""
}
69 changes: 69 additions & 0 deletions modules/nf-core/svdss/index/meta.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
name: svdss_index
description: Index a reference genome FASTA file using SVDSS, producing an FMD index for use with SVDSS smooth and search subcommands
keywords:
- structural variants
- sv calling
- indexing
- reference genome
- fm-index
tools:
- svdss:
description: |
SVDSS is a tool for structural variant discovery from short-read sequencing data.
It implements an FM-index-based approach to efficiently detect SVs against a reference genome.
homepage: https://github.com/Parsoa/SVDSS
documentation: https://github.com/Parsoa/SVDSS
tool_dev_url: https://github.com/Parsoa/SVDSS
doi: "10.1038/s41592-022-01674-1"
licence:
- "MIT"
identifier: ""
input:
- - meta:
type: map
description: |
Groovy Map containing sample information
e.g. `[ id:'sample1' ]`
- fasta:
type: file
description: Reference genome in FASTA format
pattern: "*.{fasta,fa,fna}"
ontologies:
- edam: http://edamontology.org/format_1929 # FASTA
output:
fmd:
Comment thread
vagkaratzas marked this conversation as resolved.
Outdated
- - meta:
type: map
description: |
Groovy Map containing sample information
e.g. `[ id:'sample1' ]`
- ${prefix}.fmd:
type: file
description: FMD index file produced by SVDSS index, used as input for SVDSS smooth and search
pattern: "*.fmd"
ontologies: []
versions_svdss:
- - ${task.process}:
type: string
description: The name of the process
- svdss:
type: string
description: The name of the tool
- SVDSS --version 2>&1 | sed 's/SVDSS, //':
type: eval
description: The expression to obtain the version of the tool
topics:
versions:
- - ${task.process}:
type: string
description: The name of the process
- svdss:
type: string
description: The name of the tool
- SVDSS --version 2>&1 | sed 's/SVDSS, //':
type: eval
description: The expression to obtain the version of the tool
authors:
- "@vagkaratzas"
maintainers:
- "@vagkaratzas"
58 changes: 58 additions & 0 deletions modules/nf-core/svdss/index/tests/main.nf.test
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
nextflow_process {

name "Test Process SVDSS_INDEX"
script "../main.nf"
process "SVDSS_INDEX"

tag "modules"
tag "modules_nfcore"
tag "svdss"
tag "svdss/index"

test("sarscov2 - genome fasta - fmd") {

when {
process {
"""
input[0] = [
[ id:'test' ],
file(params.modules_testdata_base_path + 'genomics/sarscov2/genome/genome.fasta', checkIfExists: true)
]
"""
}
}

then {
assertAll(
{ assert process.success },
{ assert snapshot(sanitizeOutput(process.out)).match() }
)
}

}

test("sarscov2 - genome fasta - fmd - stub") {

options "-stub"

when {
process {
"""
input[0] = [
[ id:'test' ],
file(params.modules_testdata_base_path + 'genomics/sarscov2/genome/genome.fasta', checkIfExists: true)
]
"""
}
}

then {
assertAll(
{ assert process.success },
{ assert snapshot(sanitizeOutput(process.out)).match() }
)
}

}

}
54 changes: 54 additions & 0 deletions modules/nf-core/svdss/index/tests/main.nf.test.snap
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
{
"sarscov2 - genome fasta - fmd - stub": {
"content": [
{
"fmd": [
[
{
"id": "test"
},
"test.fmd:md5,d41d8cd98f00b204e9800998ecf8427e"
]
],
"versions_svdss": [
[
"SVDSS_INDEX",
"svdss",
"v2.1.1"
]
]
}
],
"meta": {
"nf-test": "0.9.3",
"nextflow": "25.10.4"
},
"timestamp": "2026-04-21T12:39:28.541847717"
},
"sarscov2 - genome fasta - fmd": {
"content": [
{
"fmd": [
[
{
"id": "test"
},
"test.fmd:md5,e07e753be2f2b6e6354963a1b44a0256"
]
],
"versions_svdss": [
[
"SVDSS_INDEX",
"svdss",
"v2.1.1"
]
]
}
],
"meta": {
"nf-test": "0.9.3",
"nextflow": "25.10.4"
},
"timestamp": "2026-04-21T12:39:18.42633646"
}
}
Loading