Skip to content
This repository has been archived by the owner on Jan 27, 2020. It is now read-only.

Only one container for all QC tools #571

Merged
merged 5 commits into from
Apr 23, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 4 additions & 7 deletions buildContainers.nf
Original file line number Diff line number Diff line change
Expand Up @@ -178,21 +178,18 @@ def grabRevision() {
def defineContainersList(){
// Return list of authorized containers
return [
'fastqc',
'freebayes',
'gatk',
'igvtools',
'multiqc',
'mutect1',
'picard',
'qualimap',
'qctools',
'r-base',
'runallelecount',
'sarek',
'snpeff',
'snpeffgrch37',
'snpeffgrch38',
'vcftools',
'vepgrch37',
'vepgrch38'
]
Expand All @@ -211,9 +208,9 @@ def helpMessage() {
log.info " --containers: Choose which containers to build"
log.info " Default: all"
log.info " Possible values:"
log.info " all, fastqc, freebayes, gatk, igvtools, multiqc, mutect1"
log.info " picard, qualimap, r-base, runallelecount, sarek, snpeff"
log.info " snpeffgrch37, snpeffgrch38, vcftools, vepgrch37, vepgrch38"
log.info " all, freebayes, gatk, igvtools, mutect1, picard, qctools"
log.info " r-base, runallelecount, sarek, snpeff"
log.info " snpeffgrch37, snpeffgrch38, vepgrch37, vepgrch38"
log.info " --docker: Build containers using Docker"
log.info " --help"
log.info " you're reading it"
Expand Down
8 changes: 4 additions & 4 deletions configuration/containers.config
Original file line number Diff line number Diff line change
Expand Up @@ -22,15 +22,15 @@ process {
$RecalibrateBam.container = "${params.repository}/gatk:${params.tag}"
$RunAlleleCount.container = "${params.repository}/runallelecount:${params.tag}"
$RunAscat.container = "${params.repository}/r-base:${params.tag}"
$RunBamQC.container = "${params.repository}/qualimap:${params.tag}"
$RunBamQC.container = "${params.repository}/qctools:${params.tag}"
$RunBcftoolsStats.container = "${params.repository}/sarek:${params.tag}"
$RunConvertAlleleCounts.container = "${params.repository}/r-base:${params.tag}"
$RunFastQC.container = "${params.repository}/fastqc:${params.tag}"
$RunFastQC.container = "${params.repository}/qctools:${params.tag}"
$RunFreeBayes.container = "${params.repository}/freebayes:${params.tag}"
$RunGenotypeGVCFs.container = "${params.repository}/gatk:${params.tag}"
$RunHaplotypecaller.container = "${params.repository}/gatk:${params.tag}"
$RunManta.container = "${params.repository}/sarek:${params.tag}"
$RunMultiQC.container = "${params.repository}/multiqc:${params.tag}"
$RunMultiQC.container = "${params.repository}/qctools:${params.tag}"
$RunMutect1.container = "${params.repository}/mutect1:${params.tag}"
$RunMutect2.container = "${params.repository}/gatk:${params.tag}"
$RunSamtoolsStats.container = "${params.repository}/sarek:${params.tag}"
Expand All @@ -39,6 +39,6 @@ process {
$RunSnpeff.container = {params.genome == 'GRCh38' ? "${params.repository}/snpeffgrch38:${params.tag}" : "${params.repository}/snpeffgrch37:${params.tag}"}
$RunStrelka.container = "${params.repository}/sarek:${params.tag}"
$RunStrelkaBP.container = "${params.repository}/sarek:${params.tag}"
$RunVcftools.container = "${params.repository}/vcftools:${params.tag}"
$RunVcftools.container = "${params.repository}/qctools:${params.tag}"
$RunVEP.container = {params.genome == 'GRCh38' ? "${params.repository}/vepgrch38:${params.tag}" : "${params.repository}/vepgrch37:${params.tag}"}
}
10 changes: 5 additions & 5 deletions configuration/singularity-path.config
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ process {
$BuildVCFIndex.container = "${params.containerPath}/igvtools-${params.tag}.img"
$ConcatVCF.container = "${params.containerPath}/sarek-${params.tag}.img"
$CreateRecalibrationTable.container = "${params.containerPath}/gatk-${params.tag}.img"
$GenerateMultiQCconfig.container = "${params.containerPath}/multiqc-${params.tag}.img"
$GenerateMultiQCconfig.container = "${params.containerPath}/qctools-${params.tag}.img"
$IndelRealigner.container = "${params.containerPath}/gatk-${params.tag}.img"
$MapReads.container = "${params.containerPath}/sarek-${params.tag}.img"
$MarkDuplicates.container = "${params.containerPath}/picard-${params.tag}.img"
Expand All @@ -28,15 +28,15 @@ process {
$RecalibrateBam.container = "${params.containerPath}/gatk-${params.tag}.img"
$RunAlleleCount.container = "${params.containerPath}/runallelecount-${params.tag}.img"
$RunAscat.container = "${params.containerPath}/r-base-${params.tag}.img"
$RunBamQC.container = "${params.containerPath}/qualimap-${params.tag}.img"
$RunBamQC.container = "${params.containerPath}/qctools-${params.tag}.img"
$RunBcftoolsStats.container = "${params.containerPath}/sarek-${params.tag}.img"
$RunConvertAlleleCounts.container = "${params.containerPath}/r-base-${params.tag}.img"
$RunFastQC.container = "${params.containerPath}/fastqc-${params.tag}.img"
$RunFastQC.container = "${params.containerPath}/qctools-${params.tag}.img"
$RunFreeBayes.container = "${params.containerPath}/freebayes-${params.tag}.img"
$RunGenotypeGVCFs.container = "${params.containerPath}/gatk-${params.tag}.img"
$RunHaplotypecaller.container = "${params.containerPath}/gatk-${params.tag}.img"
$RunManta.container = "${params.containerPath}/sarek-${params.tag}.img"
$RunMultiQC.container = "${params.containerPath}/multiqc-${params.tag}.img"
$RunMultiQC.container = "${params.containerPath}/qctools-${params.tag}.img"
$RunMutect1.container = "${params.containerPath}/mutect1-${params.tag}.img"
$RunMutect2.container = "${params.containerPath}/gatk-${params.tag}.img"
$RunSamtoolsStats.container = "${params.containerPath}/sarek-${params.tag}.img"
Expand All @@ -45,6 +45,6 @@ process {
$RunSnpeff.container = {params.genome == 'GRCh38' ? "${params.containerPath}/snpeffgrch38-${params.tag}.img" : "${params.containerPath}/snpeffgrch37-${params.tag}.img"}
$RunStrelka.container = "${params.containerPath}/sarek-${params.tag}.img"
$RunStrelkaBP.container = "${params.containerPath}/sarek-${params.tag}.img"
$RunVcftools.container = "${params.containerPath}/vcftools-${params.tag}.img"
$RunVcftools.container = "${params.containerPath}/qctools-${params.tag}.img"
$RunVEP.container = {params.genome == 'GRCh38' ? "${params.containerPath}/vepgrch38-${params.tag}.img" : "${params.containerPath}/vepgrch37-${params.tag}.img"}
}
24 changes: 0 additions & 24 deletions containers/fastqc/Dockerfile

This file was deleted.

6 changes: 0 additions & 6 deletions containers/multiqc/Dockerfile

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ FROM nfcore/base:latest

LABEL \
author="Maxime Garcia" \
description="vcftools image used in Sarek 2.0" \
description="Image with QC tools used in Sarek" \
maintainer="[email protected]"

COPY environment.yml /
Expand All @@ -12,4 +12,4 @@ RUN \
conda clean -a

# Export PATH
ENV PATH /opt/conda/envs/sarek-vcftools-2.0/bin:$PATH
ENV PATH /opt/conda/envs/sarek-qctools-2.0/bin:$PATH
Original file line number Diff line number Diff line change
@@ -1,9 +1,13 @@
# You can use this file to create a conda environment:
# conda env create -f environment.yml
name: sarek-vcftools-2.0
name: sarek-qctools-2.0
channels:
- defaults
- conda-forge
- bioconda
- conda-forge
- defaults
dependencies:
- vcftools=0.1.15
- conda-forge::openjdk=8.0.144
- fastqc=0.11.7
- multiqc=1.5
- qualimap=2.2.2a
- vcftools=0.1.15
25 changes: 0 additions & 25 deletions containers/qualimap/Dockerfile

This file was deleted.

35 changes: 7 additions & 28 deletions doc/CONTAINERS.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,26 +3,18 @@
Subsets of all containers can be dowloaded:

For processing + germline variant calling + Reports:
- [fastqc](#fastqc-)
- [gatk](#gatk-)
- [multiqc](#multiqc-)
- [picard](#picard-)
- [qualimap](#qualimap-)
- [sarek](#sarek-)
- [vcftools](#vcftools-)

For processing + somatic variant calling + Reports:
- [fastqc](#fastqc-)
- [freebayes](#freebayes-)
- [gatk](#gatk-)
- [multiqc](#multiqc-)
- [mutect1](#mutect1-)
- [picard](#picard-)
- [qualimap](#qualimap-)
- [r-base](#r-base-)
- [runallelecount](#runallelecount-)
- [sarek](#sarek-)
- [vcftools](#vcftools-)

For annotation for GRCh37, you will need:
- [snpeffgrch37](#snpeffgrch37-)
Expand All @@ -34,11 +26,6 @@ For annotation for GRCh38, you will need:

A container named after the process is made for each process. If a container can be reused, it will be named after the tool used.

## fastqc [![fastqc-docker status][fastqc-docker-badge]][fastqc-docker-link]

- Based on `openjdk:8`
- Contain **[FastQC][fastqc-link]** 0.11.5

## freebayes [![freebayes-docker status][freebayes-docker-badge]][freebayes-docker-link]

- Based on `debian:8.6`
Expand All @@ -54,11 +41,6 @@ A container named after the process is made for each process. If a container can
- Based on `openjdk:8-slim`
- Contain **[IGVTools][igvtools-link]** 2.3.98

## multiqc [![multiqc-docker status][multiqc-docker-badge]][multiqc-docker-link]

- Based on `ewels/multiqc:v1.4`
- Contain **[MultiQC][multiqc-link]** 143

## mutect1 [![mutect1-docker status][mutect1-docker-badge]][mutect1-docker-link]

- Based on `openjdk:7-slim`
Expand All @@ -69,10 +51,13 @@ A container named after the process is made for each process. If a container can
- Based on `openjdk:8-slim`
- Contain **[Picard][picard-link]** 2.0.1

## qualimap [![qualimap-docker status][qualimap-docker-badge]][qualimap-docker-link]
## qctools [![qctools-docker status][qctools-docker-badge]][qctools-docker-link]

- Based on `openjdk:8`
- Based on `nfcore/base:latest`
- Contain **[FastQC][fastqc-link]** 0.11.7
- Contain **[MultiQC][multiqc-link]** 1.5
- Contain **[qualimap][qualimap-link]** 2.2.1
- Contain **[vcftools][vcftools-link]** 0.1.15

## runallelecount [![runallelecount-docker status][runallelecount-docker-badge]][runallelecount-docker-link]

Expand Down Expand Up @@ -106,12 +91,6 @@ A container named after the process is made for each process. If a container can
- Contain **[snpEff][snpeff-link]** 4.3i
- Contain GRCh38.86

## vcftools [![vcftools-docker status][vcftools-docker-badge]][vcftools-docker-link]

- Based on `nfcore/base:latest`
- Contain **[vcftools][vcftools-link]** 0.1.15


## vepgrch37 [![vepgrch37-docker status][vepgrch37-docker-badge]][vepgrch37-docker-link]

- Based on `willmclaren/ensembl-vep:release_90.6`
Expand Down Expand Up @@ -157,8 +136,8 @@ A container named after the process is made for each process. If a container can
[picard-docker-badge]: https://img.shields.io/docker/automated/maxulysse/picard.svg
[picard-docker-link]: https://hub.docker.com/r/maxulysse/picard
[picard-link]: https://github.com/broadinstitute/picard
[qualimap-docker-badge]: https://img.shields.io/docker/automated/maxulysse/qualimap.svg
[qualimap-docker-link]: https://hub.docker.com/r/maxulysse/qualimap
[qctools-docker-badge]: https://img.shields.io/docker/automated/maxulysse/qctools.svg
[qctools-docker-link]: https://hub.docker.com/r/maxulysse/qctools
[qualimap-link]: http://qualimap.bioinfo.cipf.es
[rcolorbrewer-link]: https://CRAN.R-project.org/package=RColorBrewer
[runallelecount-docker-badge]: https://img.shields.io/docker/automated/maxulysse/runallelecount.svg
Expand Down
4 changes: 2 additions & 2 deletions scripts/do_all.sh
Original file line number Diff line number Diff line change
Expand Up @@ -57,8 +57,8 @@ function toLower() {

if [[ $TOOL = docker ]] && [[ GRCh37,GRCh38 =~ $GENOME ]]
then
nextflow run buildContainers.nf -profile ${PROFILE} --verbose --docker ${PUSH} --repository ${REPOSITORY} --tag ${TAG} --containers fastqc,freebayes,gatk,igvtools,multiqc,mutect1,picard,qualimap,r-base,runallelecount,sarek,snpeff,vcftools
nextflow run buildContainers.nf -profile ${PROFILE} --verbose --docker ${PUSH} --repository ${REPOSITORY} --tag ${TAG} --containers freebayes,gatk,igvtools,mutect1,picard,qctools,r-base,runallelecount,sarek,snpeff
nextflow run buildContainers.nf -profile ${PROFILE} --verbose --docker ${PUSH} --repository ${REPOSITORY} --tag ${TAG} --containers snpeff$(toLower ${GENOME}),vep$(toLower ${GENOME})
else
nextflow run buildContainers.nf -profile ${PROFILE} --verbose --singularity --repository ${REPOSITORY} --tag ${TAG} --containerPath containers/ --containers fastqc,freebayes,gatk,igvtools,multiqc,mutect1,picard,qualimap,r-base,runallelecount,sarek,snpeff$(toLower ${GENOME}),vcftools,vep$(toLower ${GENOME})
nextflow run buildContainers.nf -profile ${PROFILE} --verbose --singularity --repository ${REPOSITORY} --tag ${TAG} --containerPath containers/ --containers freebayes,gatk,igvtools,mutect1,picard,qctools,r-base,runallelecount,sarek,snpeff$(toLower ${GENOME}),vep$(toLower ${GENOME})
fi
2 changes: 1 addition & 1 deletion scripts/test.sh
Original file line number Diff line number Diff line change
Expand Up @@ -138,6 +138,6 @@ fi

if [[ ALL,BUILDCONTAINERS =~ $TEST ]] && [[ $PROFILE == docker ]]
then
nf_test buildContainers.nf --docker --containers fastqc,gatk,igvtools,multiqc,mutect1,picard,qualimap,runallelecount,r-base,snpeff,sarek
nf_test buildContainers.nf --docker --containers gatk,igvtools,mutect1,picard,qctools,runallelecount,r-base,snpeff,sarek
clean_repo
fi