mirror of
https://github.com/MillironX/nf-core_modules.git
synced 2024-12-22 02:58:17 +00:00
Bulk update modules to use versions.yml (#739)
* New functions.nf * Convert code to create versions.yml * Update meta.yml * update output channel * Fix more meta.yml * Manually update remaining modules * remove superflous echo * Fix misformatted meta.yml files * Fix yaml, was list instead of dict * fix version for bcftools Co-authored-by: Harshil Patel <drpatelh@users.noreply.github.com>
This commit is contained in:
parent
d73a988ff7
commit
906577873b
744 changed files with 10399 additions and 7063 deletions
|
@ -9,6 +9,13 @@ def getSoftwareName(task_process) {
|
||||||
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Extract name of module from process name using $task.process
|
||||||
|
//
|
||||||
|
def getProcessName(task_process) {
|
||||||
|
return task_process.tokenize(':')[-1]
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
||||||
//
|
//
|
||||||
|
@ -37,32 +44,35 @@ def getPathFromList(path_list) {
|
||||||
// Function to save/publish module results
|
// Function to save/publish module results
|
||||||
//
|
//
|
||||||
def saveFiles(Map args) {
|
def saveFiles(Map args) {
|
||||||
if (!args.filename.endsWith('.version.txt')) {
|
def ioptions = initOptions(args.options)
|
||||||
def ioptions = initOptions(args.options)
|
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
||||||
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
|
||||||
if (ioptions.publish_by_meta) {
|
// Do not publish versions.yml unless running from pytest workflow
|
||||||
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
if (args.filename.equals('versions.yml') && !System.getenv("NF_CORE_MODULES_TEST")) {
|
||||||
for (key in key_list) {
|
return null
|
||||||
if (args.meta && key instanceof String) {
|
}
|
||||||
def path = key
|
if (ioptions.publish_by_meta) {
|
||||||
if (args.meta.containsKey(key)) {
|
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
||||||
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
for (key in key_list) {
|
||||||
}
|
if (args.meta && key instanceof String) {
|
||||||
path = path instanceof String ? path : ''
|
def path = key
|
||||||
path_list.add(path)
|
if (args.meta.containsKey(key)) {
|
||||||
|
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
||||||
}
|
}
|
||||||
|
path = path instanceof String ? path : ''
|
||||||
|
path_list.add(path)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ioptions.publish_files instanceof Map) {
|
}
|
||||||
for (ext in ioptions.publish_files) {
|
if (ioptions.publish_files instanceof Map) {
|
||||||
if (args.filename.endsWith(ext.key)) {
|
for (ext in ioptions.publish_files) {
|
||||||
def ext_list = path_list.collect()
|
if (args.filename.endsWith(ext.key)) {
|
||||||
ext_list.add(ext.value)
|
def ext_list = path_list.collect()
|
||||||
return "${getPathFromList(ext_list)}/$args.filename"
|
ext_list.add(ext.value)
|
||||||
}
|
return "${getPathFromList(ext_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
} else if (ioptions.publish_files == null) {
|
}
|
||||||
return "${getPathFromList(path_list)}/$args.filename"
|
} else if (ioptions.publish_files == null) {
|
||||||
}
|
return "${getPathFromList(path_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// Import generic module functions
|
// Import generic module functions
|
||||||
include { initOptions; saveFiles; getSoftwareName } from './functions'
|
include { initOptions; saveFiles; getSoftwareName; getProcessName } from './functions'
|
||||||
|
|
||||||
params.options = [:]
|
params.options = [:]
|
||||||
options = initOptions(params.options)
|
options = initOptions(params.options)
|
||||||
|
@ -24,7 +24,7 @@ process ABACAS {
|
||||||
|
|
||||||
output:
|
output:
|
||||||
tuple val(meta), path('*.abacas*'), emit: results
|
tuple val(meta), path('*.abacas*'), emit: results
|
||||||
path '*.version.txt' , emit: version
|
path "versions.yml" , emit: version
|
||||||
|
|
||||||
script:
|
script:
|
||||||
def software = getSoftwareName(task.process)
|
def software = getSoftwareName(task.process)
|
||||||
|
@ -40,6 +40,9 @@ process ABACAS {
|
||||||
mv nucmer.filtered.delta ${prefix}.abacas.nucmer.filtered.delta
|
mv nucmer.filtered.delta ${prefix}.abacas.nucmer.filtered.delta
|
||||||
mv nucmer.tiling ${prefix}.abacas.nucmer.tiling
|
mv nucmer.tiling ${prefix}.abacas.nucmer.tiling
|
||||||
mv unused_contigs.out ${prefix}.abacas.unused.contigs.out
|
mv unused_contigs.out ${prefix}.abacas.unused.contigs.out
|
||||||
echo \$(abacas.pl -v 2>&1) | sed 's/^.*ABACAS.//; s/ .*\$//' > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(abacas.pl -v 2>&1 | sed 's/^.*ABACAS.//; s/ .*\$//')
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
}
|
}
|
||||||
|
|
|
@ -51,7 +51,7 @@ output:
|
||||||
- version:
|
- version:
|
||||||
type: file
|
type: file
|
||||||
description: File containing software version
|
description: File containing software version
|
||||||
pattern: "*.{version.txt}"
|
pattern: "versions.yml"
|
||||||
|
|
||||||
authors:
|
authors:
|
||||||
- "@joseespinosa"
|
- "@joseespinosa"
|
||||||
|
|
|
@ -9,6 +9,13 @@ def getSoftwareName(task_process) {
|
||||||
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Extract name of module from process name using $task.process
|
||||||
|
//
|
||||||
|
def getProcessName(task_process) {
|
||||||
|
return task_process.tokenize(':')[-1]
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
||||||
//
|
//
|
||||||
|
@ -37,32 +44,35 @@ def getPathFromList(path_list) {
|
||||||
// Function to save/publish module results
|
// Function to save/publish module results
|
||||||
//
|
//
|
||||||
def saveFiles(Map args) {
|
def saveFiles(Map args) {
|
||||||
if (!args.filename.endsWith('.version.txt')) {
|
def ioptions = initOptions(args.options)
|
||||||
def ioptions = initOptions(args.options)
|
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
||||||
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
|
||||||
if (ioptions.publish_by_meta) {
|
// Do not publish versions.yml unless running from pytest workflow
|
||||||
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
if (args.filename.equals('versions.yml') && !System.getenv("NF_CORE_MODULES_TEST")) {
|
||||||
for (key in key_list) {
|
return null
|
||||||
if (args.meta && key instanceof String) {
|
}
|
||||||
def path = key
|
if (ioptions.publish_by_meta) {
|
||||||
if (args.meta.containsKey(key)) {
|
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
||||||
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
for (key in key_list) {
|
||||||
}
|
if (args.meta && key instanceof String) {
|
||||||
path = path instanceof String ? path : ''
|
def path = key
|
||||||
path_list.add(path)
|
if (args.meta.containsKey(key)) {
|
||||||
|
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
||||||
}
|
}
|
||||||
|
path = path instanceof String ? path : ''
|
||||||
|
path_list.add(path)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ioptions.publish_files instanceof Map) {
|
}
|
||||||
for (ext in ioptions.publish_files) {
|
if (ioptions.publish_files instanceof Map) {
|
||||||
if (args.filename.endsWith(ext.key)) {
|
for (ext in ioptions.publish_files) {
|
||||||
def ext_list = path_list.collect()
|
if (args.filename.endsWith(ext.key)) {
|
||||||
ext_list.add(ext.value)
|
def ext_list = path_list.collect()
|
||||||
return "${getPathFromList(ext_list)}/$args.filename"
|
ext_list.add(ext.value)
|
||||||
}
|
return "${getPathFromList(ext_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
} else if (ioptions.publish_files == null) {
|
}
|
||||||
return "${getPathFromList(path_list)}/$args.filename"
|
} else if (ioptions.publish_files == null) {
|
||||||
}
|
return "${getPathFromList(path_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
include { initOptions; saveFiles; getSoftwareName } from './functions'
|
include { initOptions; saveFiles; getSoftwareName; getProcessName } from './functions'
|
||||||
|
|
||||||
params.options = [:]
|
params.options = [:]
|
||||||
options = initOptions(params.options)
|
options = initOptions(params.options)
|
||||||
|
@ -23,7 +23,7 @@ process ADAPTERREMOVAL {
|
||||||
output:
|
output:
|
||||||
tuple val(meta), path('*.fastq.gz'), emit: reads
|
tuple val(meta), path('*.fastq.gz'), emit: reads
|
||||||
tuple val(meta), path('*.log') , emit: log
|
tuple val(meta), path('*.log') , emit: log
|
||||||
path "*.version.txt" , emit: version
|
path "versions.yml" , emit: version
|
||||||
|
|
||||||
script:
|
script:
|
||||||
def software = getSoftwareName(task.process)
|
def software = getSoftwareName(task.process)
|
||||||
|
@ -41,7 +41,10 @@ process ADAPTERREMOVAL {
|
||||||
--seed 42 \\
|
--seed 42 \\
|
||||||
--gzip \\
|
--gzip \\
|
||||||
|
|
||||||
AdapterRemoval --version 2>&1 | sed -e "s/AdapterRemoval ver. //g" > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(AdapterRemoval --version 2>&1 | sed -e "s/AdapterRemoval ver. //g")
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
} else if (!meta.single_end && !meta.collapse) {
|
} else if (!meta.single_end && !meta.collapse) {
|
||||||
"""
|
"""
|
||||||
|
@ -57,7 +60,10 @@ process ADAPTERREMOVAL {
|
||||||
--seed 42 \\
|
--seed 42 \\
|
||||||
--gzip \\
|
--gzip \\
|
||||||
|
|
||||||
AdapterRemoval --version 2>&1 | sed -e "s/AdapterRemoval ver. //g" > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(AdapterRemoval --version 2>&1 | sed -e "s/AdapterRemoval ver. //g")
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
} else {
|
} else {
|
||||||
"""
|
"""
|
||||||
|
@ -73,7 +79,10 @@ process ADAPTERREMOVAL {
|
||||||
--gzip \\
|
--gzip \\
|
||||||
|
|
||||||
cat *.collapsed.gz *.collapsed.truncated.gz > ${prefix}.merged.fastq.gz
|
cat *.collapsed.gz *.collapsed.truncated.gz > ${prefix}.merged.fastq.gz
|
||||||
AdapterRemoval --version 2>&1 | sed -e "s/AdapterRemoval ver. //g" > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(AdapterRemoval --version 2>&1 | sed -e "s/AdapterRemoval ver. //g")
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -44,7 +44,7 @@ output:
|
||||||
- version:
|
- version:
|
||||||
type: file
|
type: file
|
||||||
description: File containing software version
|
description: File containing software version
|
||||||
pattern: "*.{version.txt}"
|
pattern: "versions.yml"
|
||||||
|
|
||||||
authors:
|
authors:
|
||||||
- "@maxibor"
|
- "@maxibor"
|
||||||
|
|
|
@ -9,6 +9,13 @@ def getSoftwareName(task_process) {
|
||||||
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Extract name of module from process name using $task.process
|
||||||
|
//
|
||||||
|
def getProcessName(task_process) {
|
||||||
|
return task_process.tokenize(':')[-1]
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
||||||
//
|
//
|
||||||
|
@ -37,32 +44,35 @@ def getPathFromList(path_list) {
|
||||||
// Function to save/publish module results
|
// Function to save/publish module results
|
||||||
//
|
//
|
||||||
def saveFiles(Map args) {
|
def saveFiles(Map args) {
|
||||||
if (!args.filename.endsWith('.version.txt')) {
|
def ioptions = initOptions(args.options)
|
||||||
def ioptions = initOptions(args.options)
|
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
||||||
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
|
||||||
if (ioptions.publish_by_meta) {
|
// Do not publish versions.yml unless running from pytest workflow
|
||||||
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
if (args.filename.equals('versions.yml') && !System.getenv("NF_CORE_MODULES_TEST")) {
|
||||||
for (key in key_list) {
|
return null
|
||||||
if (args.meta && key instanceof String) {
|
}
|
||||||
def path = key
|
if (ioptions.publish_by_meta) {
|
||||||
if (args.meta.containsKey(key)) {
|
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
||||||
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
for (key in key_list) {
|
||||||
}
|
if (args.meta && key instanceof String) {
|
||||||
path = path instanceof String ? path : ''
|
def path = key
|
||||||
path_list.add(path)
|
if (args.meta.containsKey(key)) {
|
||||||
|
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
||||||
}
|
}
|
||||||
|
path = path instanceof String ? path : ''
|
||||||
|
path_list.add(path)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ioptions.publish_files instanceof Map) {
|
}
|
||||||
for (ext in ioptions.publish_files) {
|
if (ioptions.publish_files instanceof Map) {
|
||||||
if (args.filename.endsWith(ext.key)) {
|
for (ext in ioptions.publish_files) {
|
||||||
def ext_list = path_list.collect()
|
if (args.filename.endsWith(ext.key)) {
|
||||||
ext_list.add(ext.value)
|
def ext_list = path_list.collect()
|
||||||
return "${getPathFromList(ext_list)}/$args.filename"
|
ext_list.add(ext.value)
|
||||||
}
|
return "${getPathFromList(ext_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
} else if (ioptions.publish_files == null) {
|
}
|
||||||
return "${getPathFromList(path_list)}/$args.filename"
|
} else if (ioptions.publish_files == null) {
|
||||||
}
|
return "${getPathFromList(path_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// Import generic module functions
|
// Import generic module functions
|
||||||
include { initOptions; saveFiles; getSoftwareName } from './functions'
|
include { initOptions; saveFiles; getSoftwareName; getProcessName } from './functions'
|
||||||
|
|
||||||
params.options = [:]
|
params.options = [:]
|
||||||
options = initOptions(params.options)
|
options = initOptions(params.options)
|
||||||
|
@ -24,7 +24,7 @@ process AGRVATE {
|
||||||
output:
|
output:
|
||||||
tuple val(meta), path("${fasta.baseName}-results/${fasta.baseName}-summary.tab"), emit: summary
|
tuple val(meta), path("${fasta.baseName}-results/${fasta.baseName}-summary.tab"), emit: summary
|
||||||
path "${fasta.baseName}-results" , emit: results_dir
|
path "${fasta.baseName}-results" , emit: results_dir
|
||||||
path "*.version.txt" , emit: version
|
path "versions.yml" , emit: version
|
||||||
|
|
||||||
script:
|
script:
|
||||||
def software = getSoftwareName(task.process)
|
def software = getSoftwareName(task.process)
|
||||||
|
@ -34,6 +34,9 @@ process AGRVATE {
|
||||||
$options.args \\
|
$options.args \\
|
||||||
-i $fasta
|
-i $fasta
|
||||||
|
|
||||||
echo \$(agrvate -v 2>&1) | sed 's/agrvate //;' > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(agrvate -v 2>&1 | sed 's/agrvate //;')
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
}
|
}
|
||||||
|
|
|
@ -41,6 +41,6 @@ output:
|
||||||
- version:
|
- version:
|
||||||
type: file
|
type: file
|
||||||
description: File containing software version
|
description: File containing software version
|
||||||
pattern: "*.{version.txt}"
|
pattern: "versions.yml"
|
||||||
authors:
|
authors:
|
||||||
- "@abhi18av"
|
- "@abhi18av"
|
||||||
|
|
|
@ -9,6 +9,13 @@ def getSoftwareName(task_process) {
|
||||||
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Extract name of module from process name using $task.process
|
||||||
|
//
|
||||||
|
def getProcessName(task_process) {
|
||||||
|
return task_process.tokenize(':')[-1]
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
||||||
//
|
//
|
||||||
|
@ -37,32 +44,35 @@ def getPathFromList(path_list) {
|
||||||
// Function to save/publish module results
|
// Function to save/publish module results
|
||||||
//
|
//
|
||||||
def saveFiles(Map args) {
|
def saveFiles(Map args) {
|
||||||
if (!args.filename.endsWith('.version.txt')) {
|
def ioptions = initOptions(args.options)
|
||||||
def ioptions = initOptions(args.options)
|
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
||||||
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
|
||||||
if (ioptions.publish_by_meta) {
|
// Do not publish versions.yml unless running from pytest workflow
|
||||||
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
if (args.filename.equals('versions.yml') && !System.getenv("NF_CORE_MODULES_TEST")) {
|
||||||
for (key in key_list) {
|
return null
|
||||||
if (args.meta && key instanceof String) {
|
}
|
||||||
def path = key
|
if (ioptions.publish_by_meta) {
|
||||||
if (args.meta.containsKey(key)) {
|
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
||||||
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
for (key in key_list) {
|
||||||
}
|
if (args.meta && key instanceof String) {
|
||||||
path = path instanceof String ? path : ''
|
def path = key
|
||||||
path_list.add(path)
|
if (args.meta.containsKey(key)) {
|
||||||
|
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
||||||
}
|
}
|
||||||
|
path = path instanceof String ? path : ''
|
||||||
|
path_list.add(path)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ioptions.publish_files instanceof Map) {
|
}
|
||||||
for (ext in ioptions.publish_files) {
|
if (ioptions.publish_files instanceof Map) {
|
||||||
if (args.filename.endsWith(ext.key)) {
|
for (ext in ioptions.publish_files) {
|
||||||
def ext_list = path_list.collect()
|
if (args.filename.endsWith(ext.key)) {
|
||||||
ext_list.add(ext.value)
|
def ext_list = path_list.collect()
|
||||||
return "${getPathFromList(ext_list)}/$args.filename"
|
ext_list.add(ext.value)
|
||||||
}
|
return "${getPathFromList(ext_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
} else if (ioptions.publish_files == null) {
|
}
|
||||||
return "${getPathFromList(path_list)}/$args.filename"
|
} else if (ioptions.publish_files == null) {
|
||||||
}
|
return "${getPathFromList(path_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// Import generic module functions
|
// Import generic module functions
|
||||||
include { initOptions; saveFiles; getSoftwareName } from './functions'
|
include { initOptions; saveFiles; getSoftwareName; getProcessName } from './functions'
|
||||||
|
|
||||||
params.options = [:]
|
params.options = [:]
|
||||||
options = initOptions(params.options)
|
options = initOptions(params.options)
|
||||||
|
@ -24,7 +24,7 @@ process ALLELECOUNTER {
|
||||||
|
|
||||||
output:
|
output:
|
||||||
tuple val(meta), path("*.alleleCount"), emit: allelecount
|
tuple val(meta), path("*.alleleCount"), emit: allelecount
|
||||||
path "*.version.txt" , emit: version
|
path "versions.yml" , emit: version
|
||||||
|
|
||||||
script:
|
script:
|
||||||
def software = getSoftwareName(task.process)
|
def software = getSoftwareName(task.process)
|
||||||
|
@ -36,6 +36,9 @@ process ALLELECOUNTER {
|
||||||
-b $bam \\
|
-b $bam \\
|
||||||
-o ${prefix}.alleleCount
|
-o ${prefix}.alleleCount
|
||||||
|
|
||||||
alleleCounter --version > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(alleleCounter --version)
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
}
|
}
|
||||||
|
|
|
@ -42,7 +42,7 @@ output:
|
||||||
- version:
|
- version:
|
||||||
type: file
|
type: file
|
||||||
description: File containing software version
|
description: File containing software version
|
||||||
pattern: "*.{version.txt}"
|
pattern: "versions.yml"
|
||||||
- alleleCount:
|
- alleleCount:
|
||||||
type: file
|
type: file
|
||||||
description: Allele count file
|
description: Allele count file
|
||||||
|
|
|
@ -9,6 +9,13 @@ def getSoftwareName(task_process) {
|
||||||
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Extract name of module from process name using $task.process
|
||||||
|
//
|
||||||
|
def getProcessName(task_process) {
|
||||||
|
return task_process.tokenize(':')[-1]
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
||||||
//
|
//
|
||||||
|
@ -37,32 +44,35 @@ def getPathFromList(path_list) {
|
||||||
// Function to save/publish module results
|
// Function to save/publish module results
|
||||||
//
|
//
|
||||||
def saveFiles(Map args) {
|
def saveFiles(Map args) {
|
||||||
if (!args.filename.endsWith('.version.txt')) {
|
def ioptions = initOptions(args.options)
|
||||||
def ioptions = initOptions(args.options)
|
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
||||||
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
|
||||||
if (ioptions.publish_by_meta) {
|
// Do not publish versions.yml unless running from pytest workflow
|
||||||
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
if (args.filename.equals('versions.yml') && !System.getenv("NF_CORE_MODULES_TEST")) {
|
||||||
for (key in key_list) {
|
return null
|
||||||
if (args.meta && key instanceof String) {
|
}
|
||||||
def path = key
|
if (ioptions.publish_by_meta) {
|
||||||
if (args.meta.containsKey(key)) {
|
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
||||||
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
for (key in key_list) {
|
||||||
}
|
if (args.meta && key instanceof String) {
|
||||||
path = path instanceof String ? path : ''
|
def path = key
|
||||||
path_list.add(path)
|
if (args.meta.containsKey(key)) {
|
||||||
|
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
||||||
}
|
}
|
||||||
|
path = path instanceof String ? path : ''
|
||||||
|
path_list.add(path)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ioptions.publish_files instanceof Map) {
|
}
|
||||||
for (ext in ioptions.publish_files) {
|
if (ioptions.publish_files instanceof Map) {
|
||||||
if (args.filename.endsWith(ext.key)) {
|
for (ext in ioptions.publish_files) {
|
||||||
def ext_list = path_list.collect()
|
if (args.filename.endsWith(ext.key)) {
|
||||||
ext_list.add(ext.value)
|
def ext_list = path_list.collect()
|
||||||
return "${getPathFromList(ext_list)}/$args.filename"
|
ext_list.add(ext.value)
|
||||||
}
|
return "${getPathFromList(ext_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
} else if (ioptions.publish_files == null) {
|
}
|
||||||
return "${getPathFromList(path_list)}/$args.filename"
|
} else if (ioptions.publish_files == null) {
|
||||||
}
|
return "${getPathFromList(path_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// Import generic module functions
|
// Import generic module functions
|
||||||
include { initOptions; saveFiles; getSoftwareName } from './functions'
|
include { initOptions; saveFiles; getSoftwareName; getProcessName } from './functions'
|
||||||
|
|
||||||
params.options = [:]
|
params.options = [:]
|
||||||
options = initOptions(params.options)
|
options = initOptions(params.options)
|
||||||
|
@ -26,7 +26,7 @@ process ARRIBA {
|
||||||
output:
|
output:
|
||||||
tuple val(meta), path("*.fusions.tsv") , emit: fusions
|
tuple val(meta), path("*.fusions.tsv") , emit: fusions
|
||||||
tuple val(meta), path("*.fusions.discarded.tsv"), emit: fusions_fail
|
tuple val(meta), path("*.fusions.discarded.tsv"), emit: fusions_fail
|
||||||
path "*.version.txt" , emit: version
|
path "versions.yml" , emit: version
|
||||||
|
|
||||||
script:
|
script:
|
||||||
def software = getSoftwareName(task.process)
|
def software = getSoftwareName(task.process)
|
||||||
|
@ -42,6 +42,9 @@ process ARRIBA {
|
||||||
$blacklist \\
|
$blacklist \\
|
||||||
$options.args
|
$options.args
|
||||||
|
|
||||||
echo \$(arriba -h | grep 'Version:' 2>&1) | sed 's/Version:\s//' > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(arriba -h | grep 'Version:' 2>&1 | sed 's/Version:\s//')
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
}
|
}
|
||||||
|
|
|
@ -40,7 +40,7 @@ output:
|
||||||
- version:
|
- version:
|
||||||
type: file
|
type: file
|
||||||
description: File containing software version
|
description: File containing software version
|
||||||
pattern: "*.{version.txt}"
|
pattern: "versions.yml"
|
||||||
- fusions:
|
- fusions:
|
||||||
type: file
|
type: file
|
||||||
description: File contains fusions which pass all of Arriba's filters.
|
description: File contains fusions which pass all of Arriba's filters.
|
||||||
|
|
|
@ -9,6 +9,13 @@ def getSoftwareName(task_process) {
|
||||||
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Extract name of module from process name using $task.process
|
||||||
|
//
|
||||||
|
def getProcessName(task_process) {
|
||||||
|
return task_process.tokenize(':')[-1]
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
||||||
//
|
//
|
||||||
|
@ -37,32 +44,35 @@ def getPathFromList(path_list) {
|
||||||
// Function to save/publish module results
|
// Function to save/publish module results
|
||||||
//
|
//
|
||||||
def saveFiles(Map args) {
|
def saveFiles(Map args) {
|
||||||
if (!args.filename.endsWith('.version.txt')) {
|
def ioptions = initOptions(args.options)
|
||||||
def ioptions = initOptions(args.options)
|
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
||||||
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
|
||||||
if (ioptions.publish_by_meta) {
|
// Do not publish versions.yml unless running from pytest workflow
|
||||||
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
if (args.filename.equals('versions.yml') && !System.getenv("NF_CORE_MODULES_TEST")) {
|
||||||
for (key in key_list) {
|
return null
|
||||||
if (args.meta && key instanceof String) {
|
}
|
||||||
def path = key
|
if (ioptions.publish_by_meta) {
|
||||||
if (args.meta.containsKey(key)) {
|
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
||||||
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
for (key in key_list) {
|
||||||
}
|
if (args.meta && key instanceof String) {
|
||||||
path = path instanceof String ? path : ''
|
def path = key
|
||||||
path_list.add(path)
|
if (args.meta.containsKey(key)) {
|
||||||
|
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
||||||
}
|
}
|
||||||
|
path = path instanceof String ? path : ''
|
||||||
|
path_list.add(path)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ioptions.publish_files instanceof Map) {
|
}
|
||||||
for (ext in ioptions.publish_files) {
|
if (ioptions.publish_files instanceof Map) {
|
||||||
if (args.filename.endsWith(ext.key)) {
|
for (ext in ioptions.publish_files) {
|
||||||
def ext_list = path_list.collect()
|
if (args.filename.endsWith(ext.key)) {
|
||||||
ext_list.add(ext.value)
|
def ext_list = path_list.collect()
|
||||||
return "${getPathFromList(ext_list)}/$args.filename"
|
ext_list.add(ext.value)
|
||||||
}
|
return "${getPathFromList(ext_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
} else if (ioptions.publish_files == null) {
|
}
|
||||||
return "${getPathFromList(path_list)}/$args.filename"
|
} else if (ioptions.publish_files == null) {
|
||||||
}
|
return "${getPathFromList(path_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// Import generic module functions
|
// Import generic module functions
|
||||||
include { initOptions; saveFiles; getSoftwareName } from './functions'
|
include { initOptions; saveFiles; getSoftwareName; getProcessName } from './functions'
|
||||||
|
|
||||||
params.options = [:]
|
params.options = [:]
|
||||||
options = initOptions(params.options)
|
options = initOptions(params.options)
|
||||||
|
@ -23,7 +23,7 @@ process ARTIC_GUPPYPLEX {
|
||||||
|
|
||||||
output:
|
output:
|
||||||
tuple val(meta), path("*.fastq.gz"), emit: fastq
|
tuple val(meta), path("*.fastq.gz"), emit: fastq
|
||||||
path "*.version.txt" , emit: version
|
path "versions.yml" , emit: version
|
||||||
|
|
||||||
script:
|
script:
|
||||||
def software = getSoftwareName(task.process)
|
def software = getSoftwareName(task.process)
|
||||||
|
@ -36,6 +36,9 @@ process ARTIC_GUPPYPLEX {
|
||||||
--output ${prefix}.fastq
|
--output ${prefix}.fastq
|
||||||
|
|
||||||
pigz -p $task.cpus *.fastq
|
pigz -p $task.cpus *.fastq
|
||||||
echo \$(artic --version 2>&1) | sed 's/^.*artic //; s/ .*\$//' > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(artic --version 2>&1 | sed 's/^.*artic //; s/ .*\$//')
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
}
|
}
|
||||||
|
|
|
@ -37,7 +37,7 @@ output:
|
||||||
- version:
|
- version:
|
||||||
type: file
|
type: file
|
||||||
description: File containing software version
|
description: File containing software version
|
||||||
pattern: "*.{version.txt}"
|
pattern: "versions.yml"
|
||||||
|
|
||||||
authors:
|
authors:
|
||||||
- "@joseespinosa"
|
- "@joseespinosa"
|
||||||
|
|
|
@ -9,6 +9,13 @@ def getSoftwareName(task_process) {
|
||||||
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Extract name of module from process name using $task.process
|
||||||
|
//
|
||||||
|
def getProcessName(task_process) {
|
||||||
|
return task_process.tokenize(':')[-1]
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
||||||
//
|
//
|
||||||
|
@ -37,32 +44,35 @@ def getPathFromList(path_list) {
|
||||||
// Function to save/publish module results
|
// Function to save/publish module results
|
||||||
//
|
//
|
||||||
def saveFiles(Map args) {
|
def saveFiles(Map args) {
|
||||||
if (!args.filename.endsWith('.version.txt')) {
|
def ioptions = initOptions(args.options)
|
||||||
def ioptions = initOptions(args.options)
|
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
||||||
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
|
||||||
if (ioptions.publish_by_meta) {
|
// Do not publish versions.yml unless running from pytest workflow
|
||||||
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
if (args.filename.equals('versions.yml') && !System.getenv("NF_CORE_MODULES_TEST")) {
|
||||||
for (key in key_list) {
|
return null
|
||||||
if (args.meta && key instanceof String) {
|
}
|
||||||
def path = key
|
if (ioptions.publish_by_meta) {
|
||||||
if (args.meta.containsKey(key)) {
|
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
||||||
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
for (key in key_list) {
|
||||||
}
|
if (args.meta && key instanceof String) {
|
||||||
path = path instanceof String ? path : ''
|
def path = key
|
||||||
path_list.add(path)
|
if (args.meta.containsKey(key)) {
|
||||||
|
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
||||||
}
|
}
|
||||||
|
path = path instanceof String ? path : ''
|
||||||
|
path_list.add(path)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ioptions.publish_files instanceof Map) {
|
}
|
||||||
for (ext in ioptions.publish_files) {
|
if (ioptions.publish_files instanceof Map) {
|
||||||
if (args.filename.endsWith(ext.key)) {
|
for (ext in ioptions.publish_files) {
|
||||||
def ext_list = path_list.collect()
|
if (args.filename.endsWith(ext.key)) {
|
||||||
ext_list.add(ext.value)
|
def ext_list = path_list.collect()
|
||||||
return "${getPathFromList(ext_list)}/$args.filename"
|
ext_list.add(ext.value)
|
||||||
}
|
return "${getPathFromList(ext_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
} else if (ioptions.publish_files == null) {
|
}
|
||||||
return "${getPathFromList(path_list)}/$args.filename"
|
} else if (ioptions.publish_files == null) {
|
||||||
}
|
return "${getPathFromList(path_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// Import generic module functions
|
// Import generic module functions
|
||||||
include { initOptions; saveFiles; getSoftwareName } from './functions'
|
include { initOptions; saveFiles; getSoftwareName; getProcessName } from './functions'
|
||||||
|
|
||||||
params.options = [:]
|
params.options = [:]
|
||||||
options = initOptions(params.options)
|
options = initOptions(params.options)
|
||||||
|
@ -40,7 +40,7 @@ process ARTIC_MINION {
|
||||||
tuple val(meta), path("${prefix}.pass.vcf.gz") , emit: vcf
|
tuple val(meta), path("${prefix}.pass.vcf.gz") , emit: vcf
|
||||||
tuple val(meta), path("${prefix}.pass.vcf.gz.tbi") , emit: tbi
|
tuple val(meta), path("${prefix}.pass.vcf.gz.tbi") , emit: tbi
|
||||||
tuple val(meta), path("*.json"), optional:true , emit: json
|
tuple val(meta), path("*.json"), optional:true , emit: json
|
||||||
path "*.version.txt" , emit: version
|
path "versions.yml" , emit: version
|
||||||
|
|
||||||
script:
|
script:
|
||||||
def software = getSoftwareName(task.process)
|
def software = getSoftwareName(task.process)
|
||||||
|
@ -68,6 +68,9 @@ process ARTIC_MINION {
|
||||||
$scheme \\
|
$scheme \\
|
||||||
$prefix
|
$prefix
|
||||||
|
|
||||||
echo \$(artic --version 2>&1) | sed 's/^.*artic //; s/ .*\$//' > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(artic --version 2>&1 | sed 's/^.*artic //; s/ .*\$//')
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
}
|
}
|
||||||
|
|
|
@ -106,7 +106,7 @@ output:
|
||||||
- version:
|
- version:
|
||||||
type: file
|
type: file
|
||||||
description: File containing software version
|
description: File containing software version
|
||||||
pattern: "*.{version.txt}"
|
pattern: "versions.yml"
|
||||||
|
|
||||||
authors:
|
authors:
|
||||||
- "@joseespinosa"
|
- "@joseespinosa"
|
||||||
|
|
|
@ -9,6 +9,13 @@ def getSoftwareName(task_process) {
|
||||||
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Extract name of module from process name using $task.process
|
||||||
|
//
|
||||||
|
def getProcessName(task_process) {
|
||||||
|
return task_process.tokenize(':')[-1]
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
||||||
//
|
//
|
||||||
|
@ -37,32 +44,35 @@ def getPathFromList(path_list) {
|
||||||
// Function to save/publish module results
|
// Function to save/publish module results
|
||||||
//
|
//
|
||||||
def saveFiles(Map args) {
|
def saveFiles(Map args) {
|
||||||
if (!args.filename.endsWith('.version.txt')) {
|
def ioptions = initOptions(args.options)
|
||||||
def ioptions = initOptions(args.options)
|
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
||||||
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
|
||||||
if (ioptions.publish_by_meta) {
|
// Do not publish versions.yml unless running from pytest workflow
|
||||||
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
if (args.filename.equals('versions.yml') && !System.getenv("NF_CORE_MODULES_TEST")) {
|
||||||
for (key in key_list) {
|
return null
|
||||||
if (args.meta && key instanceof String) {
|
}
|
||||||
def path = key
|
if (ioptions.publish_by_meta) {
|
||||||
if (args.meta.containsKey(key)) {
|
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
||||||
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
for (key in key_list) {
|
||||||
}
|
if (args.meta && key instanceof String) {
|
||||||
path = path instanceof String ? path : ''
|
def path = key
|
||||||
path_list.add(path)
|
if (args.meta.containsKey(key)) {
|
||||||
|
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
||||||
}
|
}
|
||||||
|
path = path instanceof String ? path : ''
|
||||||
|
path_list.add(path)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ioptions.publish_files instanceof Map) {
|
}
|
||||||
for (ext in ioptions.publish_files) {
|
if (ioptions.publish_files instanceof Map) {
|
||||||
if (args.filename.endsWith(ext.key)) {
|
for (ext in ioptions.publish_files) {
|
||||||
def ext_list = path_list.collect()
|
if (args.filename.endsWith(ext.key)) {
|
||||||
ext_list.add(ext.value)
|
def ext_list = path_list.collect()
|
||||||
return "${getPathFromList(ext_list)}/$args.filename"
|
ext_list.add(ext.value)
|
||||||
}
|
return "${getPathFromList(ext_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
} else if (ioptions.publish_files == null) {
|
}
|
||||||
return "${getPathFromList(path_list)}/$args.filename"
|
} else if (ioptions.publish_files == null) {
|
||||||
}
|
return "${getPathFromList(path_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// Import generic module functions
|
// Import generic module functions
|
||||||
include { initOptions; saveFiles; getSoftwareName } from './functions'
|
include { initOptions; saveFiles; getSoftwareName; getProcessName } from './functions'
|
||||||
|
|
||||||
params.options = [:]
|
params.options = [:]
|
||||||
options = initOptions(params.options)
|
options = initOptions(params.options)
|
||||||
|
@ -23,7 +23,7 @@ process BAMALIGNCLEANER {
|
||||||
|
|
||||||
output:
|
output:
|
||||||
tuple val(meta), path("*.bam"), emit: bam
|
tuple val(meta), path("*.bam"), emit: bam
|
||||||
path "*.version.txt" , emit: version
|
path "versions.yml" , emit: version
|
||||||
|
|
||||||
script:
|
script:
|
||||||
def software = getSoftwareName(task.process)
|
def software = getSoftwareName(task.process)
|
||||||
|
@ -35,6 +35,9 @@ process BAMALIGNCLEANER {
|
||||||
-o ${prefix}.bam \\
|
-o ${prefix}.bam \\
|
||||||
${bam}
|
${bam}
|
||||||
|
|
||||||
echo \$(bamAlignCleaner --version) | sed 's/.*version //' > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(bamAlignCleaner --version | sed 's/.*version //')
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
}
|
}
|
||||||
|
|
|
@ -30,7 +30,7 @@ output:
|
||||||
- version:
|
- version:
|
||||||
type: file
|
type: file
|
||||||
description: File containing software version
|
description: File containing software version
|
||||||
pattern: "*.{version.txt}"
|
pattern: "versions.yml"
|
||||||
- bam:
|
- bam:
|
||||||
type: file
|
type: file
|
||||||
description: Sorted BAM/CRAM file
|
description: Sorted BAM/CRAM file
|
||||||
|
|
|
@ -9,6 +9,13 @@ def getSoftwareName(task_process) {
|
||||||
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Extract name of module from process name using $task.process
|
||||||
|
//
|
||||||
|
def getProcessName(task_process) {
|
||||||
|
return task_process.tokenize(':')[-1]
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
||||||
//
|
//
|
||||||
|
@ -37,32 +44,35 @@ def getPathFromList(path_list) {
|
||||||
// Function to save/publish module results
|
// Function to save/publish module results
|
||||||
//
|
//
|
||||||
def saveFiles(Map args) {
|
def saveFiles(Map args) {
|
||||||
if (!args.filename.endsWith('.version.txt')) {
|
def ioptions = initOptions(args.options)
|
||||||
def ioptions = initOptions(args.options)
|
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
||||||
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
|
||||||
if (ioptions.publish_by_meta) {
|
// Do not publish versions.yml unless running from pytest workflow
|
||||||
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
if (args.filename.equals('versions.yml') && !System.getenv("NF_CORE_MODULES_TEST")) {
|
||||||
for (key in key_list) {
|
return null
|
||||||
if (args.meta && key instanceof String) {
|
}
|
||||||
def path = key
|
if (ioptions.publish_by_meta) {
|
||||||
if (args.meta.containsKey(key)) {
|
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
||||||
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
for (key in key_list) {
|
||||||
}
|
if (args.meta && key instanceof String) {
|
||||||
path = path instanceof String ? path : ''
|
def path = key
|
||||||
path_list.add(path)
|
if (args.meta.containsKey(key)) {
|
||||||
|
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
||||||
}
|
}
|
||||||
|
path = path instanceof String ? path : ''
|
||||||
|
path_list.add(path)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ioptions.publish_files instanceof Map) {
|
}
|
||||||
for (ext in ioptions.publish_files) {
|
if (ioptions.publish_files instanceof Map) {
|
||||||
if (args.filename.endsWith(ext.key)) {
|
for (ext in ioptions.publish_files) {
|
||||||
def ext_list = path_list.collect()
|
if (args.filename.endsWith(ext.key)) {
|
||||||
ext_list.add(ext.value)
|
def ext_list = path_list.collect()
|
||||||
return "${getPathFromList(ext_list)}/$args.filename"
|
ext_list.add(ext.value)
|
||||||
}
|
return "${getPathFromList(ext_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
} else if (ioptions.publish_files == null) {
|
}
|
||||||
return "${getPathFromList(path_list)}/$args.filename"
|
} else if (ioptions.publish_files == null) {
|
||||||
}
|
return "${getPathFromList(path_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// Import generic module functions
|
// Import generic module functions
|
||||||
include { initOptions; saveFiles; getSoftwareName } from './functions'
|
include { initOptions; saveFiles; getSoftwareName; getProcessName } from './functions'
|
||||||
|
|
||||||
params.options = [:]
|
params.options = [:]
|
||||||
options = initOptions(params.options)
|
options = initOptions(params.options)
|
||||||
|
@ -24,7 +24,7 @@ process BANDAGE_IMAGE {
|
||||||
output:
|
output:
|
||||||
tuple val(meta), path('*.png'), emit: png
|
tuple val(meta), path('*.png'), emit: png
|
||||||
tuple val(meta), path('*.svg'), emit: svg
|
tuple val(meta), path('*.svg'), emit: svg
|
||||||
path '*.version.txt' , emit: version
|
path "versions.yml" , emit: version
|
||||||
|
|
||||||
script:
|
script:
|
||||||
def software = getSoftwareName(task.process)
|
def software = getSoftwareName(task.process)
|
||||||
|
@ -33,6 +33,9 @@ process BANDAGE_IMAGE {
|
||||||
Bandage image $gfa ${prefix}.png $options.args
|
Bandage image $gfa ${prefix}.png $options.args
|
||||||
Bandage image $gfa ${prefix}.svg $options.args
|
Bandage image $gfa ${prefix}.svg $options.args
|
||||||
|
|
||||||
echo \$(Bandage --version 2>&1) | sed 's/^.*Version: //; s/ .*\$//' > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(Bandage --version 2>&1 | sed 's/^.*Version: //; s/ .*\$//')
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
}
|
}
|
||||||
|
|
|
@ -38,6 +38,6 @@ output:
|
||||||
- version:
|
- version:
|
||||||
type: file
|
type: file
|
||||||
description: File containing software version
|
description: File containing software version
|
||||||
pattern: "*.{version.txt}"
|
pattern: "versions.yml"
|
||||||
authors:
|
authors:
|
||||||
- "@heuermh"
|
- "@heuermh"
|
||||||
|
|
|
@ -9,6 +9,13 @@ def getSoftwareName(task_process) {
|
||||||
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Extract name of module from process name using $task.process
|
||||||
|
//
|
||||||
|
def getProcessName(task_process) {
|
||||||
|
return task_process.tokenize(':')[-1]
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
||||||
//
|
//
|
||||||
|
@ -37,32 +44,35 @@ def getPathFromList(path_list) {
|
||||||
// Function to save/publish module results
|
// Function to save/publish module results
|
||||||
//
|
//
|
||||||
def saveFiles(Map args) {
|
def saveFiles(Map args) {
|
||||||
if (!args.filename.endsWith('.version.txt')) {
|
def ioptions = initOptions(args.options)
|
||||||
def ioptions = initOptions(args.options)
|
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
||||||
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
|
||||||
if (ioptions.publish_by_meta) {
|
// Do not publish versions.yml unless running from pytest workflow
|
||||||
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
if (args.filename.equals('versions.yml') && !System.getenv("NF_CORE_MODULES_TEST")) {
|
||||||
for (key in key_list) {
|
return null
|
||||||
if (args.meta && key instanceof String) {
|
}
|
||||||
def path = key
|
if (ioptions.publish_by_meta) {
|
||||||
if (args.meta.containsKey(key)) {
|
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
||||||
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
for (key in key_list) {
|
||||||
}
|
if (args.meta && key instanceof String) {
|
||||||
path = path instanceof String ? path : ''
|
def path = key
|
||||||
path_list.add(path)
|
if (args.meta.containsKey(key)) {
|
||||||
|
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
||||||
}
|
}
|
||||||
|
path = path instanceof String ? path : ''
|
||||||
|
path_list.add(path)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ioptions.publish_files instanceof Map) {
|
}
|
||||||
for (ext in ioptions.publish_files) {
|
if (ioptions.publish_files instanceof Map) {
|
||||||
if (args.filename.endsWith(ext.key)) {
|
for (ext in ioptions.publish_files) {
|
||||||
def ext_list = path_list.collect()
|
if (args.filename.endsWith(ext.key)) {
|
||||||
ext_list.add(ext.value)
|
def ext_list = path_list.collect()
|
||||||
return "${getPathFromList(ext_list)}/$args.filename"
|
ext_list.add(ext.value)
|
||||||
}
|
return "${getPathFromList(ext_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
} else if (ioptions.publish_files == null) {
|
}
|
||||||
return "${getPathFromList(path_list)}/$args.filename"
|
} else if (ioptions.publish_files == null) {
|
||||||
}
|
return "${getPathFromList(path_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// Import generic module functions
|
// Import generic module functions
|
||||||
include { initOptions; saveFiles; getSoftwareName } from './functions'
|
include { initOptions; saveFiles; getSoftwareName; getProcessName } from './functions'
|
||||||
|
|
||||||
params.options = [:]
|
params.options = [:]
|
||||||
options = initOptions(params.options)
|
options = initOptions(params.options)
|
||||||
|
@ -24,7 +24,7 @@ process BBMAP_ALIGN {
|
||||||
|
|
||||||
output:
|
output:
|
||||||
tuple val(meta), path("*.bam"), emit: bam
|
tuple val(meta), path("*.bam"), emit: bam
|
||||||
path "*.version.txt" , emit: version
|
path "versions.yml" , emit: version
|
||||||
|
|
||||||
script:
|
script:
|
||||||
def software = getSoftwareName(task.process)
|
def software = getSoftwareName(task.process)
|
||||||
|
@ -54,6 +54,9 @@ process BBMAP_ALIGN {
|
||||||
threads=$task.cpus \\
|
threads=$task.cpus \\
|
||||||
-Xmx${task.memory.toGiga()}g
|
-Xmx${task.memory.toGiga()}g
|
||||||
|
|
||||||
echo \$(bbversion.sh) > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(bbversion.sh)
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
}
|
}
|
||||||
|
|
|
@ -42,7 +42,7 @@ output:
|
||||||
- version:
|
- version:
|
||||||
type: file
|
type: file
|
||||||
description: File containing software version
|
description: File containing software version
|
||||||
pattern: "*.{version.txt}"
|
pattern: "versions.yml"
|
||||||
- bam:
|
- bam:
|
||||||
type: file
|
type: file
|
||||||
description: BAM file
|
description: BAM file
|
||||||
|
|
|
@ -9,6 +9,13 @@ def getSoftwareName(task_process) {
|
||||||
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Extract name of module from process name using $task.process
|
||||||
|
//
|
||||||
|
def getProcessName(task_process) {
|
||||||
|
return task_process.tokenize(':')[-1]
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
||||||
//
|
//
|
||||||
|
@ -37,32 +44,35 @@ def getPathFromList(path_list) {
|
||||||
// Function to save/publish module results
|
// Function to save/publish module results
|
||||||
//
|
//
|
||||||
def saveFiles(Map args) {
|
def saveFiles(Map args) {
|
||||||
if (!args.filename.endsWith('.version.txt')) {
|
def ioptions = initOptions(args.options)
|
||||||
def ioptions = initOptions(args.options)
|
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
||||||
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
|
||||||
if (ioptions.publish_by_meta) {
|
// Do not publish versions.yml unless running from pytest workflow
|
||||||
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
if (args.filename.equals('versions.yml') && !System.getenv("NF_CORE_MODULES_TEST")) {
|
||||||
for (key in key_list) {
|
return null
|
||||||
if (args.meta && key instanceof String) {
|
}
|
||||||
def path = key
|
if (ioptions.publish_by_meta) {
|
||||||
if (args.meta.containsKey(key)) {
|
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
||||||
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
for (key in key_list) {
|
||||||
}
|
if (args.meta && key instanceof String) {
|
||||||
path = path instanceof String ? path : ''
|
def path = key
|
||||||
path_list.add(path)
|
if (args.meta.containsKey(key)) {
|
||||||
|
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
||||||
}
|
}
|
||||||
|
path = path instanceof String ? path : ''
|
||||||
|
path_list.add(path)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ioptions.publish_files instanceof Map) {
|
}
|
||||||
for (ext in ioptions.publish_files) {
|
if (ioptions.publish_files instanceof Map) {
|
||||||
if (args.filename.endsWith(ext.key)) {
|
for (ext in ioptions.publish_files) {
|
||||||
def ext_list = path_list.collect()
|
if (args.filename.endsWith(ext.key)) {
|
||||||
ext_list.add(ext.value)
|
def ext_list = path_list.collect()
|
||||||
return "${getPathFromList(ext_list)}/$args.filename"
|
ext_list.add(ext.value)
|
||||||
}
|
return "${getPathFromList(ext_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
} else if (ioptions.publish_files == null) {
|
}
|
||||||
return "${getPathFromList(path_list)}/$args.filename"
|
} else if (ioptions.publish_files == null) {
|
||||||
}
|
return "${getPathFromList(path_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
include { initOptions; saveFiles; getSoftwareName } from './functions'
|
include { initOptions; saveFiles; getSoftwareName; getProcessName } from './functions'
|
||||||
|
|
||||||
params.options = [:]
|
params.options = [:]
|
||||||
options = initOptions(params.options)
|
options = initOptions(params.options)
|
||||||
|
@ -24,7 +24,7 @@ process BBMAP_BBDUK {
|
||||||
output:
|
output:
|
||||||
tuple val(meta), path('*.fastq.gz'), emit: reads
|
tuple val(meta), path('*.fastq.gz'), emit: reads
|
||||||
tuple val(meta), path('*.log') , emit: log
|
tuple val(meta), path('*.log') , emit: log
|
||||||
path '*.version.txt' , emit: version
|
path "versions.yml" , emit: version
|
||||||
|
|
||||||
script:
|
script:
|
||||||
def software = getSoftwareName(task.process)
|
def software = getSoftwareName(task.process)
|
||||||
|
@ -42,6 +42,9 @@ process BBMAP_BBDUK {
|
||||||
$options.args \\
|
$options.args \\
|
||||||
$contaminants_fa \\
|
$contaminants_fa \\
|
||||||
&> ${prefix}.bbduk.log
|
&> ${prefix}.bbduk.log
|
||||||
echo \$(bbversion.sh) > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(bbversion.sh)
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
}
|
}
|
||||||
|
|
|
@ -42,7 +42,7 @@ output:
|
||||||
- version:
|
- version:
|
||||||
type: file
|
type: file
|
||||||
description: File containing software version
|
description: File containing software version
|
||||||
pattern: "*.{version.txt}"
|
pattern: "versions.yml"
|
||||||
- log:
|
- log:
|
||||||
type: file
|
type: file
|
||||||
description: Bbduk log file
|
description: Bbduk log file
|
||||||
|
|
|
@ -9,6 +9,13 @@ def getSoftwareName(task_process) {
|
||||||
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Extract name of module from process name using $task.process
|
||||||
|
//
|
||||||
|
def getProcessName(task_process) {
|
||||||
|
return task_process.tokenize(':')[-1]
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
||||||
//
|
//
|
||||||
|
@ -37,32 +44,35 @@ def getPathFromList(path_list) {
|
||||||
// Function to save/publish module results
|
// Function to save/publish module results
|
||||||
//
|
//
|
||||||
def saveFiles(Map args) {
|
def saveFiles(Map args) {
|
||||||
if (!args.filename.endsWith('.version.txt')) {
|
def ioptions = initOptions(args.options)
|
||||||
def ioptions = initOptions(args.options)
|
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
||||||
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
|
||||||
if (ioptions.publish_by_meta) {
|
// Do not publish versions.yml unless running from pytest workflow
|
||||||
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
if (args.filename.equals('versions.yml') && !System.getenv("NF_CORE_MODULES_TEST")) {
|
||||||
for (key in key_list) {
|
return null
|
||||||
if (args.meta && key instanceof String) {
|
}
|
||||||
def path = key
|
if (ioptions.publish_by_meta) {
|
||||||
if (args.meta.containsKey(key)) {
|
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
||||||
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
for (key in key_list) {
|
||||||
}
|
if (args.meta && key instanceof String) {
|
||||||
path = path instanceof String ? path : ''
|
def path = key
|
||||||
path_list.add(path)
|
if (args.meta.containsKey(key)) {
|
||||||
|
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
||||||
}
|
}
|
||||||
|
path = path instanceof String ? path : ''
|
||||||
|
path_list.add(path)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ioptions.publish_files instanceof Map) {
|
}
|
||||||
for (ext in ioptions.publish_files) {
|
if (ioptions.publish_files instanceof Map) {
|
||||||
if (args.filename.endsWith(ext.key)) {
|
for (ext in ioptions.publish_files) {
|
||||||
def ext_list = path_list.collect()
|
if (args.filename.endsWith(ext.key)) {
|
||||||
ext_list.add(ext.value)
|
def ext_list = path_list.collect()
|
||||||
return "${getPathFromList(ext_list)}/$args.filename"
|
ext_list.add(ext.value)
|
||||||
}
|
return "${getPathFromList(ext_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
} else if (ioptions.publish_files == null) {
|
}
|
||||||
return "${getPathFromList(path_list)}/$args.filename"
|
} else if (ioptions.publish_files == null) {
|
||||||
}
|
return "${getPathFromList(path_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// Import generic module functions
|
// Import generic module functions
|
||||||
include { initOptions; saveFiles; getSoftwareName } from './functions'
|
include { initOptions; saveFiles; getSoftwareName; getProcessName } from './functions'
|
||||||
|
|
||||||
params.options = [:]
|
params.options = [:]
|
||||||
options = initOptions(params.options)
|
options = initOptions(params.options)
|
||||||
|
@ -23,7 +23,7 @@ process BBMAP_INDEX {
|
||||||
|
|
||||||
output:
|
output:
|
||||||
path 'ref' , emit: index
|
path 'ref' , emit: index
|
||||||
path "*.version.txt" , emit: version
|
path "versions.yml" , emit: version
|
||||||
|
|
||||||
script:
|
script:
|
||||||
def software = getSoftwareName(task.process)
|
def software = getSoftwareName(task.process)
|
||||||
|
@ -34,6 +34,9 @@ process BBMAP_INDEX {
|
||||||
threads=$task.cpus \\
|
threads=$task.cpus \\
|
||||||
-Xmx${task.memory.toGiga()}g
|
-Xmx${task.memory.toGiga()}g
|
||||||
|
|
||||||
echo \$(bbversion.sh) > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(bbversion.sh)
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
}
|
}
|
||||||
|
|
|
@ -23,7 +23,7 @@ output:
|
||||||
- version:
|
- version:
|
||||||
type: file
|
type: file
|
||||||
description: File containing software version
|
description: File containing software version
|
||||||
pattern: "*.{version.txt}"
|
pattern: "versions.yml"
|
||||||
- db:
|
- db:
|
||||||
type: directory
|
type: directory
|
||||||
description: Directory with index files
|
description: Directory with index files
|
||||||
|
|
|
@ -9,6 +9,13 @@ def getSoftwareName(task_process) {
|
||||||
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Extract name of module from process name using $task.process
|
||||||
|
//
|
||||||
|
def getProcessName(task_process) {
|
||||||
|
return task_process.tokenize(':')[-1]
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
||||||
//
|
//
|
||||||
|
@ -37,32 +44,35 @@ def getPathFromList(path_list) {
|
||||||
// Function to save/publish module results
|
// Function to save/publish module results
|
||||||
//
|
//
|
||||||
def saveFiles(Map args) {
|
def saveFiles(Map args) {
|
||||||
if (!args.filename.endsWith('.version.txt')) {
|
def ioptions = initOptions(args.options)
|
||||||
def ioptions = initOptions(args.options)
|
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
||||||
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
|
||||||
if (ioptions.publish_by_meta) {
|
// Do not publish versions.yml unless running from pytest workflow
|
||||||
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
if (args.filename.equals('versions.yml') && !System.getenv("NF_CORE_MODULES_TEST")) {
|
||||||
for (key in key_list) {
|
return null
|
||||||
if (args.meta && key instanceof String) {
|
}
|
||||||
def path = key
|
if (ioptions.publish_by_meta) {
|
||||||
if (args.meta.containsKey(key)) {
|
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
||||||
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
for (key in key_list) {
|
||||||
}
|
if (args.meta && key instanceof String) {
|
||||||
path = path instanceof String ? path : ''
|
def path = key
|
||||||
path_list.add(path)
|
if (args.meta.containsKey(key)) {
|
||||||
|
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
||||||
}
|
}
|
||||||
|
path = path instanceof String ? path : ''
|
||||||
|
path_list.add(path)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ioptions.publish_files instanceof Map) {
|
}
|
||||||
for (ext in ioptions.publish_files) {
|
if (ioptions.publish_files instanceof Map) {
|
||||||
if (args.filename.endsWith(ext.key)) {
|
for (ext in ioptions.publish_files) {
|
||||||
def ext_list = path_list.collect()
|
if (args.filename.endsWith(ext.key)) {
|
||||||
ext_list.add(ext.value)
|
def ext_list = path_list.collect()
|
||||||
return "${getPathFromList(ext_list)}/$args.filename"
|
ext_list.add(ext.value)
|
||||||
}
|
return "${getPathFromList(ext_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
} else if (ioptions.publish_files == null) {
|
}
|
||||||
return "${getPathFromList(path_list)}/$args.filename"
|
} else if (ioptions.publish_files == null) {
|
||||||
}
|
return "${getPathFromList(path_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// Import generic module functions
|
// Import generic module functions
|
||||||
include { initOptions; saveFiles; getSoftwareName } from './functions'
|
include { initOptions; saveFiles; getSoftwareName; getProcessName } from './functions'
|
||||||
|
|
||||||
params.options = [:]
|
params.options = [:]
|
||||||
options = initOptions(params.options)
|
options = initOptions(params.options)
|
||||||
|
@ -23,7 +23,7 @@ process BCFTOOLS_CONCAT {
|
||||||
|
|
||||||
output:
|
output:
|
||||||
tuple val(meta), path("*.gz"), emit: vcf
|
tuple val(meta), path("*.gz"), emit: vcf
|
||||||
path "*.version.txt" , emit: version
|
path "versions.yml" , emit: version
|
||||||
|
|
||||||
script:
|
script:
|
||||||
def software = getSoftwareName(task.process)
|
def software = getSoftwareName(task.process)
|
||||||
|
@ -35,6 +35,9 @@ process BCFTOOLS_CONCAT {
|
||||||
--threads $task.cpus \\
|
--threads $task.cpus \\
|
||||||
${vcfs}
|
${vcfs}
|
||||||
|
|
||||||
echo \$(bcftools --version 2>&1) | sed 's/^.*bcftools //; s/ .*\$//' > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(bcftools --version 2>&1 | head -n1 | sed 's/^.*bcftools //; s/ .*\$//')
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
}
|
}
|
||||||
|
|
|
@ -37,6 +37,6 @@ output:
|
||||||
- version:
|
- version:
|
||||||
type: file
|
type: file
|
||||||
description: File containing software version
|
description: File containing software version
|
||||||
pattern: "*.{version.txt}"
|
pattern: "versions.yml"
|
||||||
authors:
|
authors:
|
||||||
- "@abhi18av"
|
- "@abhi18av"
|
||||||
|
|
|
@ -9,6 +9,13 @@ def getSoftwareName(task_process) {
|
||||||
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Extract name of module from process name using $task.process
|
||||||
|
//
|
||||||
|
def getProcessName(task_process) {
|
||||||
|
return task_process.tokenize(':')[-1]
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
||||||
//
|
//
|
||||||
|
@ -37,32 +44,35 @@ def getPathFromList(path_list) {
|
||||||
// Function to save/publish module results
|
// Function to save/publish module results
|
||||||
//
|
//
|
||||||
def saveFiles(Map args) {
|
def saveFiles(Map args) {
|
||||||
if (!args.filename.endsWith('.version.txt')) {
|
def ioptions = initOptions(args.options)
|
||||||
def ioptions = initOptions(args.options)
|
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
||||||
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
|
||||||
if (ioptions.publish_by_meta) {
|
// Do not publish versions.yml unless running from pytest workflow
|
||||||
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
if (args.filename.equals('versions.yml') && !System.getenv("NF_CORE_MODULES_TEST")) {
|
||||||
for (key in key_list) {
|
return null
|
||||||
if (args.meta && key instanceof String) {
|
}
|
||||||
def path = key
|
if (ioptions.publish_by_meta) {
|
||||||
if (args.meta.containsKey(key)) {
|
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
||||||
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
for (key in key_list) {
|
||||||
}
|
if (args.meta && key instanceof String) {
|
||||||
path = path instanceof String ? path : ''
|
def path = key
|
||||||
path_list.add(path)
|
if (args.meta.containsKey(key)) {
|
||||||
|
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
||||||
}
|
}
|
||||||
|
path = path instanceof String ? path : ''
|
||||||
|
path_list.add(path)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ioptions.publish_files instanceof Map) {
|
}
|
||||||
for (ext in ioptions.publish_files) {
|
if (ioptions.publish_files instanceof Map) {
|
||||||
if (args.filename.endsWith(ext.key)) {
|
for (ext in ioptions.publish_files) {
|
||||||
def ext_list = path_list.collect()
|
if (args.filename.endsWith(ext.key)) {
|
||||||
ext_list.add(ext.value)
|
def ext_list = path_list.collect()
|
||||||
return "${getPathFromList(ext_list)}/$args.filename"
|
ext_list.add(ext.value)
|
||||||
}
|
return "${getPathFromList(ext_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
} else if (ioptions.publish_files == null) {
|
}
|
||||||
return "${getPathFromList(path_list)}/$args.filename"
|
} else if (ioptions.publish_files == null) {
|
||||||
}
|
return "${getPathFromList(path_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// Import generic module functions
|
// Import generic module functions
|
||||||
include { initOptions; saveFiles; getSoftwareName } from './functions'
|
include { initOptions; saveFiles; getSoftwareName; getProcessName } from './functions'
|
||||||
|
|
||||||
params.options = [:]
|
params.options = [:]
|
||||||
options = initOptions(params.options)
|
options = initOptions(params.options)
|
||||||
|
@ -23,7 +23,7 @@ process BCFTOOLS_CONSENSUS {
|
||||||
|
|
||||||
output:
|
output:
|
||||||
tuple val(meta), path('*.fa'), emit: fasta
|
tuple val(meta), path('*.fa'), emit: fasta
|
||||||
path '*.version.txt' , emit: version
|
path "versions.yml" , emit: version
|
||||||
|
|
||||||
script:
|
script:
|
||||||
def software = getSoftwareName(task.process)
|
def software = getSoftwareName(task.process)
|
||||||
|
@ -33,6 +33,9 @@ process BCFTOOLS_CONSENSUS {
|
||||||
header=\$(head -n 1 ${prefix}.fa | sed 's/>//g')
|
header=\$(head -n 1 ${prefix}.fa | sed 's/>//g')
|
||||||
sed -i 's/\${header}/${meta.id}/g' ${prefix}.fa
|
sed -i 's/\${header}/${meta.id}/g' ${prefix}.fa
|
||||||
|
|
||||||
echo \$(bcftools --version 2>&1) | sed 's/^.*bcftools //; s/ .*\$//' > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(bcftools --version 2>&1 | head -n1 | sed 's/^.*bcftools //; s/ .*\$//')
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
}
|
}
|
||||||
|
|
|
@ -42,7 +42,7 @@ output:
|
||||||
- version:
|
- version:
|
||||||
type: file
|
type: file
|
||||||
description: File containing software version
|
description: File containing software version
|
||||||
pattern: "*.{version.txt}"
|
pattern: "versions.yml"
|
||||||
authors:
|
authors:
|
||||||
- "@joseespinosa"
|
- "@joseespinosa"
|
||||||
- "@drpatelh"
|
- "@drpatelh"
|
||||||
|
|
|
@ -9,6 +9,13 @@ def getSoftwareName(task_process) {
|
||||||
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Extract name of module from process name using $task.process
|
||||||
|
//
|
||||||
|
def getProcessName(task_process) {
|
||||||
|
return task_process.tokenize(':')[-1]
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
||||||
//
|
//
|
||||||
|
@ -37,32 +44,35 @@ def getPathFromList(path_list) {
|
||||||
// Function to save/publish module results
|
// Function to save/publish module results
|
||||||
//
|
//
|
||||||
def saveFiles(Map args) {
|
def saveFiles(Map args) {
|
||||||
if (!args.filename.endsWith('.version.txt')) {
|
def ioptions = initOptions(args.options)
|
||||||
def ioptions = initOptions(args.options)
|
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
||||||
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
|
||||||
if (ioptions.publish_by_meta) {
|
// Do not publish versions.yml unless running from pytest workflow
|
||||||
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
if (args.filename.equals('versions.yml') && !System.getenv("NF_CORE_MODULES_TEST")) {
|
||||||
for (key in key_list) {
|
return null
|
||||||
if (args.meta && key instanceof String) {
|
}
|
||||||
def path = key
|
if (ioptions.publish_by_meta) {
|
||||||
if (args.meta.containsKey(key)) {
|
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
||||||
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
for (key in key_list) {
|
||||||
}
|
if (args.meta && key instanceof String) {
|
||||||
path = path instanceof String ? path : ''
|
def path = key
|
||||||
path_list.add(path)
|
if (args.meta.containsKey(key)) {
|
||||||
|
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
||||||
}
|
}
|
||||||
|
path = path instanceof String ? path : ''
|
||||||
|
path_list.add(path)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ioptions.publish_files instanceof Map) {
|
}
|
||||||
for (ext in ioptions.publish_files) {
|
if (ioptions.publish_files instanceof Map) {
|
||||||
if (args.filename.endsWith(ext.key)) {
|
for (ext in ioptions.publish_files) {
|
||||||
def ext_list = path_list.collect()
|
if (args.filename.endsWith(ext.key)) {
|
||||||
ext_list.add(ext.value)
|
def ext_list = path_list.collect()
|
||||||
return "${getPathFromList(ext_list)}/$args.filename"
|
ext_list.add(ext.value)
|
||||||
}
|
return "${getPathFromList(ext_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
} else if (ioptions.publish_files == null) {
|
}
|
||||||
return "${getPathFromList(path_list)}/$args.filename"
|
} else if (ioptions.publish_files == null) {
|
||||||
}
|
return "${getPathFromList(path_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// Import generic module functions
|
// Import generic module functions
|
||||||
include { initOptions; saveFiles; getSoftwareName } from './functions'
|
include { initOptions; saveFiles; getSoftwareName; getProcessName } from './functions'
|
||||||
|
|
||||||
params.options = [:]
|
params.options = [:]
|
||||||
options = initOptions(params.options)
|
options = initOptions(params.options)
|
||||||
|
@ -23,7 +23,7 @@ process BCFTOOLS_FILTER {
|
||||||
|
|
||||||
output:
|
output:
|
||||||
tuple val(meta), path("*.gz"), emit: vcf
|
tuple val(meta), path("*.gz"), emit: vcf
|
||||||
path "*.version.txt" , emit: version
|
path "versions.yml" , emit: version
|
||||||
|
|
||||||
script:
|
script:
|
||||||
def software = getSoftwareName(task.process)
|
def software = getSoftwareName(task.process)
|
||||||
|
@ -34,6 +34,9 @@ process BCFTOOLS_FILTER {
|
||||||
$options.args \\
|
$options.args \\
|
||||||
$vcf
|
$vcf
|
||||||
|
|
||||||
echo \$(bcftools --version 2>&1) | sed 's/^.*bcftools //; s/ .*\$//' > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(bcftools --version 2>&1 | head -n1 | sed 's/^.*bcftools //; s/ .*\$//')
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
}
|
}
|
||||||
|
|
|
@ -34,7 +34,7 @@ output:
|
||||||
- version:
|
- version:
|
||||||
type: file
|
type: file
|
||||||
description: File containing software version
|
description: File containing software version
|
||||||
pattern: "*.{version.txt}"
|
pattern: "versions.yml"
|
||||||
authors:
|
authors:
|
||||||
- "@joseespinosa"
|
- "@joseespinosa"
|
||||||
- "@drpatelh"
|
- "@drpatelh"
|
||||||
|
|
|
@ -9,6 +9,13 @@ def getSoftwareName(task_process) {
|
||||||
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Extract name of module from process name using $task.process
|
||||||
|
//
|
||||||
|
def getProcessName(task_process) {
|
||||||
|
return task_process.tokenize(':')[-1]
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
||||||
//
|
//
|
||||||
|
@ -37,32 +44,35 @@ def getPathFromList(path_list) {
|
||||||
// Function to save/publish module results
|
// Function to save/publish module results
|
||||||
//
|
//
|
||||||
def saveFiles(Map args) {
|
def saveFiles(Map args) {
|
||||||
if (!args.filename.endsWith('.version.txt')) {
|
def ioptions = initOptions(args.options)
|
||||||
def ioptions = initOptions(args.options)
|
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
||||||
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
|
||||||
if (ioptions.publish_by_meta) {
|
// Do not publish versions.yml unless running from pytest workflow
|
||||||
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
if (args.filename.equals('versions.yml') && !System.getenv("NF_CORE_MODULES_TEST")) {
|
||||||
for (key in key_list) {
|
return null
|
||||||
if (args.meta && key instanceof String) {
|
}
|
||||||
def path = key
|
if (ioptions.publish_by_meta) {
|
||||||
if (args.meta.containsKey(key)) {
|
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
||||||
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
for (key in key_list) {
|
||||||
}
|
if (args.meta && key instanceof String) {
|
||||||
path = path instanceof String ? path : ''
|
def path = key
|
||||||
path_list.add(path)
|
if (args.meta.containsKey(key)) {
|
||||||
|
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
||||||
}
|
}
|
||||||
|
path = path instanceof String ? path : ''
|
||||||
|
path_list.add(path)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ioptions.publish_files instanceof Map) {
|
}
|
||||||
for (ext in ioptions.publish_files) {
|
if (ioptions.publish_files instanceof Map) {
|
||||||
if (args.filename.endsWith(ext.key)) {
|
for (ext in ioptions.publish_files) {
|
||||||
def ext_list = path_list.collect()
|
if (args.filename.endsWith(ext.key)) {
|
||||||
ext_list.add(ext.value)
|
def ext_list = path_list.collect()
|
||||||
return "${getPathFromList(ext_list)}/$args.filename"
|
ext_list.add(ext.value)
|
||||||
}
|
return "${getPathFromList(ext_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
} else if (ioptions.publish_files == null) {
|
}
|
||||||
return "${getPathFromList(path_list)}/$args.filename"
|
} else if (ioptions.publish_files == null) {
|
||||||
}
|
return "${getPathFromList(path_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// Import generic module functions
|
// Import generic module functions
|
||||||
include { initOptions; saveFiles; getSoftwareName } from './functions'
|
include { initOptions; saveFiles; getSoftwareName; getProcessName } from './functions'
|
||||||
|
|
||||||
params.options = [:]
|
params.options = [:]
|
||||||
options = initOptions(params.options)
|
options = initOptions(params.options)
|
||||||
|
@ -23,7 +23,7 @@ process BCFTOOLS_ISEC {
|
||||||
|
|
||||||
output:
|
output:
|
||||||
tuple val(meta), path("${prefix}"), emit: results
|
tuple val(meta), path("${prefix}"), emit: results
|
||||||
path "*.version.txt" , emit: version
|
path "versions.yml" , emit: version
|
||||||
|
|
||||||
script:
|
script:
|
||||||
def software = getSoftwareName(task.process)
|
def software = getSoftwareName(task.process)
|
||||||
|
@ -33,6 +33,9 @@ process BCFTOOLS_ISEC {
|
||||||
$options.args \\
|
$options.args \\
|
||||||
-p $prefix \\
|
-p $prefix \\
|
||||||
*.vcf.gz
|
*.vcf.gz
|
||||||
echo \$(bcftools --version 2>&1) | sed 's/^.*bcftools //; s/ .*\$//' > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(bcftools --version 2>&1 | head -n1 | sed 's/^.*bcftools //; s/ .*\$//')
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
}
|
}
|
||||||
|
|
|
@ -42,7 +42,7 @@ output:
|
||||||
- version:
|
- version:
|
||||||
type: file
|
type: file
|
||||||
description: File containing software version
|
description: File containing software version
|
||||||
pattern: "*.{version.txt}"
|
pattern: "versions.yml"
|
||||||
authors:
|
authors:
|
||||||
- "@joseespinosa"
|
- "@joseespinosa"
|
||||||
- "@drpatelh"
|
- "@drpatelh"
|
||||||
|
|
|
@ -9,6 +9,13 @@ def getSoftwareName(task_process) {
|
||||||
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Extract name of module from process name using $task.process
|
||||||
|
//
|
||||||
|
def getProcessName(task_process) {
|
||||||
|
return task_process.tokenize(':')[-1]
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
||||||
//
|
//
|
||||||
|
@ -37,32 +44,35 @@ def getPathFromList(path_list) {
|
||||||
// Function to save/publish module results
|
// Function to save/publish module results
|
||||||
//
|
//
|
||||||
def saveFiles(Map args) {
|
def saveFiles(Map args) {
|
||||||
if (!args.filename.endsWith('.version.txt')) {
|
def ioptions = initOptions(args.options)
|
||||||
def ioptions = initOptions(args.options)
|
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
||||||
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
|
||||||
if (ioptions.publish_by_meta) {
|
// Do not publish versions.yml unless running from pytest workflow
|
||||||
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
if (args.filename.equals('versions.yml') && !System.getenv("NF_CORE_MODULES_TEST")) {
|
||||||
for (key in key_list) {
|
return null
|
||||||
if (args.meta && key instanceof String) {
|
}
|
||||||
def path = key
|
if (ioptions.publish_by_meta) {
|
||||||
if (args.meta.containsKey(key)) {
|
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
||||||
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
for (key in key_list) {
|
||||||
}
|
if (args.meta && key instanceof String) {
|
||||||
path = path instanceof String ? path : ''
|
def path = key
|
||||||
path_list.add(path)
|
if (args.meta.containsKey(key)) {
|
||||||
|
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
||||||
}
|
}
|
||||||
|
path = path instanceof String ? path : ''
|
||||||
|
path_list.add(path)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ioptions.publish_files instanceof Map) {
|
}
|
||||||
for (ext in ioptions.publish_files) {
|
if (ioptions.publish_files instanceof Map) {
|
||||||
if (args.filename.endsWith(ext.key)) {
|
for (ext in ioptions.publish_files) {
|
||||||
def ext_list = path_list.collect()
|
if (args.filename.endsWith(ext.key)) {
|
||||||
ext_list.add(ext.value)
|
def ext_list = path_list.collect()
|
||||||
return "${getPathFromList(ext_list)}/$args.filename"
|
ext_list.add(ext.value)
|
||||||
}
|
return "${getPathFromList(ext_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
} else if (ioptions.publish_files == null) {
|
}
|
||||||
return "${getPathFromList(path_list)}/$args.filename"
|
} else if (ioptions.publish_files == null) {
|
||||||
}
|
return "${getPathFromList(path_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// Import generic module functions
|
// Import generic module functions
|
||||||
include { initOptions; saveFiles; getSoftwareName } from './functions'
|
include { initOptions; saveFiles; getSoftwareName; getProcessName } from './functions'
|
||||||
|
|
||||||
params.options = [:]
|
params.options = [:]
|
||||||
options = initOptions(params.options)
|
options = initOptions(params.options)
|
||||||
|
@ -23,7 +23,7 @@ process BCFTOOLS_MERGE {
|
||||||
|
|
||||||
output:
|
output:
|
||||||
tuple val(meta), path("*.gz"), emit: vcf
|
tuple val(meta), path("*.gz"), emit: vcf
|
||||||
path "*.version.txt" , emit: version
|
path "versions.yml" , emit: version
|
||||||
|
|
||||||
script:
|
script:
|
||||||
def software = getSoftwareName(task.process)
|
def software = getSoftwareName(task.process)
|
||||||
|
@ -33,6 +33,9 @@ process BCFTOOLS_MERGE {
|
||||||
--output ${prefix}.vcf.gz \\
|
--output ${prefix}.vcf.gz \\
|
||||||
$options.args \\
|
$options.args \\
|
||||||
*.vcf.gz
|
*.vcf.gz
|
||||||
echo \$(bcftools --version 2>&1) | sed 's/^.*bcftools //; s/ .*\$//' > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(bcftools --version 2>&1 | head -n1 | sed 's/^.*bcftools //; s/ .*\$//')
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
}
|
}
|
||||||
|
|
|
@ -40,7 +40,7 @@ output:
|
||||||
- version:
|
- version:
|
||||||
type: file
|
type: file
|
||||||
description: File containing software version
|
description: File containing software version
|
||||||
pattern: "*.{version.txt}"
|
pattern: "versions.yml"
|
||||||
authors:
|
authors:
|
||||||
- "@joseespinosa"
|
- "@joseespinosa"
|
||||||
- "@drpatelh"
|
- "@drpatelh"
|
||||||
|
|
|
@ -9,6 +9,13 @@ def getSoftwareName(task_process) {
|
||||||
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Extract name of module from process name using $task.process
|
||||||
|
//
|
||||||
|
def getProcessName(task_process) {
|
||||||
|
return task_process.tokenize(':')[-1]
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
||||||
//
|
//
|
||||||
|
@ -37,32 +44,35 @@ def getPathFromList(path_list) {
|
||||||
// Function to save/publish module results
|
// Function to save/publish module results
|
||||||
//
|
//
|
||||||
def saveFiles(Map args) {
|
def saveFiles(Map args) {
|
||||||
if (!args.filename.endsWith('.version.txt')) {
|
def ioptions = initOptions(args.options)
|
||||||
def ioptions = initOptions(args.options)
|
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
||||||
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
|
||||||
if (ioptions.publish_by_meta) {
|
// Do not publish versions.yml unless running from pytest workflow
|
||||||
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
if (args.filename.equals('versions.yml') && !System.getenv("NF_CORE_MODULES_TEST")) {
|
||||||
for (key in key_list) {
|
return null
|
||||||
if (args.meta && key instanceof String) {
|
}
|
||||||
def path = key
|
if (ioptions.publish_by_meta) {
|
||||||
if (args.meta.containsKey(key)) {
|
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
||||||
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
for (key in key_list) {
|
||||||
}
|
if (args.meta && key instanceof String) {
|
||||||
path = path instanceof String ? path : ''
|
def path = key
|
||||||
path_list.add(path)
|
if (args.meta.containsKey(key)) {
|
||||||
|
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
||||||
}
|
}
|
||||||
|
path = path instanceof String ? path : ''
|
||||||
|
path_list.add(path)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ioptions.publish_files instanceof Map) {
|
}
|
||||||
for (ext in ioptions.publish_files) {
|
if (ioptions.publish_files instanceof Map) {
|
||||||
if (args.filename.endsWith(ext.key)) {
|
for (ext in ioptions.publish_files) {
|
||||||
def ext_list = path_list.collect()
|
if (args.filename.endsWith(ext.key)) {
|
||||||
ext_list.add(ext.value)
|
def ext_list = path_list.collect()
|
||||||
return "${getPathFromList(ext_list)}/$args.filename"
|
ext_list.add(ext.value)
|
||||||
}
|
return "${getPathFromList(ext_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
} else if (ioptions.publish_files == null) {
|
}
|
||||||
return "${getPathFromList(path_list)}/$args.filename"
|
} else if (ioptions.publish_files == null) {
|
||||||
}
|
return "${getPathFromList(path_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// Import generic module functions
|
// Import generic module functions
|
||||||
include { initOptions; saveFiles; getSoftwareName } from './functions'
|
include { initOptions; saveFiles; getSoftwareName; getProcessName } from './functions'
|
||||||
|
|
||||||
params.options = [:]
|
params.options = [:]
|
||||||
options = initOptions(params.options)
|
options = initOptions(params.options)
|
||||||
|
@ -26,7 +26,7 @@ process BCFTOOLS_MPILEUP {
|
||||||
tuple val(meta), path("*.gz") , emit: vcf
|
tuple val(meta), path("*.gz") , emit: vcf
|
||||||
tuple val(meta), path("*.tbi") , emit: tbi
|
tuple val(meta), path("*.tbi") , emit: tbi
|
||||||
tuple val(meta), path("*stats.txt"), emit: stats
|
tuple val(meta), path("*stats.txt"), emit: stats
|
||||||
path "*.version.txt" , emit: version
|
path "versions.yml" , emit: version
|
||||||
|
|
||||||
script:
|
script:
|
||||||
def software = getSoftwareName(task.process)
|
def software = getSoftwareName(task.process)
|
||||||
|
@ -42,6 +42,9 @@ process BCFTOOLS_MPILEUP {
|
||||||
| bcftools view --output-file ${prefix}.vcf.gz --output-type z $options.args3
|
| bcftools view --output-file ${prefix}.vcf.gz --output-type z $options.args3
|
||||||
tabix -p vcf -f ${prefix}.vcf.gz
|
tabix -p vcf -f ${prefix}.vcf.gz
|
||||||
bcftools stats ${prefix}.vcf.gz > ${prefix}.bcftools_stats.txt
|
bcftools stats ${prefix}.vcf.gz > ${prefix}.bcftools_stats.txt
|
||||||
echo \$(bcftools --version 2>&1) | sed 's/^.*bcftools //; s/ .*\$//' > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(bcftools --version 2>&1 | head -n1 | sed 's/^.*bcftools //; s/ .*\$//')
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
}
|
}
|
||||||
|
|
|
@ -46,7 +46,7 @@ output:
|
||||||
- version:
|
- version:
|
||||||
type: file
|
type: file
|
||||||
description: File containing software version
|
description: File containing software version
|
||||||
pattern: "*.{version.txt}"
|
pattern: "versions.yml"
|
||||||
authors:
|
authors:
|
||||||
- "@joseespinosa"
|
- "@joseespinosa"
|
||||||
- "@drpatelh"
|
- "@drpatelh"
|
||||||
|
|
|
@ -9,6 +9,13 @@ def getSoftwareName(task_process) {
|
||||||
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Extract name of module from process name using $task.process
|
||||||
|
//
|
||||||
|
def getProcessName(task_process) {
|
||||||
|
return task_process.tokenize(':')[-1]
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
||||||
//
|
//
|
||||||
|
@ -37,32 +44,35 @@ def getPathFromList(path_list) {
|
||||||
// Function to save/publish module results
|
// Function to save/publish module results
|
||||||
//
|
//
|
||||||
def saveFiles(Map args) {
|
def saveFiles(Map args) {
|
||||||
if (!args.filename.endsWith('.version.txt')) {
|
def ioptions = initOptions(args.options)
|
||||||
def ioptions = initOptions(args.options)
|
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
||||||
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
|
||||||
if (ioptions.publish_by_meta) {
|
// Do not publish versions.yml unless running from pytest workflow
|
||||||
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
if (args.filename.equals('versions.yml') && !System.getenv("NF_CORE_MODULES_TEST")) {
|
||||||
for (key in key_list) {
|
return null
|
||||||
if (args.meta && key instanceof String) {
|
}
|
||||||
def path = key
|
if (ioptions.publish_by_meta) {
|
||||||
if (args.meta.containsKey(key)) {
|
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
||||||
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
for (key in key_list) {
|
||||||
}
|
if (args.meta && key instanceof String) {
|
||||||
path = path instanceof String ? path : ''
|
def path = key
|
||||||
path_list.add(path)
|
if (args.meta.containsKey(key)) {
|
||||||
|
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
||||||
}
|
}
|
||||||
|
path = path instanceof String ? path : ''
|
||||||
|
path_list.add(path)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ioptions.publish_files instanceof Map) {
|
}
|
||||||
for (ext in ioptions.publish_files) {
|
if (ioptions.publish_files instanceof Map) {
|
||||||
if (args.filename.endsWith(ext.key)) {
|
for (ext in ioptions.publish_files) {
|
||||||
def ext_list = path_list.collect()
|
if (args.filename.endsWith(ext.key)) {
|
||||||
ext_list.add(ext.value)
|
def ext_list = path_list.collect()
|
||||||
return "${getPathFromList(ext_list)}/$args.filename"
|
ext_list.add(ext.value)
|
||||||
}
|
return "${getPathFromList(ext_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
} else if (ioptions.publish_files == null) {
|
}
|
||||||
return "${getPathFromList(path_list)}/$args.filename"
|
} else if (ioptions.publish_files == null) {
|
||||||
}
|
return "${getPathFromList(path_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// Import generic module functions
|
// Import generic module functions
|
||||||
include { initOptions; saveFiles; getSoftwareName } from './functions'
|
include { initOptions; saveFiles; getSoftwareName; getProcessName } from './functions'
|
||||||
|
|
||||||
params.options = [:]
|
params.options = [:]
|
||||||
options = initOptions(params.options)
|
options = initOptions(params.options)
|
||||||
|
@ -24,7 +24,7 @@ process BCFTOOLS_NORM {
|
||||||
|
|
||||||
output:
|
output:
|
||||||
tuple val(meta), path("*.gz") , emit: vcf
|
tuple val(meta), path("*.gz") , emit: vcf
|
||||||
path "*.version.txt" , emit: version
|
path "versions.yml" , emit: version
|
||||||
|
|
||||||
script:
|
script:
|
||||||
def software = getSoftwareName(task.process)
|
def software = getSoftwareName(task.process)
|
||||||
|
@ -37,6 +37,9 @@ process BCFTOOLS_NORM {
|
||||||
--threads $task.cpus \\
|
--threads $task.cpus \\
|
||||||
${vcf}
|
${vcf}
|
||||||
|
|
||||||
echo \$(bcftools --version 2>&1) | sed 's/^.*bcftools //; s/ .*\$//' > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(bcftools --version 2>&1 | head -n1 | sed 's/^.*bcftools //; s/ .*\$//')
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
}
|
}
|
||||||
|
|
|
@ -40,6 +40,6 @@ output:
|
||||||
- version:
|
- version:
|
||||||
type: file
|
type: file
|
||||||
description: File containing software version
|
description: File containing software version
|
||||||
pattern: "*.{version.txt}"
|
pattern: "versions.yml"
|
||||||
authors:
|
authors:
|
||||||
- "@abhi18av"
|
- "@abhi18av"
|
||||||
|
|
|
@ -9,6 +9,13 @@ def getSoftwareName(task_process) {
|
||||||
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Extract name of module from process name using $task.process
|
||||||
|
//
|
||||||
|
def getProcessName(task_process) {
|
||||||
|
return task_process.tokenize(':')[-1]
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
||||||
//
|
//
|
||||||
|
@ -37,32 +44,35 @@ def getPathFromList(path_list) {
|
||||||
// Function to save/publish module results
|
// Function to save/publish module results
|
||||||
//
|
//
|
||||||
def saveFiles(Map args) {
|
def saveFiles(Map args) {
|
||||||
if (!args.filename.endsWith('.version.txt')) {
|
def ioptions = initOptions(args.options)
|
||||||
def ioptions = initOptions(args.options)
|
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
||||||
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
|
||||||
if (ioptions.publish_by_meta) {
|
// Do not publish versions.yml unless running from pytest workflow
|
||||||
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
if (args.filename.equals('versions.yml') && !System.getenv("NF_CORE_MODULES_TEST")) {
|
||||||
for (key in key_list) {
|
return null
|
||||||
if (args.meta && key instanceof String) {
|
}
|
||||||
def path = key
|
if (ioptions.publish_by_meta) {
|
||||||
if (args.meta.containsKey(key)) {
|
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
||||||
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
for (key in key_list) {
|
||||||
}
|
if (args.meta && key instanceof String) {
|
||||||
path = path instanceof String ? path : ''
|
def path = key
|
||||||
path_list.add(path)
|
if (args.meta.containsKey(key)) {
|
||||||
|
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
||||||
}
|
}
|
||||||
|
path = path instanceof String ? path : ''
|
||||||
|
path_list.add(path)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ioptions.publish_files instanceof Map) {
|
}
|
||||||
for (ext in ioptions.publish_files) {
|
if (ioptions.publish_files instanceof Map) {
|
||||||
if (args.filename.endsWith(ext.key)) {
|
for (ext in ioptions.publish_files) {
|
||||||
def ext_list = path_list.collect()
|
if (args.filename.endsWith(ext.key)) {
|
||||||
ext_list.add(ext.value)
|
def ext_list = path_list.collect()
|
||||||
return "${getPathFromList(ext_list)}/$args.filename"
|
ext_list.add(ext.value)
|
||||||
}
|
return "${getPathFromList(ext_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
} else if (ioptions.publish_files == null) {
|
}
|
||||||
return "${getPathFromList(path_list)}/$args.filename"
|
} else if (ioptions.publish_files == null) {
|
||||||
}
|
return "${getPathFromList(path_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// Import generic module functions
|
// Import generic module functions
|
||||||
include { initOptions; saveFiles; getSoftwareName } from './functions'
|
include { initOptions; saveFiles; getSoftwareName; getProcessName } from './functions'
|
||||||
|
|
||||||
params.options = [:]
|
params.options = [:]
|
||||||
options = initOptions(params.options)
|
options = initOptions(params.options)
|
||||||
|
@ -26,7 +26,7 @@ process BCFTOOLS_QUERY {
|
||||||
|
|
||||||
output:
|
output:
|
||||||
tuple val(meta), path("*.gz") , emit: vcf
|
tuple val(meta), path("*.gz") , emit: vcf
|
||||||
path "*.version.txt" , emit: version
|
path "versions.yml" , emit: version
|
||||||
|
|
||||||
script:
|
script:
|
||||||
def software = getSoftwareName(task.process)
|
def software = getSoftwareName(task.process)
|
||||||
|
@ -44,6 +44,9 @@ process BCFTOOLS_QUERY {
|
||||||
$options.args \\
|
$options.args \\
|
||||||
${vcf}
|
${vcf}
|
||||||
|
|
||||||
echo \$(bcftools --version 2>&1) | sed 's/^.*bcftools //; s/ .*\$//' > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(bcftools --version 2>&1 | head -n1 | sed 's/^.*bcftools //; s/ .*\$//')
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
}
|
}
|
||||||
|
|
|
@ -56,6 +56,6 @@ output:
|
||||||
- version:
|
- version:
|
||||||
type: file
|
type: file
|
||||||
description: File containing software version
|
description: File containing software version
|
||||||
pattern: "*.{version.txt}"
|
pattern: "versions.yml"
|
||||||
authors:
|
authors:
|
||||||
- "@abhi18av"
|
- "@abhi18av"
|
||||||
|
|
|
@ -9,6 +9,13 @@ def getSoftwareName(task_process) {
|
||||||
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Extract name of module from process name using $task.process
|
||||||
|
//
|
||||||
|
def getProcessName(task_process) {
|
||||||
|
return task_process.tokenize(':')[-1]
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
||||||
//
|
//
|
||||||
|
@ -37,32 +44,35 @@ def getPathFromList(path_list) {
|
||||||
// Function to save/publish module results
|
// Function to save/publish module results
|
||||||
//
|
//
|
||||||
def saveFiles(Map args) {
|
def saveFiles(Map args) {
|
||||||
if (!args.filename.endsWith('.version.txt')) {
|
def ioptions = initOptions(args.options)
|
||||||
def ioptions = initOptions(args.options)
|
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
||||||
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
|
||||||
if (ioptions.publish_by_meta) {
|
// Do not publish versions.yml unless running from pytest workflow
|
||||||
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
if (args.filename.equals('versions.yml') && !System.getenv("NF_CORE_MODULES_TEST")) {
|
||||||
for (key in key_list) {
|
return null
|
||||||
if (args.meta && key instanceof String) {
|
}
|
||||||
def path = key
|
if (ioptions.publish_by_meta) {
|
||||||
if (args.meta.containsKey(key)) {
|
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
||||||
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
for (key in key_list) {
|
||||||
}
|
if (args.meta && key instanceof String) {
|
||||||
path = path instanceof String ? path : ''
|
def path = key
|
||||||
path_list.add(path)
|
if (args.meta.containsKey(key)) {
|
||||||
|
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
||||||
}
|
}
|
||||||
|
path = path instanceof String ? path : ''
|
||||||
|
path_list.add(path)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ioptions.publish_files instanceof Map) {
|
}
|
||||||
for (ext in ioptions.publish_files) {
|
if (ioptions.publish_files instanceof Map) {
|
||||||
if (args.filename.endsWith(ext.key)) {
|
for (ext in ioptions.publish_files) {
|
||||||
def ext_list = path_list.collect()
|
if (args.filename.endsWith(ext.key)) {
|
||||||
ext_list.add(ext.value)
|
def ext_list = path_list.collect()
|
||||||
return "${getPathFromList(ext_list)}/$args.filename"
|
ext_list.add(ext.value)
|
||||||
}
|
return "${getPathFromList(ext_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
} else if (ioptions.publish_files == null) {
|
}
|
||||||
return "${getPathFromList(path_list)}/$args.filename"
|
} else if (ioptions.publish_files == null) {
|
||||||
}
|
return "${getPathFromList(path_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// Import generic module functions
|
// Import generic module functions
|
||||||
include { initOptions; saveFiles; getSoftwareName } from './functions'
|
include { initOptions; saveFiles; getSoftwareName; getProcessName } from './functions'
|
||||||
|
|
||||||
params.options = [:]
|
params.options = [:]
|
||||||
options = initOptions(params.options)
|
options = initOptions(params.options)
|
||||||
|
@ -25,7 +25,7 @@ process BCFTOOLS_REHEADER {
|
||||||
|
|
||||||
output:
|
output:
|
||||||
tuple val(meta), path("*.vcf.gz"), emit: vcf
|
tuple val(meta), path("*.vcf.gz"), emit: vcf
|
||||||
path "*.version.txt" , emit: version
|
path "versions.yml" , emit: version
|
||||||
|
|
||||||
script:
|
script:
|
||||||
def software = getSoftwareName(task.process)
|
def software = getSoftwareName(task.process)
|
||||||
|
@ -42,6 +42,9 @@ process BCFTOOLS_REHEADER {
|
||||||
-o ${prefix}.vcf.gz \\
|
-o ${prefix}.vcf.gz \\
|
||||||
$vcf
|
$vcf
|
||||||
|
|
||||||
echo \$(bcftools --version 2>&1) | sed 's/^.*bcftools //; s/ .*\$//' > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(bcftools --version 2>&1 | head -n1 | sed 's/^.*bcftools //; s/ .*\$//')
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
}
|
}
|
||||||
|
|
|
@ -41,7 +41,7 @@ output:
|
||||||
- version:
|
- version:
|
||||||
type: file
|
type: file
|
||||||
description: File containing software version
|
description: File containing software version
|
||||||
pattern: "*.{version.txt}"
|
pattern: "versions.yml"
|
||||||
- vcf:
|
- vcf:
|
||||||
type: file
|
type: file
|
||||||
description: VCF with updated header
|
description: VCF with updated header
|
||||||
|
|
|
@ -9,6 +9,13 @@ def getSoftwareName(task_process) {
|
||||||
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Extract name of module from process name using $task.process
|
||||||
|
//
|
||||||
|
def getProcessName(task_process) {
|
||||||
|
return task_process.tokenize(':')[-1]
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
||||||
//
|
//
|
||||||
|
@ -37,32 +44,35 @@ def getPathFromList(path_list) {
|
||||||
// Function to save/publish module results
|
// Function to save/publish module results
|
||||||
//
|
//
|
||||||
def saveFiles(Map args) {
|
def saveFiles(Map args) {
|
||||||
if (!args.filename.endsWith('.version.txt')) {
|
def ioptions = initOptions(args.options)
|
||||||
def ioptions = initOptions(args.options)
|
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
||||||
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
|
||||||
if (ioptions.publish_by_meta) {
|
// Do not publish versions.yml unless running from pytest workflow
|
||||||
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
if (args.filename.equals('versions.yml') && !System.getenv("NF_CORE_MODULES_TEST")) {
|
||||||
for (key in key_list) {
|
return null
|
||||||
if (args.meta && key instanceof String) {
|
}
|
||||||
def path = key
|
if (ioptions.publish_by_meta) {
|
||||||
if (args.meta.containsKey(key)) {
|
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
||||||
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
for (key in key_list) {
|
||||||
}
|
if (args.meta && key instanceof String) {
|
||||||
path = path instanceof String ? path : ''
|
def path = key
|
||||||
path_list.add(path)
|
if (args.meta.containsKey(key)) {
|
||||||
|
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
||||||
}
|
}
|
||||||
|
path = path instanceof String ? path : ''
|
||||||
|
path_list.add(path)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ioptions.publish_files instanceof Map) {
|
}
|
||||||
for (ext in ioptions.publish_files) {
|
if (ioptions.publish_files instanceof Map) {
|
||||||
if (args.filename.endsWith(ext.key)) {
|
for (ext in ioptions.publish_files) {
|
||||||
def ext_list = path_list.collect()
|
if (args.filename.endsWith(ext.key)) {
|
||||||
ext_list.add(ext.value)
|
def ext_list = path_list.collect()
|
||||||
return "${getPathFromList(ext_list)}/$args.filename"
|
ext_list.add(ext.value)
|
||||||
}
|
return "${getPathFromList(ext_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
} else if (ioptions.publish_files == null) {
|
}
|
||||||
return "${getPathFromList(path_list)}/$args.filename"
|
} else if (ioptions.publish_files == null) {
|
||||||
}
|
return "${getPathFromList(path_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// Import generic module functions
|
// Import generic module functions
|
||||||
include { initOptions; saveFiles; getSoftwareName } from './functions'
|
include { initOptions; saveFiles; getSoftwareName; getProcessName } from './functions'
|
||||||
|
|
||||||
params.options = [:]
|
params.options = [:]
|
||||||
options = initOptions(params.options)
|
options = initOptions(params.options)
|
||||||
|
@ -23,13 +23,16 @@ process BCFTOOLS_STATS {
|
||||||
|
|
||||||
output:
|
output:
|
||||||
tuple val(meta), path("*stats.txt"), emit: stats
|
tuple val(meta), path("*stats.txt"), emit: stats
|
||||||
path "*.version.txt" , emit: version
|
path "versions.yml" , emit: version
|
||||||
|
|
||||||
script:
|
script:
|
||||||
def software = getSoftwareName(task.process)
|
def software = getSoftwareName(task.process)
|
||||||
def prefix = options.suffix ? "${meta.id}${options.suffix}" : "${meta.id}"
|
def prefix = options.suffix ? "${meta.id}${options.suffix}" : "${meta.id}"
|
||||||
"""
|
"""
|
||||||
bcftools stats $options.args $vcf > ${prefix}.bcftools_stats.txt
|
bcftools stats $options.args $vcf > ${prefix}.bcftools_stats.txt
|
||||||
echo \$(bcftools --version 2>&1) | sed 's/^.*bcftools //; s/ .*\$//' > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(bcftools --version 2>&1 | head -n1 | sed 's/^.*bcftools //; s/ .*\$//')
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
}
|
}
|
||||||
|
|
|
@ -35,7 +35,7 @@ output:
|
||||||
- version:
|
- version:
|
||||||
type: file
|
type: file
|
||||||
description: File containing software version
|
description: File containing software version
|
||||||
pattern: "*.{version.txt}"
|
pattern: "versions.yml"
|
||||||
authors:
|
authors:
|
||||||
- "@joseespinosa"
|
- "@joseespinosa"
|
||||||
- "@drpatelh"
|
- "@drpatelh"
|
||||||
|
|
|
@ -9,6 +9,13 @@ def getSoftwareName(task_process) {
|
||||||
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Extract name of module from process name using $task.process
|
||||||
|
//
|
||||||
|
def getProcessName(task_process) {
|
||||||
|
return task_process.tokenize(':')[-1]
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
||||||
//
|
//
|
||||||
|
@ -37,32 +44,35 @@ def getPathFromList(path_list) {
|
||||||
// Function to save/publish module results
|
// Function to save/publish module results
|
||||||
//
|
//
|
||||||
def saveFiles(Map args) {
|
def saveFiles(Map args) {
|
||||||
if (!args.filename.endsWith('.version.txt')) {
|
def ioptions = initOptions(args.options)
|
||||||
def ioptions = initOptions(args.options)
|
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
||||||
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
|
||||||
if (ioptions.publish_by_meta) {
|
// Do not publish versions.yml unless running from pytest workflow
|
||||||
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
if (args.filename.equals('versions.yml') && !System.getenv("NF_CORE_MODULES_TEST")) {
|
||||||
for (key in key_list) {
|
return null
|
||||||
if (args.meta && key instanceof String) {
|
}
|
||||||
def path = key
|
if (ioptions.publish_by_meta) {
|
||||||
if (args.meta.containsKey(key)) {
|
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
||||||
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
for (key in key_list) {
|
||||||
}
|
if (args.meta && key instanceof String) {
|
||||||
path = path instanceof String ? path : ''
|
def path = key
|
||||||
path_list.add(path)
|
if (args.meta.containsKey(key)) {
|
||||||
|
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
||||||
}
|
}
|
||||||
|
path = path instanceof String ? path : ''
|
||||||
|
path_list.add(path)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ioptions.publish_files instanceof Map) {
|
}
|
||||||
for (ext in ioptions.publish_files) {
|
if (ioptions.publish_files instanceof Map) {
|
||||||
if (args.filename.endsWith(ext.key)) {
|
for (ext in ioptions.publish_files) {
|
||||||
def ext_list = path_list.collect()
|
if (args.filename.endsWith(ext.key)) {
|
||||||
ext_list.add(ext.value)
|
def ext_list = path_list.collect()
|
||||||
return "${getPathFromList(ext_list)}/$args.filename"
|
ext_list.add(ext.value)
|
||||||
}
|
return "${getPathFromList(ext_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
} else if (ioptions.publish_files == null) {
|
}
|
||||||
return "${getPathFromList(path_list)}/$args.filename"
|
} else if (ioptions.publish_files == null) {
|
||||||
}
|
return "${getPathFromList(path_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// Import generic module functions
|
// Import generic module functions
|
||||||
include { initOptions; saveFiles; getSoftwareName } from './functions'
|
include { initOptions; saveFiles; getSoftwareName; getProcessName } from './functions'
|
||||||
|
|
||||||
params.options = [:]
|
params.options = [:]
|
||||||
options = initOptions(params.options)
|
options = initOptions(params.options)
|
||||||
|
@ -26,7 +26,7 @@ process BCFTOOLS_VIEW {
|
||||||
|
|
||||||
output:
|
output:
|
||||||
tuple val(meta), path("*.gz") , emit: vcf
|
tuple val(meta), path("*.gz") , emit: vcf
|
||||||
path "*.version.txt" , emit: version
|
path "versions.yml" , emit: version
|
||||||
|
|
||||||
script:
|
script:
|
||||||
def software = getSoftwareName(task.process)
|
def software = getSoftwareName(task.process)
|
||||||
|
@ -46,6 +46,9 @@ process BCFTOOLS_VIEW {
|
||||||
--threads $task.cpus \\
|
--threads $task.cpus \\
|
||||||
${vcf}
|
${vcf}
|
||||||
|
|
||||||
echo \$(bcftools --version 2>&1) | sed 's/^.*bcftools //; s/ .*\$//' > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(bcftools --version 2>&1 | head -n1 | sed 's/^.*bcftools //; s/ .*\$//')
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
}
|
}
|
||||||
|
|
|
@ -57,6 +57,6 @@ output:
|
||||||
- version:
|
- version:
|
||||||
type: file
|
type: file
|
||||||
description: File containing software version
|
description: File containing software version
|
||||||
pattern: "*.{version.txt}"
|
pattern: "versions.yml"
|
||||||
authors:
|
authors:
|
||||||
- "@abhi18av"
|
- "@abhi18av"
|
||||||
|
|
|
@ -9,6 +9,13 @@ def getSoftwareName(task_process) {
|
||||||
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Extract name of module from process name using $task.process
|
||||||
|
//
|
||||||
|
def getProcessName(task_process) {
|
||||||
|
return task_process.tokenize(':')[-1]
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
||||||
//
|
//
|
||||||
|
@ -37,32 +44,35 @@ def getPathFromList(path_list) {
|
||||||
// Function to save/publish module results
|
// Function to save/publish module results
|
||||||
//
|
//
|
||||||
def saveFiles(Map args) {
|
def saveFiles(Map args) {
|
||||||
if (!args.filename.endsWith('.version.txt')) {
|
def ioptions = initOptions(args.options)
|
||||||
def ioptions = initOptions(args.options)
|
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
||||||
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
|
||||||
if (ioptions.publish_by_meta) {
|
// Do not publish versions.yml unless running from pytest workflow
|
||||||
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
if (args.filename.equals('versions.yml') && !System.getenv("NF_CORE_MODULES_TEST")) {
|
||||||
for (key in key_list) {
|
return null
|
||||||
if (args.meta && key instanceof String) {
|
}
|
||||||
def path = key
|
if (ioptions.publish_by_meta) {
|
||||||
if (args.meta.containsKey(key)) {
|
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
||||||
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
for (key in key_list) {
|
||||||
}
|
if (args.meta && key instanceof String) {
|
||||||
path = path instanceof String ? path : ''
|
def path = key
|
||||||
path_list.add(path)
|
if (args.meta.containsKey(key)) {
|
||||||
|
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
||||||
}
|
}
|
||||||
|
path = path instanceof String ? path : ''
|
||||||
|
path_list.add(path)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ioptions.publish_files instanceof Map) {
|
}
|
||||||
for (ext in ioptions.publish_files) {
|
if (ioptions.publish_files instanceof Map) {
|
||||||
if (args.filename.endsWith(ext.key)) {
|
for (ext in ioptions.publish_files) {
|
||||||
def ext_list = path_list.collect()
|
if (args.filename.endsWith(ext.key)) {
|
||||||
ext_list.add(ext.value)
|
def ext_list = path_list.collect()
|
||||||
return "${getPathFromList(ext_list)}/$args.filename"
|
ext_list.add(ext.value)
|
||||||
}
|
return "${getPathFromList(ext_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
} else if (ioptions.publish_files == null) {
|
}
|
||||||
return "${getPathFromList(path_list)}/$args.filename"
|
} else if (ioptions.publish_files == null) {
|
||||||
}
|
return "${getPathFromList(path_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// Import generic module functions
|
// Import generic module functions
|
||||||
include { initOptions; saveFiles; getSoftwareName } from './functions'
|
include { initOptions; saveFiles; getSoftwareName; getProcessName } from './functions'
|
||||||
|
|
||||||
params.options = [:]
|
params.options = [:]
|
||||||
options = initOptions(params.options)
|
options = initOptions(params.options)
|
||||||
|
@ -23,7 +23,7 @@ process BEDTOOLS_BAMTOBED {
|
||||||
|
|
||||||
output:
|
output:
|
||||||
tuple val(meta), path("*.bed"), emit: bed
|
tuple val(meta), path("*.bed"), emit: bed
|
||||||
path "*.version.txt" , emit: version
|
path "versions.yml" , emit: version
|
||||||
|
|
||||||
script:
|
script:
|
||||||
def software = getSoftwareName(task.process)
|
def software = getSoftwareName(task.process)
|
||||||
|
@ -35,6 +35,9 @@ process BEDTOOLS_BAMTOBED {
|
||||||
-i $bam \\
|
-i $bam \\
|
||||||
| bedtools sort > ${prefix}.bed
|
| bedtools sort > ${prefix}.bed
|
||||||
|
|
||||||
bedtools --version | sed -e "s/bedtools v//g" > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(bedtools --version | sed -e "s/bedtools v//g")
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
}
|
}
|
||||||
|
|
|
@ -31,7 +31,7 @@ output:
|
||||||
- version:
|
- version:
|
||||||
type: file
|
type: file
|
||||||
description: File containing software version
|
description: File containing software version
|
||||||
pattern: "*.{version.txt}"
|
pattern: "versions.yml"
|
||||||
authors:
|
authors:
|
||||||
- "@yuukiiwa"
|
- "@yuukiiwa"
|
||||||
- "@drpatelh"
|
- "@drpatelh"
|
||||||
|
|
|
@ -9,6 +9,13 @@ def getSoftwareName(task_process) {
|
||||||
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Extract name of module from process name using $task.process
|
||||||
|
//
|
||||||
|
def getProcessName(task_process) {
|
||||||
|
return task_process.tokenize(':')[-1]
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
||||||
//
|
//
|
||||||
|
@ -37,32 +44,35 @@ def getPathFromList(path_list) {
|
||||||
// Function to save/publish module results
|
// Function to save/publish module results
|
||||||
//
|
//
|
||||||
def saveFiles(Map args) {
|
def saveFiles(Map args) {
|
||||||
if (!args.filename.endsWith('.version.txt')) {
|
def ioptions = initOptions(args.options)
|
||||||
def ioptions = initOptions(args.options)
|
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
||||||
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
|
||||||
if (ioptions.publish_by_meta) {
|
// Do not publish versions.yml unless running from pytest workflow
|
||||||
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
if (args.filename.equals('versions.yml') && !System.getenv("NF_CORE_MODULES_TEST")) {
|
||||||
for (key in key_list) {
|
return null
|
||||||
if (args.meta && key instanceof String) {
|
}
|
||||||
def path = key
|
if (ioptions.publish_by_meta) {
|
||||||
if (args.meta.containsKey(key)) {
|
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
||||||
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
for (key in key_list) {
|
||||||
}
|
if (args.meta && key instanceof String) {
|
||||||
path = path instanceof String ? path : ''
|
def path = key
|
||||||
path_list.add(path)
|
if (args.meta.containsKey(key)) {
|
||||||
|
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
||||||
}
|
}
|
||||||
|
path = path instanceof String ? path : ''
|
||||||
|
path_list.add(path)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ioptions.publish_files instanceof Map) {
|
}
|
||||||
for (ext in ioptions.publish_files) {
|
if (ioptions.publish_files instanceof Map) {
|
||||||
if (args.filename.endsWith(ext.key)) {
|
for (ext in ioptions.publish_files) {
|
||||||
def ext_list = path_list.collect()
|
if (args.filename.endsWith(ext.key)) {
|
||||||
ext_list.add(ext.value)
|
def ext_list = path_list.collect()
|
||||||
return "${getPathFromList(ext_list)}/$args.filename"
|
ext_list.add(ext.value)
|
||||||
}
|
return "${getPathFromList(ext_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
} else if (ioptions.publish_files == null) {
|
}
|
||||||
return "${getPathFromList(path_list)}/$args.filename"
|
} else if (ioptions.publish_files == null) {
|
||||||
}
|
return "${getPathFromList(path_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// Import generic module functions
|
// Import generic module functions
|
||||||
include { initOptions; saveFiles; getSoftwareName } from './functions'
|
include { initOptions; saveFiles; getSoftwareName; getProcessName } from './functions'
|
||||||
|
|
||||||
params.options = [:]
|
params.options = [:]
|
||||||
options = initOptions(params.options)
|
options = initOptions(params.options)
|
||||||
|
@ -24,7 +24,7 @@ process BEDTOOLS_COMPLEMENT {
|
||||||
|
|
||||||
output:
|
output:
|
||||||
tuple val(meta), path('*.bed'), emit: bed
|
tuple val(meta), path('*.bed'), emit: bed
|
||||||
path '*.version.txt' , emit: version
|
path "versions.yml" , emit: version
|
||||||
|
|
||||||
script:
|
script:
|
||||||
def software = getSoftwareName(task.process)
|
def software = getSoftwareName(task.process)
|
||||||
|
@ -37,6 +37,9 @@ process BEDTOOLS_COMPLEMENT {
|
||||||
$options.args \\
|
$options.args \\
|
||||||
> ${prefix}.bed
|
> ${prefix}.bed
|
||||||
|
|
||||||
bedtools --version | sed -e "s/bedtools v//g" > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(bedtools --version | sed -e "s/bedtools v//g")
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
}
|
}
|
||||||
|
|
|
@ -35,7 +35,7 @@ output:
|
||||||
- version:
|
- version:
|
||||||
type: file
|
type: file
|
||||||
description: File containing software version
|
description: File containing software version
|
||||||
pattern: "*.{version.txt}"
|
pattern: "versions.yml"
|
||||||
authors:
|
authors:
|
||||||
- "@Emiller88"
|
- "@Emiller88"
|
||||||
- "@sruthipsuresh"
|
- "@sruthipsuresh"
|
||||||
|
|
|
@ -9,6 +9,13 @@ def getSoftwareName(task_process) {
|
||||||
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Extract name of module from process name using $task.process
|
||||||
|
//
|
||||||
|
def getProcessName(task_process) {
|
||||||
|
return task_process.tokenize(':')[-1]
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
||||||
//
|
//
|
||||||
|
@ -37,32 +44,35 @@ def getPathFromList(path_list) {
|
||||||
// Function to save/publish module results
|
// Function to save/publish module results
|
||||||
//
|
//
|
||||||
def saveFiles(Map args) {
|
def saveFiles(Map args) {
|
||||||
if (!args.filename.endsWith('.version.txt')) {
|
def ioptions = initOptions(args.options)
|
||||||
def ioptions = initOptions(args.options)
|
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
||||||
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
|
||||||
if (ioptions.publish_by_meta) {
|
// Do not publish versions.yml unless running from pytest workflow
|
||||||
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
if (args.filename.equals('versions.yml') && !System.getenv("NF_CORE_MODULES_TEST")) {
|
||||||
for (key in key_list) {
|
return null
|
||||||
if (args.meta && key instanceof String) {
|
}
|
||||||
def path = key
|
if (ioptions.publish_by_meta) {
|
||||||
if (args.meta.containsKey(key)) {
|
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
||||||
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
for (key in key_list) {
|
||||||
}
|
if (args.meta && key instanceof String) {
|
||||||
path = path instanceof String ? path : ''
|
def path = key
|
||||||
path_list.add(path)
|
if (args.meta.containsKey(key)) {
|
||||||
|
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
||||||
}
|
}
|
||||||
|
path = path instanceof String ? path : ''
|
||||||
|
path_list.add(path)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ioptions.publish_files instanceof Map) {
|
}
|
||||||
for (ext in ioptions.publish_files) {
|
if (ioptions.publish_files instanceof Map) {
|
||||||
if (args.filename.endsWith(ext.key)) {
|
for (ext in ioptions.publish_files) {
|
||||||
def ext_list = path_list.collect()
|
if (args.filename.endsWith(ext.key)) {
|
||||||
ext_list.add(ext.value)
|
def ext_list = path_list.collect()
|
||||||
return "${getPathFromList(ext_list)}/$args.filename"
|
ext_list.add(ext.value)
|
||||||
}
|
return "${getPathFromList(ext_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
} else if (ioptions.publish_files == null) {
|
}
|
||||||
return "${getPathFromList(path_list)}/$args.filename"
|
} else if (ioptions.publish_files == null) {
|
||||||
}
|
return "${getPathFromList(path_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// Import generic module functions
|
// Import generic module functions
|
||||||
include { initOptions; saveFiles; getSoftwareName } from './functions'
|
include { initOptions; saveFiles; getSoftwareName; getProcessName } from './functions'
|
||||||
|
|
||||||
params.options = [:]
|
params.options = [:]
|
||||||
options = initOptions(params.options)
|
options = initOptions(params.options)
|
||||||
|
@ -25,7 +25,7 @@ process BEDTOOLS_GENOMECOV {
|
||||||
|
|
||||||
output:
|
output:
|
||||||
tuple val(meta), path("*.${extension}"), emit: genomecov
|
tuple val(meta), path("*.${extension}"), emit: genomecov
|
||||||
path "*.version.txt" , emit: version
|
path "versions.yml" , emit: version
|
||||||
|
|
||||||
script:
|
script:
|
||||||
def software = getSoftwareName(task.process)
|
def software = getSoftwareName(task.process)
|
||||||
|
@ -38,7 +38,10 @@ process BEDTOOLS_GENOMECOV {
|
||||||
$options.args \\
|
$options.args \\
|
||||||
> ${prefix}.${extension}
|
> ${prefix}.${extension}
|
||||||
|
|
||||||
bedtools --version | sed -e "s/bedtools v//g" > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(bedtools --version | sed -e "s/bedtools v//g")
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
} else {
|
} else {
|
||||||
"""
|
"""
|
||||||
|
@ -49,7 +52,10 @@ process BEDTOOLS_GENOMECOV {
|
||||||
$options.args \\
|
$options.args \\
|
||||||
> ${prefix}.${extension}
|
> ${prefix}.${extension}
|
||||||
|
|
||||||
bedtools --version | sed -e "s/bedtools v//g" > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(bedtools --version | sed -e "s/bedtools v//g")
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -38,7 +38,7 @@ output:
|
||||||
- version:
|
- version:
|
||||||
type: file
|
type: file
|
||||||
description: File containing software version
|
description: File containing software version
|
||||||
pattern: "*.{version.txt}"
|
pattern: "versions.yml"
|
||||||
authors:
|
authors:
|
||||||
- "@Emiller88"
|
- "@Emiller88"
|
||||||
- "@sruthipsuresh"
|
- "@sruthipsuresh"
|
||||||
|
|
|
@ -9,6 +9,13 @@ def getSoftwareName(task_process) {
|
||||||
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Extract name of module from process name using $task.process
|
||||||
|
//
|
||||||
|
def getProcessName(task_process) {
|
||||||
|
return task_process.tokenize(':')[-1]
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
||||||
//
|
//
|
||||||
|
@ -37,32 +44,35 @@ def getPathFromList(path_list) {
|
||||||
// Function to save/publish module results
|
// Function to save/publish module results
|
||||||
//
|
//
|
||||||
def saveFiles(Map args) {
|
def saveFiles(Map args) {
|
||||||
if (!args.filename.endsWith('.version.txt')) {
|
def ioptions = initOptions(args.options)
|
||||||
def ioptions = initOptions(args.options)
|
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
||||||
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
|
||||||
if (ioptions.publish_by_meta) {
|
// Do not publish versions.yml unless running from pytest workflow
|
||||||
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
if (args.filename.equals('versions.yml') && !System.getenv("NF_CORE_MODULES_TEST")) {
|
||||||
for (key in key_list) {
|
return null
|
||||||
if (args.meta && key instanceof String) {
|
}
|
||||||
def path = key
|
if (ioptions.publish_by_meta) {
|
||||||
if (args.meta.containsKey(key)) {
|
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
||||||
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
for (key in key_list) {
|
||||||
}
|
if (args.meta && key instanceof String) {
|
||||||
path = path instanceof String ? path : ''
|
def path = key
|
||||||
path_list.add(path)
|
if (args.meta.containsKey(key)) {
|
||||||
|
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
||||||
}
|
}
|
||||||
|
path = path instanceof String ? path : ''
|
||||||
|
path_list.add(path)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ioptions.publish_files instanceof Map) {
|
}
|
||||||
for (ext in ioptions.publish_files) {
|
if (ioptions.publish_files instanceof Map) {
|
||||||
if (args.filename.endsWith(ext.key)) {
|
for (ext in ioptions.publish_files) {
|
||||||
def ext_list = path_list.collect()
|
if (args.filename.endsWith(ext.key)) {
|
||||||
ext_list.add(ext.value)
|
def ext_list = path_list.collect()
|
||||||
return "${getPathFromList(ext_list)}/$args.filename"
|
ext_list.add(ext.value)
|
||||||
}
|
return "${getPathFromList(ext_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
} else if (ioptions.publish_files == null) {
|
}
|
||||||
return "${getPathFromList(path_list)}/$args.filename"
|
} else if (ioptions.publish_files == null) {
|
||||||
}
|
return "${getPathFromList(path_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// Import generic module functions
|
// Import generic module functions
|
||||||
include { initOptions; saveFiles; getSoftwareName } from './functions'
|
include { initOptions; saveFiles; getSoftwareName; getProcessName } from './functions'
|
||||||
|
|
||||||
params.options = [:]
|
params.options = [:]
|
||||||
options = initOptions(params.options)
|
options = initOptions(params.options)
|
||||||
|
@ -24,7 +24,7 @@ process BEDTOOLS_GETFASTA {
|
||||||
|
|
||||||
output:
|
output:
|
||||||
path "*.fa" , emit: fasta
|
path "*.fa" , emit: fasta
|
||||||
path "*.version.txt", emit: version
|
path "versions.yml" , emit: version
|
||||||
|
|
||||||
script:
|
script:
|
||||||
def software = getSoftwareName(task.process)
|
def software = getSoftwareName(task.process)
|
||||||
|
@ -37,6 +37,9 @@ process BEDTOOLS_GETFASTA {
|
||||||
-bed $bed \\
|
-bed $bed \\
|
||||||
-fo ${prefix}.fa
|
-fo ${prefix}.fa
|
||||||
|
|
||||||
bedtools --version | sed -e "s/bedtools v//g" > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(bedtools --version | sed -e "s/bedtools v//g")
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
}
|
}
|
||||||
|
|
|
@ -27,7 +27,7 @@ output:
|
||||||
- version:
|
- version:
|
||||||
type: file
|
type: file
|
||||||
description: File containing software version
|
description: File containing software version
|
||||||
pattern: "*.{version.txt}"
|
pattern: "versions.yml"
|
||||||
authors:
|
authors:
|
||||||
- "@joseespinosa"
|
- "@joseespinosa"
|
||||||
- "@drpatelh"
|
- "@drpatelh"
|
||||||
|
|
|
@ -9,6 +9,13 @@ def getSoftwareName(task_process) {
|
||||||
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Extract name of module from process name using $task.process
|
||||||
|
//
|
||||||
|
def getProcessName(task_process) {
|
||||||
|
return task_process.tokenize(':')[-1]
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
||||||
//
|
//
|
||||||
|
@ -37,32 +44,35 @@ def getPathFromList(path_list) {
|
||||||
// Function to save/publish module results
|
// Function to save/publish module results
|
||||||
//
|
//
|
||||||
def saveFiles(Map args) {
|
def saveFiles(Map args) {
|
||||||
if (!args.filename.endsWith('.version.txt')) {
|
def ioptions = initOptions(args.options)
|
||||||
def ioptions = initOptions(args.options)
|
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
||||||
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
|
||||||
if (ioptions.publish_by_meta) {
|
// Do not publish versions.yml unless running from pytest workflow
|
||||||
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
if (args.filename.equals('versions.yml') && !System.getenv("NF_CORE_MODULES_TEST")) {
|
||||||
for (key in key_list) {
|
return null
|
||||||
if (args.meta && key instanceof String) {
|
}
|
||||||
def path = key
|
if (ioptions.publish_by_meta) {
|
||||||
if (args.meta.containsKey(key)) {
|
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
||||||
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
for (key in key_list) {
|
||||||
}
|
if (args.meta && key instanceof String) {
|
||||||
path = path instanceof String ? path : ''
|
def path = key
|
||||||
path_list.add(path)
|
if (args.meta.containsKey(key)) {
|
||||||
|
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
||||||
}
|
}
|
||||||
|
path = path instanceof String ? path : ''
|
||||||
|
path_list.add(path)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ioptions.publish_files instanceof Map) {
|
}
|
||||||
for (ext in ioptions.publish_files) {
|
if (ioptions.publish_files instanceof Map) {
|
||||||
if (args.filename.endsWith(ext.key)) {
|
for (ext in ioptions.publish_files) {
|
||||||
def ext_list = path_list.collect()
|
if (args.filename.endsWith(ext.key)) {
|
||||||
ext_list.add(ext.value)
|
def ext_list = path_list.collect()
|
||||||
return "${getPathFromList(ext_list)}/$args.filename"
|
ext_list.add(ext.value)
|
||||||
}
|
return "${getPathFromList(ext_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
} else if (ioptions.publish_files == null) {
|
}
|
||||||
return "${getPathFromList(path_list)}/$args.filename"
|
} else if (ioptions.publish_files == null) {
|
||||||
}
|
return "${getPathFromList(path_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// Import generic module functions
|
// Import generic module functions
|
||||||
include { initOptions; saveFiles; getSoftwareName } from './functions'
|
include { initOptions; saveFiles; getSoftwareName; getProcessName } from './functions'
|
||||||
|
|
||||||
params.options = [:]
|
params.options = [:]
|
||||||
options = initOptions(params.options)
|
options = initOptions(params.options)
|
||||||
|
@ -24,7 +24,7 @@ process BEDTOOLS_INTERSECT {
|
||||||
|
|
||||||
output:
|
output:
|
||||||
tuple val(meta), path("*.${extension}"), emit: intersect
|
tuple val(meta), path("*.${extension}"), emit: intersect
|
||||||
path '*.version.txt' , emit: version
|
path "versions.yml" , emit: version
|
||||||
|
|
||||||
script:
|
script:
|
||||||
def software = getSoftwareName(task.process)
|
def software = getSoftwareName(task.process)
|
||||||
|
@ -37,6 +37,9 @@ process BEDTOOLS_INTERSECT {
|
||||||
$options.args \\
|
$options.args \\
|
||||||
> ${prefix}.${extension}
|
> ${prefix}.${extension}
|
||||||
|
|
||||||
bedtools --version | sed -e "s/bedtools v//g" > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(bedtools --version | sed -e "s/bedtools v//g")
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
}
|
}
|
||||||
|
|
|
@ -38,7 +38,7 @@ output:
|
||||||
- version:
|
- version:
|
||||||
type: file
|
type: file
|
||||||
description: File containing software version
|
description: File containing software version
|
||||||
pattern: "*.{version.txt}"
|
pattern: "versions.yml"
|
||||||
authors:
|
authors:
|
||||||
- "@Emiller88"
|
- "@Emiller88"
|
||||||
- "@sruthipsuresh"
|
- "@sruthipsuresh"
|
||||||
|
|
|
@ -9,6 +9,13 @@ def getSoftwareName(task_process) {
|
||||||
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Extract name of module from process name using $task.process
|
||||||
|
//
|
||||||
|
def getProcessName(task_process) {
|
||||||
|
return task_process.tokenize(':')[-1]
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
||||||
//
|
//
|
||||||
|
@ -37,32 +44,35 @@ def getPathFromList(path_list) {
|
||||||
// Function to save/publish module results
|
// Function to save/publish module results
|
||||||
//
|
//
|
||||||
def saveFiles(Map args) {
|
def saveFiles(Map args) {
|
||||||
if (!args.filename.endsWith('.version.txt')) {
|
def ioptions = initOptions(args.options)
|
||||||
def ioptions = initOptions(args.options)
|
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
||||||
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
|
||||||
if (ioptions.publish_by_meta) {
|
// Do not publish versions.yml unless running from pytest workflow
|
||||||
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
if (args.filename.equals('versions.yml') && !System.getenv("NF_CORE_MODULES_TEST")) {
|
||||||
for (key in key_list) {
|
return null
|
||||||
if (args.meta && key instanceof String) {
|
}
|
||||||
def path = key
|
if (ioptions.publish_by_meta) {
|
||||||
if (args.meta.containsKey(key)) {
|
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
||||||
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
for (key in key_list) {
|
||||||
}
|
if (args.meta && key instanceof String) {
|
||||||
path = path instanceof String ? path : ''
|
def path = key
|
||||||
path_list.add(path)
|
if (args.meta.containsKey(key)) {
|
||||||
|
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
||||||
}
|
}
|
||||||
|
path = path instanceof String ? path : ''
|
||||||
|
path_list.add(path)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ioptions.publish_files instanceof Map) {
|
}
|
||||||
for (ext in ioptions.publish_files) {
|
if (ioptions.publish_files instanceof Map) {
|
||||||
if (args.filename.endsWith(ext.key)) {
|
for (ext in ioptions.publish_files) {
|
||||||
def ext_list = path_list.collect()
|
if (args.filename.endsWith(ext.key)) {
|
||||||
ext_list.add(ext.value)
|
def ext_list = path_list.collect()
|
||||||
return "${getPathFromList(ext_list)}/$args.filename"
|
ext_list.add(ext.value)
|
||||||
}
|
return "${getPathFromList(ext_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
} else if (ioptions.publish_files == null) {
|
}
|
||||||
return "${getPathFromList(path_list)}/$args.filename"
|
} else if (ioptions.publish_files == null) {
|
||||||
}
|
return "${getPathFromList(path_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// Import generic module functions
|
// Import generic module functions
|
||||||
include { initOptions; saveFiles; getSoftwareName } from './functions'
|
include { initOptions; saveFiles; getSoftwareName; getProcessName } from './functions'
|
||||||
|
|
||||||
params.options = [:]
|
params.options = [:]
|
||||||
options = initOptions(params.options)
|
options = initOptions(params.options)
|
||||||
|
@ -24,7 +24,7 @@ process BEDTOOLS_MAKEWINDOWS {
|
||||||
|
|
||||||
output:
|
output:
|
||||||
tuple val(meta), path("*.tab"), emit: tab
|
tuple val(meta), path("*.tab"), emit: tab
|
||||||
path "*.version.txt" , emit: version
|
path "versions.yml" , emit: version
|
||||||
|
|
||||||
script:
|
script:
|
||||||
def software = getSoftwareName(task.process)
|
def software = getSoftwareName(task.process)
|
||||||
|
@ -37,6 +37,9 @@ process BEDTOOLS_MAKEWINDOWS {
|
||||||
$options.args \\
|
$options.args \\
|
||||||
> ${prefix}.tab
|
> ${prefix}.tab
|
||||||
|
|
||||||
echo \$(bedtools --version) | sed -e "s/bedtools v//g" > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(bedtools --version | sed -e "s/bedtools v//g")
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
}
|
}
|
||||||
|
|
|
@ -34,7 +34,7 @@ output:
|
||||||
- version:
|
- version:
|
||||||
type: file
|
type: file
|
||||||
description: File containing software version
|
description: File containing software version
|
||||||
pattern: "*.{version.txt}"
|
pattern: "versions.yml"
|
||||||
- tab:
|
- tab:
|
||||||
type: file
|
type: file
|
||||||
description: Windows TAB file (BED or BED-like format)
|
description: Windows TAB file (BED or BED-like format)
|
||||||
|
|
|
@ -9,6 +9,13 @@ def getSoftwareName(task_process) {
|
||||||
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Extract name of module from process name using $task.process
|
||||||
|
//
|
||||||
|
def getProcessName(task_process) {
|
||||||
|
return task_process.tokenize(':')[-1]
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
||||||
//
|
//
|
||||||
|
@ -37,32 +44,35 @@ def getPathFromList(path_list) {
|
||||||
// Function to save/publish module results
|
// Function to save/publish module results
|
||||||
//
|
//
|
||||||
def saveFiles(Map args) {
|
def saveFiles(Map args) {
|
||||||
if (!args.filename.endsWith('.version.txt')) {
|
def ioptions = initOptions(args.options)
|
||||||
def ioptions = initOptions(args.options)
|
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
||||||
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
|
||||||
if (ioptions.publish_by_meta) {
|
// Do not publish versions.yml unless running from pytest workflow
|
||||||
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
if (args.filename.equals('versions.yml') && !System.getenv("NF_CORE_MODULES_TEST")) {
|
||||||
for (key in key_list) {
|
return null
|
||||||
if (args.meta && key instanceof String) {
|
}
|
||||||
def path = key
|
if (ioptions.publish_by_meta) {
|
||||||
if (args.meta.containsKey(key)) {
|
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
||||||
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
for (key in key_list) {
|
||||||
}
|
if (args.meta && key instanceof String) {
|
||||||
path = path instanceof String ? path : ''
|
def path = key
|
||||||
path_list.add(path)
|
if (args.meta.containsKey(key)) {
|
||||||
|
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
||||||
}
|
}
|
||||||
|
path = path instanceof String ? path : ''
|
||||||
|
path_list.add(path)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ioptions.publish_files instanceof Map) {
|
}
|
||||||
for (ext in ioptions.publish_files) {
|
if (ioptions.publish_files instanceof Map) {
|
||||||
if (args.filename.endsWith(ext.key)) {
|
for (ext in ioptions.publish_files) {
|
||||||
def ext_list = path_list.collect()
|
if (args.filename.endsWith(ext.key)) {
|
||||||
ext_list.add(ext.value)
|
def ext_list = path_list.collect()
|
||||||
return "${getPathFromList(ext_list)}/$args.filename"
|
ext_list.add(ext.value)
|
||||||
}
|
return "${getPathFromList(ext_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
} else if (ioptions.publish_files == null) {
|
}
|
||||||
return "${getPathFromList(path_list)}/$args.filename"
|
} else if (ioptions.publish_files == null) {
|
||||||
}
|
return "${getPathFromList(path_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// Import generic module functions
|
// Import generic module functions
|
||||||
include { initOptions; saveFiles; getSoftwareName } from './functions'
|
include { initOptions; saveFiles; getSoftwareName; getProcessName } from './functions'
|
||||||
|
|
||||||
params.options = [:]
|
params.options = [:]
|
||||||
options = initOptions(params.options)
|
options = initOptions(params.options)
|
||||||
|
@ -24,7 +24,7 @@ process BEDTOOLS_MASKFASTA {
|
||||||
|
|
||||||
output:
|
output:
|
||||||
tuple val(meta), path("*.fa"), emit: fasta
|
tuple val(meta), path("*.fa"), emit: fasta
|
||||||
path "*.version.txt" , emit: version
|
path "versions.yml" , emit: version
|
||||||
|
|
||||||
script:
|
script:
|
||||||
def software = getSoftwareName(task.process)
|
def software = getSoftwareName(task.process)
|
||||||
|
@ -36,6 +36,9 @@ process BEDTOOLS_MASKFASTA {
|
||||||
-fi $fasta \\
|
-fi $fasta \\
|
||||||
-bed $bed \\
|
-bed $bed \\
|
||||||
-fo ${prefix}.fa
|
-fo ${prefix}.fa
|
||||||
bedtools --version | sed -e "s/bedtools v//g" > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(bedtools --version | sed -e "s/bedtools v//g")
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
}
|
}
|
||||||
|
|
|
@ -37,7 +37,7 @@ output:
|
||||||
- version:
|
- version:
|
||||||
type: file
|
type: file
|
||||||
description: File containing software version
|
description: File containing software version
|
||||||
pattern: "*.{version.txt}"
|
pattern: "versions.yml"
|
||||||
authors:
|
authors:
|
||||||
- "@joseespinosa"
|
- "@joseespinosa"
|
||||||
- "@drpatelh"
|
- "@drpatelh"
|
||||||
|
|
|
@ -9,6 +9,13 @@ def getSoftwareName(task_process) {
|
||||||
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Extract name of module from process name using $task.process
|
||||||
|
//
|
||||||
|
def getProcessName(task_process) {
|
||||||
|
return task_process.tokenize(':')[-1]
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
||||||
//
|
//
|
||||||
|
@ -37,32 +44,35 @@ def getPathFromList(path_list) {
|
||||||
// Function to save/publish module results
|
// Function to save/publish module results
|
||||||
//
|
//
|
||||||
def saveFiles(Map args) {
|
def saveFiles(Map args) {
|
||||||
if (!args.filename.endsWith('.version.txt')) {
|
def ioptions = initOptions(args.options)
|
||||||
def ioptions = initOptions(args.options)
|
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
||||||
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
|
||||||
if (ioptions.publish_by_meta) {
|
// Do not publish versions.yml unless running from pytest workflow
|
||||||
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
if (args.filename.equals('versions.yml') && !System.getenv("NF_CORE_MODULES_TEST")) {
|
||||||
for (key in key_list) {
|
return null
|
||||||
if (args.meta && key instanceof String) {
|
}
|
||||||
def path = key
|
if (ioptions.publish_by_meta) {
|
||||||
if (args.meta.containsKey(key)) {
|
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
||||||
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
for (key in key_list) {
|
||||||
}
|
if (args.meta && key instanceof String) {
|
||||||
path = path instanceof String ? path : ''
|
def path = key
|
||||||
path_list.add(path)
|
if (args.meta.containsKey(key)) {
|
||||||
|
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
||||||
}
|
}
|
||||||
|
path = path instanceof String ? path : ''
|
||||||
|
path_list.add(path)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ioptions.publish_files instanceof Map) {
|
}
|
||||||
for (ext in ioptions.publish_files) {
|
if (ioptions.publish_files instanceof Map) {
|
||||||
if (args.filename.endsWith(ext.key)) {
|
for (ext in ioptions.publish_files) {
|
||||||
def ext_list = path_list.collect()
|
if (args.filename.endsWith(ext.key)) {
|
||||||
ext_list.add(ext.value)
|
def ext_list = path_list.collect()
|
||||||
return "${getPathFromList(ext_list)}/$args.filename"
|
ext_list.add(ext.value)
|
||||||
}
|
return "${getPathFromList(ext_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
} else if (ioptions.publish_files == null) {
|
}
|
||||||
return "${getPathFromList(path_list)}/$args.filename"
|
} else if (ioptions.publish_files == null) {
|
||||||
}
|
return "${getPathFromList(path_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// Import generic module functions
|
// Import generic module functions
|
||||||
include { initOptions; saveFiles; getSoftwareName } from './functions'
|
include { initOptions; saveFiles; getSoftwareName; getProcessName } from './functions'
|
||||||
|
|
||||||
params.options = [:]
|
params.options = [:]
|
||||||
options = initOptions(params.options)
|
options = initOptions(params.options)
|
||||||
|
@ -23,7 +23,7 @@ process BEDTOOLS_MERGE {
|
||||||
|
|
||||||
output:
|
output:
|
||||||
tuple val(meta), path('*.bed'), emit: bed
|
tuple val(meta), path('*.bed'), emit: bed
|
||||||
path '*.version.txt' , emit: version
|
path "versions.yml" , emit: version
|
||||||
|
|
||||||
script:
|
script:
|
||||||
def software = getSoftwareName(task.process)
|
def software = getSoftwareName(task.process)
|
||||||
|
@ -35,6 +35,9 @@ process BEDTOOLS_MERGE {
|
||||||
$options.args \\
|
$options.args \\
|
||||||
> ${prefix}.bed
|
> ${prefix}.bed
|
||||||
|
|
||||||
bedtools --version | sed -e "s/bedtools v//g" > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(bedtools --version | sed -e "s/bedtools v//g")
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
}
|
}
|
||||||
|
|
|
@ -31,7 +31,7 @@ output:
|
||||||
- version:
|
- version:
|
||||||
type: file
|
type: file
|
||||||
description: File containing software version
|
description: File containing software version
|
||||||
pattern: "*.{version.txt}"
|
pattern: "versions.yml"
|
||||||
authors:
|
authors:
|
||||||
- "@Emiller88"
|
- "@Emiller88"
|
||||||
- "@sruthipsuresh"
|
- "@sruthipsuresh"
|
||||||
|
|
|
@ -9,6 +9,13 @@ def getSoftwareName(task_process) {
|
||||||
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Extract name of module from process name using $task.process
|
||||||
|
//
|
||||||
|
def getProcessName(task_process) {
|
||||||
|
return task_process.tokenize(':')[-1]
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
||||||
//
|
//
|
||||||
|
@ -37,32 +44,35 @@ def getPathFromList(path_list) {
|
||||||
// Function to save/publish module results
|
// Function to save/publish module results
|
||||||
//
|
//
|
||||||
def saveFiles(Map args) {
|
def saveFiles(Map args) {
|
||||||
if (!args.filename.endsWith('.version.txt')) {
|
def ioptions = initOptions(args.options)
|
||||||
def ioptions = initOptions(args.options)
|
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
||||||
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
|
||||||
if (ioptions.publish_by_meta) {
|
// Do not publish versions.yml unless running from pytest workflow
|
||||||
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
if (args.filename.equals('versions.yml') && !System.getenv("NF_CORE_MODULES_TEST")) {
|
||||||
for (key in key_list) {
|
return null
|
||||||
if (args.meta && key instanceof String) {
|
}
|
||||||
def path = key
|
if (ioptions.publish_by_meta) {
|
||||||
if (args.meta.containsKey(key)) {
|
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
||||||
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
for (key in key_list) {
|
||||||
}
|
if (args.meta && key instanceof String) {
|
||||||
path = path instanceof String ? path : ''
|
def path = key
|
||||||
path_list.add(path)
|
if (args.meta.containsKey(key)) {
|
||||||
|
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
||||||
}
|
}
|
||||||
|
path = path instanceof String ? path : ''
|
||||||
|
path_list.add(path)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ioptions.publish_files instanceof Map) {
|
}
|
||||||
for (ext in ioptions.publish_files) {
|
if (ioptions.publish_files instanceof Map) {
|
||||||
if (args.filename.endsWith(ext.key)) {
|
for (ext in ioptions.publish_files) {
|
||||||
def ext_list = path_list.collect()
|
if (args.filename.endsWith(ext.key)) {
|
||||||
ext_list.add(ext.value)
|
def ext_list = path_list.collect()
|
||||||
return "${getPathFromList(ext_list)}/$args.filename"
|
ext_list.add(ext.value)
|
||||||
}
|
return "${getPathFromList(ext_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
} else if (ioptions.publish_files == null) {
|
}
|
||||||
return "${getPathFromList(path_list)}/$args.filename"
|
} else if (ioptions.publish_files == null) {
|
||||||
}
|
return "${getPathFromList(path_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// Import generic module functions
|
// Import generic module functions
|
||||||
include { initOptions; saveFiles; getSoftwareName } from './functions'
|
include { initOptions; saveFiles; getSoftwareName; getProcessName } from './functions'
|
||||||
|
|
||||||
params.options = [:]
|
params.options = [:]
|
||||||
options = initOptions(params.options)
|
options = initOptions(params.options)
|
||||||
|
@ -24,7 +24,7 @@ process BEDTOOLS_SLOP {
|
||||||
|
|
||||||
output:
|
output:
|
||||||
tuple val(meta), path("*.bed"), emit: bed
|
tuple val(meta), path("*.bed"), emit: bed
|
||||||
path "*.version.txt" , emit: version
|
path "versions.yml" , emit: version
|
||||||
|
|
||||||
script:
|
script:
|
||||||
def software = getSoftwareName(task.process)
|
def software = getSoftwareName(task.process)
|
||||||
|
@ -37,7 +37,10 @@ process BEDTOOLS_SLOP {
|
||||||
$options.args \\
|
$options.args \\
|
||||||
> ${prefix}.bed
|
> ${prefix}.bed
|
||||||
|
|
||||||
bedtools --version | sed -e "s/bedtools v//g" > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(bedtools --version | sed -e "s/bedtools v//g")
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -31,7 +31,7 @@ output:
|
||||||
- version:
|
- version:
|
||||||
type: file
|
type: file
|
||||||
description: File containing software version
|
description: File containing software version
|
||||||
pattern: "*.{version.txt}"
|
pattern: "versions.yml"
|
||||||
authors:
|
authors:
|
||||||
- "@Emiller88"
|
- "@Emiller88"
|
||||||
- "@sruthipsuresh"
|
- "@sruthipsuresh"
|
||||||
|
|
|
@ -9,6 +9,13 @@ def getSoftwareName(task_process) {
|
||||||
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Extract name of module from process name using $task.process
|
||||||
|
//
|
||||||
|
def getProcessName(task_process) {
|
||||||
|
return task_process.tokenize(':')[-1]
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
||||||
//
|
//
|
||||||
|
@ -37,32 +44,35 @@ def getPathFromList(path_list) {
|
||||||
// Function to save/publish module results
|
// Function to save/publish module results
|
||||||
//
|
//
|
||||||
def saveFiles(Map args) {
|
def saveFiles(Map args) {
|
||||||
if (!args.filename.endsWith('.version.txt')) {
|
def ioptions = initOptions(args.options)
|
||||||
def ioptions = initOptions(args.options)
|
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
||||||
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
|
||||||
if (ioptions.publish_by_meta) {
|
// Do not publish versions.yml unless running from pytest workflow
|
||||||
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
if (args.filename.equals('versions.yml') && !System.getenv("NF_CORE_MODULES_TEST")) {
|
||||||
for (key in key_list) {
|
return null
|
||||||
if (args.meta && key instanceof String) {
|
}
|
||||||
def path = key
|
if (ioptions.publish_by_meta) {
|
||||||
if (args.meta.containsKey(key)) {
|
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
||||||
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
for (key in key_list) {
|
||||||
}
|
if (args.meta && key instanceof String) {
|
||||||
path = path instanceof String ? path : ''
|
def path = key
|
||||||
path_list.add(path)
|
if (args.meta.containsKey(key)) {
|
||||||
|
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
||||||
}
|
}
|
||||||
|
path = path instanceof String ? path : ''
|
||||||
|
path_list.add(path)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ioptions.publish_files instanceof Map) {
|
}
|
||||||
for (ext in ioptions.publish_files) {
|
if (ioptions.publish_files instanceof Map) {
|
||||||
if (args.filename.endsWith(ext.key)) {
|
for (ext in ioptions.publish_files) {
|
||||||
def ext_list = path_list.collect()
|
if (args.filename.endsWith(ext.key)) {
|
||||||
ext_list.add(ext.value)
|
def ext_list = path_list.collect()
|
||||||
return "${getPathFromList(ext_list)}/$args.filename"
|
ext_list.add(ext.value)
|
||||||
}
|
return "${getPathFromList(ext_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
} else if (ioptions.publish_files == null) {
|
}
|
||||||
return "${getPathFromList(path_list)}/$args.filename"
|
} else if (ioptions.publish_files == null) {
|
||||||
}
|
return "${getPathFromList(path_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
// Import generic module functions
|
// Import generic module functions
|
||||||
include { initOptions; saveFiles; getSoftwareName } from './functions'
|
include { initOptions; saveFiles; getSoftwareName; getProcessName } from './functions'
|
||||||
|
|
||||||
params.options = [:]
|
params.options = [:]
|
||||||
options = initOptions(params.options)
|
options = initOptions(params.options)
|
||||||
|
@ -23,7 +23,7 @@ process BEDTOOLS_SORT {
|
||||||
|
|
||||||
output:
|
output:
|
||||||
tuple val(meta), path('*.bed'), emit: bed
|
tuple val(meta), path('*.bed'), emit: bed
|
||||||
path '*.version.txt' , emit: version
|
path "versions.yml" , emit: version
|
||||||
|
|
||||||
script:
|
script:
|
||||||
def software = getSoftwareName(task.process)
|
def software = getSoftwareName(task.process)
|
||||||
|
@ -35,6 +35,9 @@ process BEDTOOLS_SORT {
|
||||||
$options.args \\
|
$options.args \\
|
||||||
> ${prefix}.bed
|
> ${prefix}.bed
|
||||||
|
|
||||||
bedtools --version | sed -e "s/bedtools v//g" > ${software}.version.txt
|
cat <<-END_VERSIONS > versions.yml
|
||||||
|
${getProcessName(task.process)}:
|
||||||
|
${getSoftwareName(task.process)}: \$(bedtools --version | sed -e "s/bedtools v//g")
|
||||||
|
END_VERSIONS
|
||||||
"""
|
"""
|
||||||
}
|
}
|
||||||
|
|
|
@ -31,7 +31,7 @@ output:
|
||||||
- version:
|
- version:
|
||||||
type: file
|
type: file
|
||||||
description: File containing software version
|
description: File containing software version
|
||||||
pattern: "*.{version.txt}"
|
pattern: "versions.yml"
|
||||||
authors:
|
authors:
|
||||||
- "@Emiller88"
|
- "@Emiller88"
|
||||||
- "@sruthipsuresh"
|
- "@sruthipsuresh"
|
||||||
|
|
|
@ -9,6 +9,13 @@ def getSoftwareName(task_process) {
|
||||||
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
return task_process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Extract name of module from process name using $task.process
|
||||||
|
//
|
||||||
|
def getProcessName(task_process) {
|
||||||
|
return task_process.tokenize(':')[-1]
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
// Function to initialise default values and to generate a Groovy Map of available options for nf-core modules
|
||||||
//
|
//
|
||||||
|
@ -37,32 +44,35 @@ def getPathFromList(path_list) {
|
||||||
// Function to save/publish module results
|
// Function to save/publish module results
|
||||||
//
|
//
|
||||||
def saveFiles(Map args) {
|
def saveFiles(Map args) {
|
||||||
if (!args.filename.endsWith('.version.txt')) {
|
def ioptions = initOptions(args.options)
|
||||||
def ioptions = initOptions(args.options)
|
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
||||||
def path_list = [ ioptions.publish_dir ?: args.publish_dir ]
|
|
||||||
if (ioptions.publish_by_meta) {
|
// Do not publish versions.yml unless running from pytest workflow
|
||||||
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
if (args.filename.equals('versions.yml') && !System.getenv("NF_CORE_MODULES_TEST")) {
|
||||||
for (key in key_list) {
|
return null
|
||||||
if (args.meta && key instanceof String) {
|
}
|
||||||
def path = key
|
if (ioptions.publish_by_meta) {
|
||||||
if (args.meta.containsKey(key)) {
|
def key_list = ioptions.publish_by_meta instanceof List ? ioptions.publish_by_meta : args.publish_by_meta
|
||||||
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
for (key in key_list) {
|
||||||
}
|
if (args.meta && key instanceof String) {
|
||||||
path = path instanceof String ? path : ''
|
def path = key
|
||||||
path_list.add(path)
|
if (args.meta.containsKey(key)) {
|
||||||
|
path = args.meta[key] instanceof Boolean ? "${key}_${args.meta[key]}".toString() : args.meta[key]
|
||||||
}
|
}
|
||||||
|
path = path instanceof String ? path : ''
|
||||||
|
path_list.add(path)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (ioptions.publish_files instanceof Map) {
|
}
|
||||||
for (ext in ioptions.publish_files) {
|
if (ioptions.publish_files instanceof Map) {
|
||||||
if (args.filename.endsWith(ext.key)) {
|
for (ext in ioptions.publish_files) {
|
||||||
def ext_list = path_list.collect()
|
if (args.filename.endsWith(ext.key)) {
|
||||||
ext_list.add(ext.value)
|
def ext_list = path_list.collect()
|
||||||
return "${getPathFromList(ext_list)}/$args.filename"
|
ext_list.add(ext.value)
|
||||||
}
|
return "${getPathFromList(ext_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
} else if (ioptions.publish_files == null) {
|
}
|
||||||
return "${getPathFromList(path_list)}/$args.filename"
|
} else if (ioptions.publish_files == null) {
|
||||||
}
|
return "${getPathFromList(path_list)}/$args.filename"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue