kkonganti@11: process { kkonganti@11: withName: 'DB_PER_COMPUTED_SEROTYPE' { kkonganti@11: ext.args = addParamsToSummary( kkonganti@11: loadThisFunction("${params.toolshelp}${params.fs}wcomp.nf").wcompHelp(params).helpparams kkonganti@11: ) kkonganti@11: } kkonganti@11: kkonganti@11: withName: 'DB_PER_SNP_CLUSTER' { kkonganti@11: ext.args = addParamsToSummary( kkonganti@11: loadThisFunction("${params.toolshelp}${params.fs}wsnp.nf").wsnpHelp(params).helpparams kkonganti@11: ) kkonganti@11: } kkonganti@11: kkonganti@11: if (params.mashsketch_run) { kkonganti@11: withName: 'MASH_SKETCH' { kkonganti@11: ext.args = addParamsToSummary( kkonganti@11: loadThisFunction("${params.toolshelp}${params.fs}mashsketch.nf").mashsketchHelp(params).helpparams kkonganti@11: ) kkonganti@11: } kkonganti@11: } kkonganti@11: kkonganti@11: withName: 'SCAFFOLD_GENOMES' { kkonganti@11: maxRetries = 5 kkonganti@11: publishDir = [ kkonganti@11: path: "${params.output}${params.fs}scaffold_genomes", kkonganti@11: mode: "move", kkonganti@11: overwrite: true, kkonganti@11: saveAs: { filename -> filename ==~ /versions\.yml|genome_paths\.txt/ ? null : filename } kkonganti@11: ] kkonganti@11: } kkonganti@11: } kkonganti@11: kkonganti@11: kkonganti@11: // Parse the default params kkonganti@11: def loadThisFunction (func_file) { kkonganti@11: GroovyShell grvy_sh = new GroovyShell() kkonganti@11: def func = grvy_sh.parse(new File ( func_file ) ) kkonganti@11: return func kkonganti@11: } kkonganti@11: kkonganti@11: // Method to add relevant final parameters to summary log kkonganti@11: def addParamsToSummary(Map params_to_add = [:]) { kkonganti@11: kkonganti@11: if (!params_to_add.isEmpty()) { kkonganti@11: def not_null_params_to_add = params_to_add.findAll { kkonganti@11: it.value.clivalue != null && kkonganti@11: it.value.clivalue != '[:]' && kkonganti@11: it.value.clivalue != '' kkonganti@11: } kkonganti@11: kkonganti@11: params.logtheseparams += not_null_params_to_add.keySet().toList() kkonganti@11: kkonganti@11: return not_null_params_to_add.collect { kkonganti@11: "${it.value.cliflag} ${it.value.clivalue.toString().replaceAll(/(?:^\s+|\s+$)/, '')}" kkonganti@11: }.join(' ').trim() kkonganti@11: } kkonganti@11: return 1 kkonganti@11: }