diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3bc0dda..106de1b 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -98,5 +98,7 @@ jobs: echo 'motus,db_mOTU,,db_mOTU' >> 'database_motus.csv' - name: Run pipeline with test data - run: | - nextflow run ${GITHUB_WORKSPACE} -profile test_motus,docker --outdir ./results --databases ./database_motus.csv + uses: Wandalen/wretry.action@v1.0.11 + with: + command: nextflow run ${GITHUB_WORKSPACE} -profile test_motus,docker --outdir ./results --databases ./database_motus.csv + attempt_limit: 3 diff --git a/conf/modules.config b/conf/modules.config index 43f7ebb..d4a2693 100644 --- a/conf/modules.config +++ b/conf/modules.config @@ -274,7 +274,7 @@ process { ] } - withName: 'NFCORE_TAXPROFILER:TAXPROFILER:PROFILING:MEGAN_RMA2INFO' { + withName: 'MEGAN_RMA2INFO_TSV' { ext.args = "-c2c Taxonomy" ext.prefix = { "${meta.id}" } publishDir = [ @@ -312,7 +312,7 @@ process { ] } - withName: 'NFCORE_TAXPROFILER:TAXPROFILER:VISUALIZATION_KRONA:MEGAN_RMA2INFO' { + withName: 'MEGAN_RMA2INFO_KRONA' { ext.args = { "--read2class Taxonomy" } ext.prefix = { "${meta.id}-${meta.db_name}" } } diff --git a/conf/test.config b/conf/test.config index dac0e81..a39a107 100644 --- a/conf/test.config +++ b/conf/test.config @@ -51,7 +51,10 @@ process { withName: MALT_RUN { maxForks = 1 } - withName: MEGAN_RMA2INFO { + withName: MEGAN_RMA2INFO_TSV { + maxForks = 1 + } + withName: MEGAN_RMA2INFO_KRONA { maxForks = 1 } } diff --git a/subworkflows/local/profiling.nf b/subworkflows/local/profiling.nf index 61aa394..17c96f1 100644 --- a/subworkflows/local/profiling.nf +++ b/subworkflows/local/profiling.nf @@ -2,16 +2,16 @@ // Run profiling // -include { MALT_RUN } from '../../modules/nf-core/modules/malt/run/main' -include { MEGAN_RMA2INFO } from '../../modules/nf-core/modules/megan/rma2info/main' -include { KRAKEN2_KRAKEN2 } from '../../modules/nf-core/modules/kraken2/kraken2/main' -include { CENTRIFUGE_CENTRIFUGE } from '../../modules/nf-core/modules/centrifuge/centrifuge/main' -include { CENTRIFUGE_KREPORT } from '../../modules/nf-core/modules/centrifuge/kreport/main' -include { METAPHLAN3 } from '../../modules/nf-core/modules/metaphlan3/main' -include { KAIJU_KAIJU } from '../../modules/nf-core/modules/kaiju/kaiju/main' -include { KAIJU_KAIJU2TABLE } from '../../modules/nf-core/modules/kaiju/kaiju2table/main' -include { DIAMOND_BLASTX } from '../../modules/nf-core/modules/diamond/blastx/main' -include { MOTUS_PROFILE } from '../../modules/nf-core/modules/motus/profile/main' +include { MALT_RUN } from '../../modules/nf-core/modules/malt/run/main' +include { MEGAN_RMA2INFO as MEGAN_RMA2INFO_TSV } from '../../modules/nf-core/modules/megan/rma2info/main' +include { KRAKEN2_KRAKEN2 } from '../../modules/nf-core/modules/kraken2/kraken2/main' +include { CENTRIFUGE_CENTRIFUGE } from '../../modules/nf-core/modules/centrifuge/centrifuge/main' +include { CENTRIFUGE_KREPORT } from '../../modules/nf-core/modules/centrifuge/kreport/main' +include { METAPHLAN3 } from '../../modules/nf-core/modules/metaphlan3/main' +include { KAIJU_KAIJU } from '../../modules/nf-core/modules/kaiju/kaiju/main' +include { KAIJU_KAIJU2TABLE } from '../../modules/nf-core/modules/kaiju/kaiju2table/main' +include { DIAMOND_BLASTX } from '../../modules/nf-core/modules/diamond/blastx/main' +include { MOTUS_PROFILE } from '../../modules/nf-core/modules/motus/profile/main' workflow PROFILING { take: @@ -109,11 +109,11 @@ workflow PROFILING { [ meta_new, rma ] } - MEGAN_RMA2INFO (ch_maltrun_for_megan, params.malt_generate_megansummary ) + MEGAN_RMA2INFO_TSV (ch_maltrun_for_megan, params.malt_generate_megansummary ) ch_multiqc_files = ch_multiqc_files.mix( MALT_RUN.out.log ) - ch_versions = ch_versions.mix( MALT_RUN.out.versions.first(), MEGAN_RMA2INFO.out.versions.first() ) + ch_versions = ch_versions.mix( MALT_RUN.out.versions.first(), MEGAN_RMA2INFO_TSV.out.versions.first() ) ch_raw_classifications = ch_raw_classifications.mix( ch_maltrun_for_megan ) - ch_raw_profiles = ch_raw_profiles.mix( MEGAN_RMA2INFO.out.txt ) + ch_raw_profiles = ch_raw_profiles.mix( MEGAN_RMA2INFO_TSV.out.txt ) } diff --git a/subworkflows/local/visualization_krona.nf b/subworkflows/local/visualization_krona.nf index 397251f..f06768a 100644 --- a/subworkflows/local/visualization_krona.nf +++ b/subworkflows/local/visualization_krona.nf @@ -2,7 +2,7 @@ // Create Krona visualizations // -include { MEGAN_RMA2INFO } from '../../modules/nf-core/modules/megan/rma2info/main' +include { MEGAN_RMA2INFO as MEGAN_RMA2INFO_KRONA } from '../../modules/nf-core/modules/megan/rma2info/main' include { KAIJU_KAIJU2KRONA } from '../../modules/nf-core/modules/kaiju/kaiju2krona/main' include { KRAKENTOOLS_KREPORT2KRONA } from '../../modules/nf-core/modules/krakentools/kreport2krona/main' include { KRONA_CLEANUP } from '../../modules/local/krona_cleanup' @@ -87,15 +87,15 @@ workflow VISUALIZATION_KRONA { Convert MALT/MEGAN RMA2INFO files into html Krona visualisations */ if ( params.krona_taxonomy_directory ) { - MEGAN_RMA2INFO ( ch_input_classifications.malt, false ) - GUNZIP ( MEGAN_RMA2INFO.out.txt ) + MEGAN_RMA2INFO_KRONA ( ch_input_classifications.malt, false ) + GUNZIP ( MEGAN_RMA2INFO_KRONA.out.txt ) ch_krona_taxonomy_for_input = GUNZIP.out.gunzip .map{[[id: it[0]['db_name'], tool: it[0]['tool']], it[1]]} .groupTuple() KRONA_KTIMPORTTAXONOMY ( ch_krona_taxonomy_for_input, file(params.krona_taxonomy_directory, checkExists: true) ) ch_krona_html.mix( KRONA_KTIMPORTTAXONOMY.out.html ) - ch_versions = ch_versions.mix( MEGAN_RMA2INFO.out.versions.first() ) + ch_versions = ch_versions.mix( MEGAN_RMA2INFO_KRONA.out.versions.first() ) ch_versions = ch_versions.mix( KRONA_KTIMPORTTAXONOMY.out.versions.first() ) }