From 967dddf7707104d0a44af814d42c08b52962137f Mon Sep 17 00:00:00 2001 From: Rayane Elmedjadji Date: Fri, 16 May 2025 12:48:27 +0200 Subject: [PATCH 1/5] Add nextdenovo module - TODO: test --- modules/nf-core/nextdenovo/environment.yml | 5 ++ modules/nf-core/nextdenovo/main.nf | 52 +++++++++++++ modules/nf-core/nextdenovo/meta.yml | 68 +++++++++++++++++ modules/nf-core/nextdenovo/tests/main.nf.test | 73 +++++++++++++++++++ .../nextdenovo/tests/main.nf.test.snap | 73 +++++++++++++++++++ 5 files changed, 271 insertions(+) create mode 100644 modules/nf-core/nextdenovo/environment.yml create mode 100644 modules/nf-core/nextdenovo/main.nf create mode 100644 modules/nf-core/nextdenovo/meta.yml create mode 100644 modules/nf-core/nextdenovo/tests/main.nf.test create mode 100644 modules/nf-core/nextdenovo/tests/main.nf.test.snap diff --git a/modules/nf-core/nextdenovo/environment.yml b/modules/nf-core/nextdenovo/environment.yml new file mode 100644 index 00000000000..58417daeab4 --- /dev/null +++ b/modules/nf-core/nextdenovo/environment.yml @@ -0,0 +1,5 @@ +channels: + - conda-forge + - bioconda +dependencies: + - bioconda::nextdenovo=2.5.2 diff --git a/modules/nf-core/nextdenovo/main.nf b/modules/nf-core/nextdenovo/main.nf new file mode 100644 index 00000000000..6e464796525 --- /dev/null +++ b/modules/nf-core/nextdenovo/main.nf @@ -0,0 +1,52 @@ +process NEXTDENOVO { + tag "$meta.id" + label 'process_high' + + conda "${moduleDir}/environment.yml" + container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? + 'https://community-cr-prod.seqera.io/docker/registry/v2/blobs/sha256/fa/fa1c1e961de38d24cf36c424a8f4a9920ddd07b63fdb4cfa51c9e3a593c3c979/data' : + 'community.wave.seqera.io/library/flye:2.9.5--d577924c8416ccd8' }" + + input: + tuple val(meta), path(reads) + path config + + output: + tuple val(meta), path("*.fasta.gz"), emit: fasta + tuple val(meta), path("*.stat") , emit: stat + path "versions.yml" , emit: versions + + when: + task.ext.when == null || task.ext.when + + script: + def args = task.ext.args ?: '' + def prefix = task.ext.prefix ?: "${meta.id}" + """ + echo ${reads} > input.fofn + nextDenovo \\ + $config \\ + input.fofn \\ + + gzip -c ./03.ctg_graph/nd.asm.fasta > ${prefix}.assembly.fasta.gz + + mv ./03.ctg_graph/nd.asm.fasta.stat ${prefix}.assembly_info.stat + + cat <<-END_VERSIONS > versions.yml + "${task.process}": + \$( nextDenovo --version ) + END_VERSIONS + """ + + stub: + def prefix = task.ext.prefix ?: "${meta.id}" + """ + echo stub | gzip -c > ${prefix}.assembly.fasta.gz + echo contig_1 > ${prefix}.assembly_info.stat + + cat <<-END_VERSIONS > versions.yml + "${task.process}": + \$( nextDenovo --version ) + END_VERSIONS + """ +} diff --git a/modules/nf-core/nextdenovo/meta.yml b/modules/nf-core/nextdenovo/meta.yml new file mode 100644 index 00000000000..55bbb2a59bc --- /dev/null +++ b/modules/nf-core/nextdenovo/meta.yml @@ -0,0 +1,68 @@ +name: "nextdenovo" +description: NextDenovo is a string graph-based de novo assembler for long reads (CLR, + HiFi and ONT). It uses a “correct-then-assemble” strategy similar to canu (no correction + step for PacBio HiFi reads), but requires significantly less computing resources + and storages +keywords: + - assembly + - genome + - de novo + - genome assembler + - single molecule +tools: + - "nextdenovo": + description: "NextDenovo is a string graph-based de novo assembler for long reads + (CLR, HiFi and ONT). It uses a “correct-then-assemble” strategy similar to canu + (no correction step for PacBio HiFi reads), but requires significantly less + computing resources and storages" + homepage: "https://github.com/fenderglass/Flye" + documentation: "https://nextdenovo.readthedocs.io/en/latest/" + tool_dev_url: "https://github.com/Nextomics/NextDenovo" + doi: "10.1186/s13059-024-03252-4" + licence: ["GPL-3.0-license"] + identifier: biotools:nextdenovo +input: + - - meta: + type: map + description: | + Groovy Map containing sample information + e.g. [ id:'test' ] + - reads: + type: file + description: Input reads from Oxford Nanopore or PacBio data in FASTA/FASTQ + format. + pattern: "*.{fasta,fastq,fasta.gz,fastq.gz,fa,fq,fa.gz,fq.gz}" + - - config: + type: file + description: Input config file for nextDenovo + pattern: "*" +output: + - fasta: + - meta: + type: map + description: | + Groovy Map containing sample information + e.g. [ id:'test' ] + - "*.fasta.gz": + type: file + description: Assembled FASTA file + pattern: "*.fasta.gz" + - stat: + - meta: + type: map + description: | + Groovy Map containing sample information + e.g. [ id:'test' ] + - "*.stat": + type: file + description: Extra information and statistics about resulting contigs + pattern: "*.stat" + - versions: + - versions.yml: + type: file + description: File containing software versions + pattern: "versions.yml" +authors: + - "@elmedjadjirayane" +maintainers: + - "@elmedjadjirayane" diff --git a/modules/nf-core/nextdenovo/tests/main.nf.test b/modules/nf-core/nextdenovo/tests/main.nf.test new file mode 100644 index 00000000000..2a197188d3e --- /dev/null +++ b/modules/nf-core/nextdenovo/tests/main.nf.test @@ -0,0 +1,73 @@ +// TODO nf-core: Once you have added the required tests, please run the following command to build this file: +// nf-core modules test nextdenovo +nextflow_process { + + name "Test Process NEXTDENOVO" + script "../main.nf" + process "NEXTDENOVO" + + tag "modules" + tag "modules_nfcore" + tag "nextdenovo" + + // TODO nf-core: Change the test name preferably indicating the test-data and file-format used + test("sarscov2 - bam") { + + // TODO nf-core: If you are created a test for a chained module + // (the module requires running more than one process to generate the required output) + // add the 'setup' method here. + // You can find more information about how to use a 'setup' method in the docs (https://nf-co.re/docs/contributing/modules#steps-for-creating-nf-test-for-chained-modules). + + when { + process { + """ + // TODO nf-core: define inputs of the process here. Example: + + input[0] = [ + [ id:'test', single_end:false ], // meta map + file(params.modules_testdata_base_path + 'genomics/sarscov2/illumina/bam/test.paired_end.sorted.bam', checkIfExists: true), + ] + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + //TODO nf-core: Add all required assertions to verify the test output. + // See https://nf-co.re/docs/contributing/tutorials/nf-test_assertions for more information and examples. + ) + } + + } + + // TODO nf-core: Change the test name preferably indicating the test-data and file-format used but keep the " - stub" suffix. + test("sarscov2 - bam - stub") { + + options "-stub" + + when { + process { + """ + // TODO nf-core: define inputs of the process here. Example: + + input[0] = [ + [ id:'test', single_end:false ], // meta map + file(params.modules_testdata_base_path + 'genomics/sarscov2/illumina/bam/test.paired_end.sorted.bam', checkIfExists: true), + ] + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + //TODO nf-core: Add all required assertions to verify the test output. + ) + } + + } + +} diff --git a/modules/nf-core/nextdenovo/tests/main.nf.test.snap b/modules/nf-core/nextdenovo/tests/main.nf.test.snap new file mode 100644 index 00000000000..2a197188d3e --- /dev/null +++ b/modules/nf-core/nextdenovo/tests/main.nf.test.snap @@ -0,0 +1,73 @@ +// TODO nf-core: Once you have added the required tests, please run the following command to build this file: +// nf-core modules test nextdenovo +nextflow_process { + + name "Test Process NEXTDENOVO" + script "../main.nf" + process "NEXTDENOVO" + + tag "modules" + tag "modules_nfcore" + tag "nextdenovo" + + // TODO nf-core: Change the test name preferably indicating the test-data and file-format used + test("sarscov2 - bam") { + + // TODO nf-core: If you are created a test for a chained module + // (the module requires running more than one process to generate the required output) + // add the 'setup' method here. + // You can find more information about how to use a 'setup' method in the docs (https://nf-co.re/docs/contributing/modules#steps-for-creating-nf-test-for-chained-modules). + + when { + process { + """ + // TODO nf-core: define inputs of the process here. Example: + + input[0] = [ + [ id:'test', single_end:false ], // meta map + file(params.modules_testdata_base_path + 'genomics/sarscov2/illumina/bam/test.paired_end.sorted.bam', checkIfExists: true), + ] + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + //TODO nf-core: Add all required assertions to verify the test output. + // See https://nf-co.re/docs/contributing/tutorials/nf-test_assertions for more information and examples. + ) + } + + } + + // TODO nf-core: Change the test name preferably indicating the test-data and file-format used but keep the " - stub" suffix. + test("sarscov2 - bam - stub") { + + options "-stub" + + when { + process { + """ + // TODO nf-core: define inputs of the process here. Example: + + input[0] = [ + [ id:'test', single_end:false ], // meta map + file(params.modules_testdata_base_path + 'genomics/sarscov2/illumina/bam/test.paired_end.sorted.bam', checkIfExists: true), + ] + """ + } + } + + then { + assertAll( + { assert process.success }, + { assert snapshot(process.out).match() } + //TODO nf-core: Add all required assertions to verify the test output. + ) + } + + } + +} From bce00163c7dabad5dca0e15a85b1a081bd0d4fe3 Mon Sep 17 00:00:00 2001 From: Rayane Elmedjadji Date: Fri, 16 May 2025 13:59:48 +0200 Subject: [PATCH 2/5] Update test file --- modules/nf-core/nextdenovo/environment.yml | 1 + modules/nf-core/nextdenovo/main.nf | 1 + modules/nf-core/nextdenovo/tests/main.nf.test | 35 ++------ .../nextdenovo/tests/main.nf.test.snap | 87 ++++--------------- 4 files changed, 22 insertions(+), 102 deletions(-) diff --git a/modules/nf-core/nextdenovo/environment.yml b/modules/nf-core/nextdenovo/environment.yml index 58417daeab4..f25691d02b5 100644 --- a/modules/nf-core/nextdenovo/environment.yml +++ b/modules/nf-core/nextdenovo/environment.yml @@ -3,3 +3,4 @@ channels: - bioconda dependencies: - bioconda::nextdenovo=2.5.2 + - conda-forge::paralleltask=0.1.1 diff --git a/modules/nf-core/nextdenovo/main.nf b/modules/nf-core/nextdenovo/main.nf index 6e464796525..a14d1854ede 100644 --- a/modules/nf-core/nextdenovo/main.nf +++ b/modules/nf-core/nextdenovo/main.nf @@ -24,6 +24,7 @@ process NEXTDENOVO { def prefix = task.ext.prefix ?: "${meta.id}" """ echo ${reads} > input.fofn + cat input.fofn nextDenovo \\ $config \\ input.fofn \\ diff --git a/modules/nf-core/nextdenovo/tests/main.nf.test b/modules/nf-core/nextdenovo/tests/main.nf.test index 2a197188d3e..56b35e4c3b3 100644 --- a/modules/nf-core/nextdenovo/tests/main.nf.test +++ b/modules/nf-core/nextdenovo/tests/main.nf.test @@ -11,7 +11,7 @@ nextflow_process { tag "nextdenovo" // TODO nf-core: Change the test name preferably indicating the test-data and file-format used - test("sarscov2 - bam") { + test("nextdenovo_ont") { // TODO nf-core: If you are created a test for a chained module // (the module requires running more than one process to generate the required output) @@ -24,9 +24,10 @@ nextflow_process { // TODO nf-core: define inputs of the process here. Example: input[0] = [ - [ id:'test', single_end:false ], // meta map - file(params.modules_testdata_base_path + 'genomics/sarscov2/illumina/bam/test.paired_end.sorted.bam', checkIfExists: true), + [ id:'test' ], // meta map + file(params.modules_testdata_base_path + '/genomics/sarscov2/nanopore/fastq/test.fastq.gz', checkIfExists: true), ] + input[1] = file(params.modules_testdata_base_path + 'generic/txt/hello.txt') """ } } @@ -42,32 +43,6 @@ nextflow_process { } - // TODO nf-core: Change the test name preferably indicating the test-data and file-format used but keep the " - stub" suffix. - test("sarscov2 - bam - stub") { - - options "-stub" - - when { - process { - """ - // TODO nf-core: define inputs of the process here. Example: - - input[0] = [ - [ id:'test', single_end:false ], // meta map - file(params.modules_testdata_base_path + 'genomics/sarscov2/illumina/bam/test.paired_end.sorted.bam', checkIfExists: true), - ] - """ - } - } - - then { - assertAll( - { assert process.success }, - { assert snapshot(process.out).match() } - //TODO nf-core: Add all required assertions to verify the test output. - ) - } - - } + } diff --git a/modules/nf-core/nextdenovo/tests/main.nf.test.snap b/modules/nf-core/nextdenovo/tests/main.nf.test.snap index 2a197188d3e..354267dfc4a 100644 --- a/modules/nf-core/nextdenovo/tests/main.nf.test.snap +++ b/modules/nf-core/nextdenovo/tests/main.nf.test.snap @@ -1,73 +1,16 @@ -// TODO nf-core: Once you have added the required tests, please run the following command to build this file: -// nf-core modules test nextdenovo -nextflow_process { - - name "Test Process NEXTDENOVO" - script "../main.nf" - process "NEXTDENOVO" - - tag "modules" - tag "modules_nfcore" - tag "nextdenovo" - - // TODO nf-core: Change the test name preferably indicating the test-data and file-format used - test("sarscov2 - bam") { - - // TODO nf-core: If you are created a test for a chained module - // (the module requires running more than one process to generate the required output) - // add the 'setup' method here. - // You can find more information about how to use a 'setup' method in the docs (https://nf-co.re/docs/contributing/modules#steps-for-creating-nf-test-for-chained-modules). - - when { - process { - """ - // TODO nf-core: define inputs of the process here. Example: - - input[0] = [ - [ id:'test', single_end:false ], // meta map - file(params.modules_testdata_base_path + 'genomics/sarscov2/illumina/bam/test.paired_end.sorted.bam', checkIfExists: true), - ] - """ - } - } - - then { - assertAll( - { assert process.success }, - { assert snapshot(process.out).match() } - //TODO nf-core: Add all required assertions to verify the test output. - // See https://nf-co.re/docs/contributing/tutorials/nf-test_assertions for more information and examples. - ) - } - +{ + "nextdenovo_ont": { + "content": [ + "798439cbd7fd81cbcc5078022dc5479d", + [ + "versions.yml:md5,ed7a2cfe2387b964c06b6c6847f46996" + ] + ], + "meta": { + "nf-test": "0.8.4", + "nextflow": "24.04.4" + }, + "timestamp": "2024-08-30T12:42:15.405989" } - - // TODO nf-core: Change the test name preferably indicating the test-data and file-format used but keep the " - stub" suffix. - test("sarscov2 - bam - stub") { - - options "-stub" - - when { - process { - """ - // TODO nf-core: define inputs of the process here. Example: - - input[0] = [ - [ id:'test', single_end:false ], // meta map - file(params.modules_testdata_base_path + 'genomics/sarscov2/illumina/bam/test.paired_end.sorted.bam', checkIfExists: true), - ] - """ - } - } - - then { - assertAll( - { assert process.success }, - { assert snapshot(process.out).match() } - //TODO nf-core: Add all required assertions to verify the test output. - ) - } - - } - -} + +} \ No newline at end of file From cbf83d2163eb11354e42a4f62b992c745d4df066 Mon Sep 17 00:00:00 2001 From: Rayane Elmedjadji Date: Fri, 16 May 2025 18:30:40 +0200 Subject: [PATCH 3/5] Add test for nextdenovo --- modules/nf-core/nextdenovo/environment.yml | 1 + modules/nf-core/nextdenovo/main.nf | 6 ++--- modules/nf-core/nextdenovo/tests/config.cfg | 25 +++++++++++++++++++ modules/nf-core/nextdenovo/tests/main.nf.test | 23 ++++++++--------- .../nextdenovo/tests/main.nf.test.snap | 12 ++++----- 5 files changed, 45 insertions(+), 22 deletions(-) create mode 100644 modules/nf-core/nextdenovo/tests/config.cfg diff --git a/modules/nf-core/nextdenovo/environment.yml b/modules/nf-core/nextdenovo/environment.yml index f25691d02b5..185d987bce9 100644 --- a/modules/nf-core/nextdenovo/environment.yml +++ b/modules/nf-core/nextdenovo/environment.yml @@ -4,3 +4,4 @@ channels: dependencies: - bioconda::nextdenovo=2.5.2 - conda-forge::paralleltask=0.1.1 + \ No newline at end of file diff --git a/modules/nf-core/nextdenovo/main.nf b/modules/nf-core/nextdenovo/main.nf index a14d1854ede..0d12a31693d 100644 --- a/modules/nf-core/nextdenovo/main.nf +++ b/modules/nf-core/nextdenovo/main.nf @@ -4,8 +4,8 @@ process NEXTDENOVO { conda "${moduleDir}/environment.yml" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://community-cr-prod.seqera.io/docker/registry/v2/blobs/sha256/fa/fa1c1e961de38d24cf36c424a8f4a9920ddd07b63fdb4cfa51c9e3a593c3c979/data' : - 'community.wave.seqera.io/library/flye:2.9.5--d577924c8416ccd8' }" + 'https://depot.galaxyproject.org/singularity/nextdenovo:2.5.2--py310h0ceaa1d_6' : + 'biocontainers/nextdenovo:2.5.2--py310h0ceaa1d_6' }" input: tuple val(meta), path(reads) @@ -23,8 +23,8 @@ process NEXTDENOVO { def args = task.ext.args ?: '' def prefix = task.ext.prefix ?: "${meta.id}" """ + pip install paralleltask echo ${reads} > input.fofn - cat input.fofn nextDenovo \\ $config \\ input.fofn \\ diff --git a/modules/nf-core/nextdenovo/tests/config.cfg b/modules/nf-core/nextdenovo/tests/config.cfg new file mode 100644 index 00000000000..48415b10919 --- /dev/null +++ b/modules/nf-core/nextdenovo/tests/config.cfg @@ -0,0 +1,25 @@ +[General] +job_type = local # local, slurm, sge, pbs, lsf +job_prefix = nextDenovo +task = all # all, correct, assemble +rewrite = yes # yes/no +deltmp = yes +parallel_jobs = 20 # number of tasks used to run in parallel +input_type = raw # raw, corrected +read_type = ont # clr, ont, hifi +input_fofn = input.fofn +workdir = . + +[correct_option] +read_cutoff = 500 +genome_size = 100k # estimated genome size + +minimap2_options_raw = -t 8 +pa_correction = 3 # number of corrected tasks used to run in parallel, each corrected task requires ~TOTAL_INPUT_BASES/4 bytes of memory usage. +correction_options = -p 15 + +[assemble_option] +minimap2_options_cns = -t 8 +nextgraph_options = -a 1 -z 1 -l 1 -q 0 -N 2 -u 2 -w 3 -B 50 -C 5 -L 1 -t 50 + +# see https://nextdenovo.readthedocs.io/en/latest/OPTION.html for a detailed introduction about all the parameters diff --git a/modules/nf-core/nextdenovo/tests/main.nf.test b/modules/nf-core/nextdenovo/tests/main.nf.test index 56b35e4c3b3..fc6c9204bbd 100644 --- a/modules/nf-core/nextdenovo/tests/main.nf.test +++ b/modules/nf-core/nextdenovo/tests/main.nf.test @@ -1,4 +1,3 @@ -// TODO nf-core: Once you have added the required tests, please run the following command to build this file: // nf-core modules test nextdenovo nextflow_process { @@ -10,24 +9,20 @@ nextflow_process { tag "modules_nfcore" tag "nextdenovo" - // TODO nf-core: Change the test name preferably indicating the test-data and file-format used + test("nextdenovo_ont") { - // TODO nf-core: If you are created a test for a chained module - // (the module requires running more than one process to generate the required output) - // add the 'setup' method here. - // You can find more information about how to use a 'setup' method in the docs (https://nf-co.re/docs/contributing/modules#steps-for-creating-nf-test-for-chained-modules). - + when { process { """ - // TODO nf-core: define inputs of the process here. Example: + input[0] = [ [ id:'test' ], // meta map - file(params.modules_testdata_base_path + '/genomics/sarscov2/nanopore/fastq/test.fastq.gz', checkIfExists: true), + file(params.modules_testdata_base_path + 'genomics/homo_sapiens/pacbio/fastq/test_hifi.fastq.gz', checkIfExists: true), ] - input[1] = file(params.modules_testdata_base_path + 'generic/txt/hello.txt') + input[1] = file("${moduleDir}/tests/config.cfg") """ } } @@ -35,9 +30,11 @@ nextflow_process { then { assertAll( { assert process.success }, - { assert snapshot(process.out).match() } - //TODO nf-core: Add all required assertions to verify the test output. - // See https://nf-co.re/docs/contributing/tutorials/nf-test_assertions for more information and examples. + { assert snapshot( + file(process.out.fasta.get(0).get(1)).name, + path(process.out.stat.get(0).get(1)).readLines()[1].contains("N50"), + process.out.versions + ).match() } ) } diff --git a/modules/nf-core/nextdenovo/tests/main.nf.test.snap b/modules/nf-core/nextdenovo/tests/main.nf.test.snap index 354267dfc4a..16b601aea6b 100644 --- a/modules/nf-core/nextdenovo/tests/main.nf.test.snap +++ b/modules/nf-core/nextdenovo/tests/main.nf.test.snap @@ -1,16 +1,16 @@ { "nextdenovo_ont": { "content": [ - "798439cbd7fd81cbcc5078022dc5479d", + "test.assembly.fasta.gz", + false, [ - "versions.yml:md5,ed7a2cfe2387b964c06b6c6847f46996" + "versions.yml:md5,7ec3ec49cbe9e0a06d3d0be767e4cc0c" ] ], "meta": { - "nf-test": "0.8.4", - "nextflow": "24.04.4" + "nf-test": "0.9.2", + "nextflow": "25.04.2" }, - "timestamp": "2024-08-30T12:42:15.405989" + "timestamp": "2025-05-16T18:13:58.045501794" } - } \ No newline at end of file From cc68e7a4a045a91c51fe49f2e61502acd166be88 Mon Sep 17 00:00:00 2001 From: Rayane Elmedjadji Date: Mon, 19 May 2025 15:55:52 +0200 Subject: [PATCH 4/5] Update environment file and tests --- modules/nf-core/nextdenovo/environment.yml | 6 +++++- modules/nf-core/nextdenovo/main.nf | 1 - 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/modules/nf-core/nextdenovo/environment.yml b/modules/nf-core/nextdenovo/environment.yml index 185d987bce9..3192ce89809 100644 --- a/modules/nf-core/nextdenovo/environment.yml +++ b/modules/nf-core/nextdenovo/environment.yml @@ -3,5 +3,9 @@ channels: - bioconda dependencies: - bioconda::nextdenovo=2.5.2 - - conda-forge::paralleltask=0.1.1 + - pip=23.3.1 + - pip: + - paralleltask==0.1.1 + - python=3.8 + \ No newline at end of file diff --git a/modules/nf-core/nextdenovo/main.nf b/modules/nf-core/nextdenovo/main.nf index 0d12a31693d..945b2ab8e2d 100644 --- a/modules/nf-core/nextdenovo/main.nf +++ b/modules/nf-core/nextdenovo/main.nf @@ -23,7 +23,6 @@ process NEXTDENOVO { def args = task.ext.args ?: '' def prefix = task.ext.prefix ?: "${meta.id}" """ - pip install paralleltask echo ${reads} > input.fofn nextDenovo \\ $config \\ From 490ab6894253a6c2a91044f4101b80374ac6825a Mon Sep 17 00:00:00 2001 From: Rayane Elmedjadji Date: Tue, 20 May 2025 11:10:09 +0200 Subject: [PATCH 5/5] Parallel job config with task.cpus --- modules/nf-core/nextdenovo/main.nf | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/modules/nf-core/nextdenovo/main.nf b/modules/nf-core/nextdenovo/main.nf index 945b2ab8e2d..fad29d16393 100644 --- a/modules/nf-core/nextdenovo/main.nf +++ b/modules/nf-core/nextdenovo/main.nf @@ -23,9 +23,11 @@ process NEXTDENOVO { def args = task.ext.args ?: '' def prefix = task.ext.prefix ?: "${meta.id}" """ + echo "parallel_jobs = ${task.cpus}" >> conf.cfg + cat $config >> conf.cfg echo ${reads} > input.fofn nextDenovo \\ - $config \\ + conf.cfg \\ input.fofn \\ gzip -c ./03.ctg_graph/nd.asm.fasta > ${prefix}.assembly.fasta.gz