diff 0.1.0/workflows/conf/process/cronology.process.config @ 0:c8597e9e1a97

"planemo upload"
author kkonganti
date Mon, 27 Nov 2023 12:37:44 -0500
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/0.1.0/workflows/conf/process/cronology.process.config	Mon Nov 27 12:37:44 2023 -0500
@@ -0,0 +1,146 @@
+process {
+    withName: 'SEQKIT_SEQ' {
+        ext.args = [
+            params.fq_filter_by_len ? "-m ${params.fq_filter_by_len}" : ''
+        ].join(' ').trim()
+    }
+
+    if (params.dpubmlstpy_run) {
+        withName: 'DOWNLOAD_PUBMLST_SCHEME' {
+            ext.args = addParamsToSummary(
+                loadThisFunction("${params.toolshelp}${params.fs}dpubmlstpy.nf").dpubmlstpyHelp(params).helpparams
+            )
+        }
+    }
+
+    if (params.fastp_run) {
+        withName: 'FASTP' {
+            ext.args = addParamsToSummary(
+                loadThisFunction("${params.toolshelp}${params.fs}fastp.nf").fastpHelp(params).helpparams
+            )
+        }
+    }
+
+    if (params.mashscreen_run) {
+        withName: 'MASH_SCREEN' {
+            ext.args = addParamsToSummary(
+                loadThisFunction("${params.toolshelp}${params.fs}mashscreen.nf").mashscreenHelp(params).helpparams
+            )
+        }
+    }
+
+    if (params.tuspy_run) {
+        withName: 'TOP_UNIQUE_SEROVARS' {
+            ext.args = addParamsToSummary(
+                loadThisFunction("${params.toolshelp}${params.fs}tuspy.nf").tuspyHelp(params).helpparams
+            )
+        }
+    }
+
+    if (params.spades_run) {
+        withName: 'SPADES_ASSEMBLE' {
+            errorStrategy = 'ignore'
+            ext.args = addParamsToSummary(
+                loadThisFunction("${params.toolshelp}${params.fs}spades.nf").spadesHelp(params).helpparams
+            )
+        }
+    }
+
+    if (params.shovill_run) {
+        withName: 'SHOVILL' {
+            errorStrategy = 'ignore'
+            ext.args = addParamsToSummary(
+                loadThisFunction("${params.toolshelp}${params.fs}shovill.nf").shovillHelp(params).helpparams
+            )
+        }
+    }
+
+    if (params.polypolish_run) {
+        withName: 'POLYPOLISH' {
+            ext.args = addParamsToSummary(
+                loadThisFunction("${params.toolshelp}${params.fs}polypolish.nf").polypolishHelp(params).helpparams
+            )
+        }
+    }
+
+    if (params.quast_run) {
+        withName: 'QUAST' {
+            ext.args = addParamsToSummary(
+                loadThisFunction("${params.toolshelp}${params.fs}quast.nf").quastHelp(params).helpparams
+            )
+        }
+    }
+
+    if (params.pirate_run) {
+        withName: 'PIRATE' {
+            ext.args = addParamsToSummary(
+                loadThisFunction("${params.toolshelp}${params.fs}pirate.nf").pirateHelp(params).helpparams
+            )
+        }
+    }
+
+    if (params.prodka_run) {
+        withName: 'PRODIGAL' {
+            ext.args = addParamsToSummary(
+                loadThisFunction("${params.toolshelp}${params.fs}prodigal.nf").prodigalHelp(params).helpparams
+            )
+        }
+
+        withName: 'PROKKA' {
+            ext.args = addParamsToSummary(
+                loadThisFunction("${params.toolshelp}${params.fs}prokka.nf").prokkaHelp(params).helpparams
+            )
+        }
+    }
+
+    if (params.mlst_run) {
+        withName: 'MLST' {
+            ext.args = addParamsToSummary(
+                loadThisFunction("${params.toolshelp}${params.fs}mlst.nf").mlstHelp(params).helpparams
+            )
+        }
+    }
+
+    if (params.abricate_run) {
+        withName: 'ABRICATE_RUN' {
+            ext.args = addParamsToSummary(
+                loadThisFunction("${params.toolshelp}${params.fs}abricate.nf").abricateHelp(params).helpparams
+            )
+        }
+    }
+
+    if (params.mashtree_run) {
+        withName: 'MASHTREE' {
+            ext.args = addParamsToSummary(
+                loadThisFunction("${params.toolshelp}${params.fs}mashtree.nf").mashtreeHelp(params).helpparams
+            )
+        }
+    }
+}
+
+// Method to instantiate a new function parser
+// Need to refactor using ScriptParser... another day
+def loadThisFunction (func_file) {
+    GroovyShell grvy_sh = new GroovyShell()
+    def func = grvy_sh.parse(new File ( func_file ) )
+    return func
+}
+
+// Method to add relevant final parameters to summary log
+def addParamsToSummary(Map params_to_add = [:]) {
+
+    if (!params_to_add.isEmpty()) {
+        def not_null_params_to_add = params_to_add.findAll {
+            it.value.clivalue != null && 
+                it.value.clivalue != '[:]' &&
+                it.value.clivalue != ''
+        }
+
+        params.logtheseparams += not_null_params_to_add.keySet().toList()
+
+        return not_null_params_to_add.collect {
+            "${it.value.cliflag} ${it.value.clivalue.toString().replaceAll(/(?:^\s+|\s+$)/, '')}"
+        }.join(' ').trim()
+    }
+    return 1
+}
\ No newline at end of file