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