diff --git a/assets/multiqc_config.yml b/assets/multiqc_config.yml index 5b6dfbc..ed09b3b 100644 --- a/assets/multiqc_config.yml +++ b/assets/multiqc_config.yml @@ -13,3 +13,50 @@ report_section_order: export_plots: true disable_version_detection: true + +custom_content: + order: + - sample_registration + - submission_results + +# Custom data configuration +custom_data: + + sample_registration: + id: 'sample_registration' + section_name: 'genpmes_samples' + description: 'Sample assigned during registration process' + file_format: 'tsv' + plot_type: 'table' + pconfig: + id: 'sample_registration' + title: 'Sample registration assigned accessions' + col1_header: 'ID' + col2_header: 'ENA sample accession' + headers: + alias: + title: 'Uploaded fasta' + description: 'FASTA file for upload' + accession: + title: 'ENA sample accession' + description: 'Assigned sample accession after registration' + + submission_results: + id: 'submission_results' + section_name: 'Submission results' + description: 'Accessions assigned during upload process' + file_format: 'tsv' + plot_type: 'table' + pconfig: + id: 'custom_metrics_table' + title: 'Submission results' + col1_header: 'ID' + col2_header: 'ENA accession' + headers: + alias: + title: 'Uploaded fasta' + description: 'FASTA file for upload' + accession: + title: 'ENA accession' + description: 'Assigned accession after submission' + diff --git a/modules/local/ena_webin_cli_wrapper/main.nf b/modules/local/ena_webin_cli_wrapper/main.nf index 7918ce1..be053b1 100644 --- a/modules/local/ena_webin_cli_wrapper/main.nf +++ b/modules/local/ena_webin_cli_wrapper/main.nf @@ -5,7 +5,7 @@ process ENA_WEBIN_CLI_WRAPPER { label 'process_low' tag "${meta.id}" - container "quay.io/microbiome-informatics/java_mgnify-pipelines-toolkit:1.4.21" + container "community.wave.seqera.io/library/ena-webin-cli_mgnify-pipelines-toolkit:0fd318932c5ba88e" stageInMode 'copy' input: @@ -14,6 +14,7 @@ process ENA_WEBIN_CLI_WRAPPER { output: tuple val(meta), path("*_accessions.tsv"), emit: accessions + path("*_accessions_mqc.tsv"), emit: accessions_multiqc path "versions.yml", emit: versions script: @@ -35,6 +36,8 @@ process ENA_WEBIN_CLI_WRAPPER { ${test_flag} \\ ${args} + cp ${prefix}_accessions.tsv ${prefix}_accessions_mqc.tsv + cat <<-END_VERSIONS > versions.yml "${task.process}": python: \$(python --version 2>&1 | sed 's/Python //g') diff --git a/subworkflows/local/utils_nfcore_seqsubmit_pipeline/main.nf b/subworkflows/local/utils_nfcore_seqsubmit_pipeline/main.nf index 8a19c8a..ae85a5b 100644 --- a/subworkflows/local/utils_nfcore_seqsubmit_pipeline/main.nf +++ b/subworkflows/local/utils_nfcore_seqsubmit_pipeline/main.nf @@ -183,23 +183,65 @@ def validateInputSamplesheet(input) { // Generate methods description for MultiQC // def toolCitationText() { - // TODO nf-core: Optionally add in-text citation tools to this list. // Can use ternary operators to dynamically construct based conditions, e.g. params["run_xyz"] ? "Tool (Foo et al. 2023)" : "", // Uncomment function in methodsDescriptionText to render in MultiQC report + // fastafalidator + + def mgnify_tools = [ + "assembly_uploader (Richardson et al. 2023)", + "genome_uploader (Gurbich et al. 2023)" + ].join(' ').trim() + + def ena_tools = [ + "webin-cli (European Nucleotide Archive)" + ].join(' ').trim() + + def preprocessing_tools = [ + "py_fasta_validator (Edwards et al. 2023)" + ].join(' ').trim() + + def stats_tools = [ + "CheckM2 (Chklovski et al. 2023)", + "CoverM (Aroney et el. 2025)" + ].join(' ').trim() + + def taxonomy_tools = [ + "CAT_pack (Von Meijenfeldt et al. 2019)" + ].join(' ').trim() + + def rna_tools = [ + "barrnap (Author: Torsten Seemann)", + "tRNAscan-SE (Chan et al. 2021)" + ].join(' ').trim() + + def postprocessing_text = "MultiQC (Ewels et al. 2016)" + def citation_text = [ - "Tools used in the workflow included:", - "MultiQC (Ewels et al. 2016)", - "." + mgnify_tools, + ena_tools, + preprocessing_tools, + stats_tools, + taxonomy_tools, + rna_tools, + postprocessing_text ].join(' ').trim() return citation_text } def toolBibliographyText() { - // TODO nf-core: Optionally add bibliographic entries to this list. // Can use ternary operators to dynamically construct based conditions, e.g. params["run_xyz"] ? "