Skip to content

Commit

Permalink
Merge pull request #38 from moka-guys/v1.13.0
Browse files Browse the repository at this point in the history
V1.13.0
  • Loading branch information
Aled Jones authored Apr 22, 2021
2 parents afebc72 + 70b053b commit 7848501
Show file tree
Hide file tree
Showing 5 changed files with 37 additions and 111 deletions.
9 changes: 3 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
# dnanexus_multiqc v 1.12
ewels/MultiQC [v1.6](https://github.com/ewels/MultiQC/)
# dnanexus_multiqc v 1.13.0
ewels/MultiQC [v1.10.1](https://github.com/ewels/MultiQC/)

## What does this app do?
This app runs MultiQC to generate run wide quality control (QC) using the outputs from MokaAMP, MokaPipe and MokaWES pipelines including:
Expand Down Expand Up @@ -32,10 +32,7 @@ The following outputs are placed in the DNAnexus project under '/QC/multiqc':
2. The dx_find_and_download function is used to search for specific files, which are downloaded only if found.
3. If sention duplication_metrics files are present the app replaces the header (with a template packaged in the app) so the file is recognised as a picard markduplicates file.
4. The app sets the minimum-fold coverage reported in the general stats table by editing 'dnanexus_multiqc_config.yaml'. This value comes from the app's 'coverage_level' input parameter.
5. A dockerised version of MultiQC is used. The docker image is stored on DNAnexus as an asset, which is bundled with the app build. The following commands were used to generate this asset in a cloud workstation:
* `docker pull ewels/multiqc:v1.6`
* `dx-docker create-asset ewels/multiqc:v1.6`
* The asset on DNAnexus was then renamed with the following command: `dx mv ewels\\multiqc\\:v1.6 ewels_multiqc_v1.6`
5. A dockerised version of MultiQC is used. The docker image is pulled each time the app is run.
6. MultiQC parses all files, including any recognised files in the report.
7. The MultiQC outputs are uploaded to DNAnexus.

Expand Down
41 changes: 19 additions & 22 deletions dxapp.json
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
{
"name": "multiqc_v1.12",
"title": "MultiQC_v1.12",
"summary": "v1.12 - Generates a run-wide QC report on various QC data files",
"name": "multiqc_v1.13.0",
"title": "MultiQC_v1.13.0",
"summary": "v1.13.0 - Generates a run-wide QC report on various QC data files",
"tags": [
"Read QC",
"Statistics"
],
"properties": {
"github release": "v1.12"
"github release": "v1.13.0"
},
"dxapi": "1.0.0",
"inputSpec": [
Expand All @@ -22,7 +22,15 @@
"label": "coverage level",
"help": "Set the (picard) coverage level reported in the card general stats table. E.g. '20' for % target bases with coverage >= 20X",
"class": "string",
"choices": ["2", "10", "20", "30", "40", "50", "100"]
"choices": [
"2",
"10",
"20",
"30",
"40",
"50",
"100"
]
}
],
"outputSpec": [
Expand All @@ -40,29 +48,18 @@
}
],
"runSpec": {
"execDepends": [
{
"name": "Jinja2",
"package_manager": "pip",
"version": "2.10"
}
],
"distribution" : "Ubuntu",
"release":"14.04",
"file": "src/code.sh",
"interpreter": "bash",
"assetDepends": [
{
"id": "record-FPX7Yx00jy1bx5vX526pfbx2"
}
]
"distribution": "Ubuntu",
"release": "16.04",
"file": "src/code.sh"
},
"access": {
"allProjects":"VIEW",
"network": [
"*"
]
],
"allProjects": "VIEW"
},
"ignoreReuse": false,
"regionalOptions": {
"aws:us-east-1": {
"systemRequirements": {
Expand Down
79 changes: 0 additions & 79 deletions resources/home/dnanexus/convert_mapping_metrics.py

This file was deleted.

10 changes: 10 additions & 0 deletions resources/home/dnanexus/dnanexus_multiqc_config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -168,3 +168,13 @@ remove_sections:
- peddy-pca-plot
- peddy-relatedness-plot
- peddy-hetcheck-plot

#Modules to exclude
exclude_modules:
#module breaks in newer MultiQC versions
- gatk

#Files to ignore
fn_ignore_files:
- "ValidateSamFile.py"
- "rmdup.py"
9 changes: 5 additions & 4 deletions src/code.sh
Original file line number Diff line number Diff line change
Expand Up @@ -107,10 +107,11 @@ main() {
# multiqc <dir containing files> -n <path/to/output> -c </path/to/config>
# The docker -v flag mounts a local directory to the docker environment in the format:
# -v local_dir:docker_dir
# Here, the directory 'sandbox' is mapped to the /home/dnanexus directory, and passed to
# multiqc to search for QC files. Docker passes any new files back to this mapped location on the DNAnexus worker.
dx-docker run -v /home/dnanexus:/sandbox ewels/multiqc:v1.6 multiqc sandbox/ \
-n sandbox/${outdir}/${project}-multiqc.html -c sandbox/dnanexus_multiqc_config.yaml
# Pull docker image from Dockerhub
# Multiqc searches for QC files. Docker passes any new files back to this mapped location on the DNAnexus worker.
docker pull ewels/multiqc:1.10.1
docker run -v /home/dnanexus:/home/dnanexus ewels/multiqc:1.10.1 multiqc /home/dnanexus/ \
-n /home/dnanexus/${outdir}/${project}-multiqc.html -c /home/dnanexus/dnanexus_multiqc_config.yaml

# Move the config file to the multiqc data output folder. This was created by running multiqc
mv dnanexus_multiqc_config.yaml ${outdir}/${project}-multiqc_data/
Expand Down

0 comments on commit 7848501

Please sign in to comment.