Uses the MultiQC tool developed and maintained by Seqera: MultiQC/MultiQC
Docker images are available from here
This app downloads the quality metric files as specified by the location and filename extension in the "dx_sp" field in the config.yaml. Then runs the MultiQC tool to generate a run-wide quality report. Modules and columns to be displayed are specified in the config file, the full list of supported modules can be found here.
It is essential to use a config file that has a "dx_sp" section with "primary" for file extenstions in app/outputs of the primary workflow and "secondary" for file extenstions in app/outputs of the secondary workflow.
multiqc_docker
: Docker image of the MultiQC tool (can be found in 001_Reference:/assets/MultiQC)multiqc_config_file
: A config.yaml file specifying which modules to run and the search patterns to recognise QC files for each module- input data, which may come from different sources depending on the use-case
project_for_multiqc
- the name of the project to be used, eg 002_211008_A01303_0030_AHKTMYDRXY_TWEprimary_workflow_output
- the exact name of the output directory of the primary workflow, eg. dias_single_v1.2.3-TWE_v1.0.5-211011-1)- This folder must have subfolders for each app, like project:/output/primary_workflow/app_output)
Optional inputs:
calc_custom_coverage
: Boolean to indicate whether custom coverage needs to be computed and added to the multiqc report.depths
: Depths to compute coverage for.samplesheet
: samplesheet for the run, used to parse sample well info into tsv files for adding into the report. This will create 2 files within the app which may be added to the config file to display in the report:samplesheet_wells.tsv
- tsv file containing samplename, well columns and well rows, to be added to general stats table
samplesheet_well_samplename_patterns.tsv
- tsv file containing samplenames "|" joined from each well row and column, to be used for adding as regex patterns into the report for highlighting
The following outputs are placed in the DNAnexus project in the specified output folder:
- a HTML QC report (with the name of the runfolder-workflow)
- a folder containing the qc metrics data in text format. (The folder is named after project-workflow-multiqc_data)
- original config_file.yaml that was used to generate the report
- The app downloads files within the $project_for_multiQC:/output/$primary_workflow_output/QCapp directories of the project, where 'QCapp' and filename extensions are specified in the config file.
- The app runs the dockerised MultiQC tool with the config file provided.
- MultiQC parses all recognised files and displays them in the html report.
- The MultiQC outputs are uploaded to DNAnexus.
dx run multiqc-applet_ID \
-imultiqc_docker='{}' \
-imultiqc_config_file='{}' \
-iproject_for_multiqc='{}' \
-iprimary_workflow_output='{}' \
--destination='{}'