Skip to content

Commit

Permalink
1.5.0
Browse files Browse the repository at this point in the history
  • Loading branch information
tdayris committed Jun 13, 2024
1 parent 294970c commit 0c7abd3
Show file tree
Hide file tree
Showing 16 changed files with 330 additions and 206 deletions.
3 changes: 3 additions & 0 deletions .test/config/config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,6 @@ samples: config/samples.csv

# Optional path to a `genome.csv` file
genomes: config/genomes.csv

params:
fair_gatk_mutect2_gatk_mutect2_call: "--normal sac_a --enable-all-annotations --max-reads-per-alignment-start 0 --initial-tumor-lod 1.0 --normal-lod 1.0 --tumor-lod-to-emit 1.0 --flow-filter-alleles-qual-threshold 6.0 --flow-filter-alleles-sor-threshold 1.0 --pruning-lod-threshold 0.0009"
6 changes: 3 additions & 3 deletions .test/config/samples.csv
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
sample_id,upstream_file,downstream_file,species,build,release
sac_a,data/reads/a.scerevisiae.1.fq,data/reads/a.scerevisiae.2.fq,saccharomyces_cerevisiae,R64-1-1,105
sac_b,data/reads/b.scerevisiae.1.fq,,saccharomyces_cerevisiae,R64-1-1,105
sample_id,upstream_file,downstream_file,species,build,release,normal_sample_id
sac_a,data/reads/a.scerevisiae.1.fq,data/reads/a.scerevisiae.2.fq,saccharomyces_cerevisiae,R64-1-1,105,
sac_b,data/reads/b.scerevisiae.1.fq,data/reads/b.scerevisiae.2.fq,saccharomyces_cerevisiae,R64-1-1,105,sac_a
8 changes: 1 addition & 7 deletions .test/makefile
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ snakefiles := \

# List of python files to lint
python_scripts := \
"../workflow/scripts/fair_gatk_mutect_germline_multiqc_config.py"
"../workflow/scripts/fair_gatk_mutect2_multiqc_config.py"



Expand All @@ -32,39 +32,33 @@ all: report.txt


dag.png: format.txt linter.txt
mamba activate test-snakemake-wrappers && \
snakemake -s ../workflow/Snakefile \
--rulegraph --forceall | dot -Tpng > dag.png && \
cp --verbose dag.png ../dag.png


report.txt: pipeline.txt
mamba activate test-snakemake-wrappers && \
snakemake -s ../workflow/Snakefile --profile local \
--report report.zip 2>&1 | tee report.txt


pipeline.txt: linter.txt
mamba activate test-snakemake-wrappers && \
snakemake -s ../workflow/Snakefile \
--cores 7 \
--software-deployment-method conda \
2>&1 | tee pipeline.txt


format.txt:
mamba activate test-snakemake-wrappers && \
snakefmt $(snakefiles) 2>&1 | tee format.txt


linter.txt: format.txt black.txt
mamba activate test-snakemake-wrappers && \
snakemake -s ../workflow/Snakefile \
--lint 2>&1 | tee linter.txt


black.txt:
mamba activate test-snakemake-wrappers && \
black $(python_scripts) 2>&1 | tee black.txt


Expand Down
6 changes: 6 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,9 @@
# 1.4.2

## Features:

* More time for Mutect2 rule

# 1.4.1

## Features:
Expand Down
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,22 +1,22 @@
[![Snakemake](https://img.shields.io/badge/snakemake-≥7.29.0-brightgreen.svg)](https://snakemake.github.io)
[![GitHub actions status](https://github.com/tdayris/fair_gatk_mutect_germline/workflows/Tests/badge.svg)](https://github.com/tdayris/fair_gatk_mutect_germline/actions?query=branch%3Amain+workflow%3ATests)
[![GitHub actions status](https://github.com/tdayris/fair_gatk_mutext2/workflows/Tests/badge.svg)](https://github.com/tdayris/fair_gatk_mutext2/actions?query=branch%3Amain+workflow%3ATests)

Do not use. Active dev.

Snakemake workflow used to call germline variants with GATK-Mutect2

## Usage

The usage of this workflow is described in the [Snakemake workflow catalog](https://snakemake.github.io/snakemake-workflow-catalog?usage=tdayris/fair_gatk_mutect_germline)
it is also available [locally](https://github.com/tdayris/fair_gatk_mutect_germline/blob/main/workflow/report/usage.rst) on a single page.
The usage of this workflow is described in the [Snakemake workflow catalog](https://snakemake.github.io/snakemake-workflow-catalog?usage=tdayris/fair_gatk_mutext2)
it is also available [locally](https://github.com/tdayris/fair_gatk_mutext2/blob/main/workflow/report/usage.rst) on a single page.

## Results

A complete description of the results can be found here in [workflow reports](https://github.com/tdayris/fair_gatk_mutect_germline/blob/main/workflow/report/results.rst).
A complete description of the results can be found here in [workflow reports](https://github.com/tdayris/fair_gatk_mutext2/blob/main/workflow/report/results.rst).

## Material and Methods

The tools used in this pipeline are described [here](https://github.com/tdayris/fair_gatk_mutect_germline/blob/main/workflow/report/material_methods.rst) textually. Web-links are available below:
The tools used in this pipeline are described [here](https://github.com/tdayris/fair_gatk_mutext2/blob/main/workflow/report/material_methods.rst) textually. Web-links are available below:

![workflow_rulegraph](dag.png)

Expand Down
6 changes: 4 additions & 2 deletions config/samples.csv
Original file line number Diff line number Diff line change
@@ -1,2 +1,4 @@
sample_id,upstream_file,downstream_file,species,build,release
sac_a,ngs-test-data/reads/a.scerevisiae.1.fq,ngs-test-data/reads/a.scerevisiae.2.fq,saccharomyces_cerevisiae,R64-1-1,105
sample_id,upstream_file,downstream_file,species,build,release,normal_sample_id
sac_a,ngs-test-data/reads/a.scerevisiae.1.fq,ngs-test-data/reads/a.scerevisiae.2.fq,saccharomyces_cerevisiae,R64-1-1,105,
sac_b,ngs-test-data/reads/b.scerevisiae.1.fq,,saccharomyces_cerevisiae,R64-1-1,105,
sac_c,ngs-test-data/reads/b.scerevisiae.1.fq,ngs-test-data/reads/b.scerevisiae.2.fq,saccharomyces_cerevisiae,R64-1-1,105,sac_a
62 changes: 45 additions & 17 deletions workflow/rules/bcftools.smk
Original file line number Diff line number Diff line change
@@ -1,61 +1,89 @@
rule fair_gatk_mutect2_bcftools_norm_split_multiallelic:
input:
"tmp/fair_gatk_mutect2_snpsift_vartype/{species}.{build}.{release}.{datatype}/{sample}.vcf",
ref=lambda wildcards: select_fasta(wildcards),
output:
temp(
"tmp/fair_gatk_mutect2_bcftools_norm_split_multiallelic/{species}.{build}.{release}.{datatype}/{sample}.vcf.gz",
),
threads: 1
resources:
mem_mb=lambda wildcards, attempt: attempt * 3_000,
runtime=lambda wildcards, attempt: attempt * 25,
tmpdir=tmp,
log:
"logs/fair_gatk_mutect2_bcftools_norm_split_multiallelic/{species}.{build}.{release}.{datatype}/{sample}.log",
benchmark:
"benchmark/fair_gatk_mutect2_bcftools_norm_split_multiallelic/{species}.{build}.{release}.{datatype}/{sample}.tsv"
params:
extra=lookup_config(
dpath="params/fair_gatk_mutect2_bcftools_norm_split_multiallelic",
default="--multiallelics -any --rm-dup none",
),
wrapper:
f"{snakemake_wrappers_prefix}/bio/bcftools/norm"


rule fair_gatk_mutect2_bcftools_view:
input:
"tmp/fair_gatk_mutect2/snpsift_vartype/{species}.{build}.{release}.{datatype}/{sample}.vcf",
"tmp/fair_gatk_mutect2_bcftools_norm_split_multiallelic/{species}.{build}.{release}.{datatype}/{sample}.vcf.gz",
output:
protected(
"results/{species}.{build}.{release}.{datatype}/VariantCalling/Germline/VCF/{sample}.vcf.gz"
"results/{species}.{build}.{release}.{datatype}/VariantCalling/VCF/{sample}.vcf.gz"
),
threads: 1
resources:
mem_mb=lambda wildcards, attempt: attempt * 1024 * 3,
mem_mb=lambda wildcards, attempt: attempt * 3_000,
runtime=lambda wildcards, attempt: attempt * 15,
tmpdir=tmp,
log:
"logs/fair_gatk_mutect2/bcftools_view/{species}.{build}.{release}.{datatype}/{sample}.log",
"logs/fair_gatk_mutect2i_bcftools_view/{species}.{build}.{release}.{datatype}/{sample}.log",
benchmark:
"benchmark/fair_gatk_mutect2/bcftools_view/{species}.{build}.{release}.{datatype}/{sample}.tsv"
"benchmark/fair_gatk_mutect2_bcftools_view/{species}.{build}.{release}.{datatype}/{sample}.tsv"
params:
extra=lookup_config(dpath="params/fair_gatk_mutect2/bcftools/view", default=""),
extra=lookup_config(
dpath="params/fair_gatk_mutect2_bcftools_view", default="--with-header"
),
wrapper:
f"{snakemake_wrappers_prefix}/bio/bcftools/view"


rule fair_gatk_mutect2_bcftools_index:
input:
"results/{species}.{build}.{release}.{datatype}/VariantCalling/Germline/VCF/{sample}.vcf.gz",
"results/{species}.{build}.{release}.{datatype}/VariantCalling/VCF/{sample}.vcf.gz",
output:
"results/{species}.{build}.{release}.{datatype}/VariantCalling/Germline/VCF/{sample}.vcf.gz.tbi",
"results/{species}.{build}.{release}.{datatype}/VariantCalling/VCF/{sample}.vcf.gz.tbi",
threads: 1
resources:
mem_mb=lambda wildcards, attempt: attempt * 1024 * 2,
mem_mb=lambda wildcards, attempt: attempt * 2_000,
runtime=lambda wildcards, attempt: attempt * 15,
tmpdir=tmp,
log:
"logs/fair_gatk_mutect2/bcftools_index/{species}.{build}.{release}.{datatype}/{sample}.log",
"logs/fair_gatk_mutect2_bcftools_index/{species}.{build}.{release}.{datatype}/{sample}.log",
benchmark:
"benchmark/fair_gatk_mutect2/bcftools_index/{species}.{build}.{release}.{datatype}/{sample}.tsv"
"benchmark/fair_gatk_mutect2_bcftools_index/{species}.{build}.{release}.{datatype}/{sample}.tsv"
wrapper:
f"{snakemake_wrappers_prefix}/bio/bcftools/index"


rule fair_gatk_mutect2_bcftools_mutect2_stats:
input:
"results/{species}.{build}.{release}.{datatype}/VariantCalling/Germline/VCF/{sample}.vcf.gz",
"results/{species}.{build}.{release}.{datatype}/VariantCalling/Germline/VCF/{sample}.vcf.gz.tbi",
"results/{species}.{build}.{release}.{datatype}/VariantCalling/VCF/{sample}.vcf.gz",
"results/{species}.{build}.{release}.{datatype}/VariantCalling/VCF/{sample}.vcf.gz.tbi",
output:
temp(
"tmp/fair_gatk_mutect2/bcftools_mutect2_stats/{species}.{build}.{release}.{datatype}/{sample}.stats.txt"
"tmp/fair_gatk_mutect2_bcftools_mutect2_stats/{species}.{build}.{release}.{datatype}/{sample}.stats.txt"
),
threads: 2
resources:
mem_mb=lambda wildcards, attempt: (1024 * 7) * attempt,
runtime=lambda wildcards, attempt: 30 * attempt,
tmpdir=tmp,
log:
"logs/fair_gatk_mutect2/bcftools_mutect2_stats/{species}.{build}.{release}.{datatype}/{sample}.log",
"logs/fair_gatk_mutect2_bcftools_mutect2_stats/{species}.{build}.{release}.{datatype}/{sample}.log",
benchmark:
"benchmark/fair_gatk_mutect2/bcftools_mutect2_stats/{species}.{build}.{release}.{datatype}/{sample}.tsv"
"benchmark/fair_gatk_mutect2_bcftools_mutect2_stats/{species}.{build}.{release}.{datatype}/{sample}.tsv"
params:
lookup_config(dpath="params/fair_gatk_mutect2/bcftools/stats", default=""),
lookup_config(dpath="params/fair_gatk_mutect2_bcftools_stats", default=""),
wrapper:
f"{snakemake_wrappers_prefix}/bio/bcftools/stats"
Loading

0 comments on commit 0c7abd3

Please sign in to comment.