zhuakexi/dna-seq-gatk-variant-calling

None

Overview

Latest release: None, Last update: 2026-01-22

Linting: linting: failed, Formatting: formatting: failed

Deployment

Step 1: Install Snakemake and Snakedeploy

Snakemake and Snakedeploy are best installed via the Conda. It is recommended to install conda via Miniforge. Run

conda create -c conda-forge -c bioconda -c nodefaults --name snakemake snakemake snakedeploy

to install both Snakemake and Snakedeploy in an isolated environment. For all following commands ensure that this environment is activated via

conda activate snakemake

For other installation methods, refer to the Snakemake and Snakedeploy documentation.

Step 2: Deploy workflow

With Snakemake and Snakedeploy installed, the workflow can be deployed as follows. First, create an appropriate project working directory on your system and enter it:

mkdir -p path/to/project-workdir
cd path/to/project-workdir

In all following steps, we will assume that you are inside of that directory. Then run

snakedeploy deploy-workflow https://github.com/zhuakexi/dna-seq-gatk-variant-calling . --tag None

Snakedeploy will create two folders, workflow and config. The former contains the deployment of the chosen workflow as a Snakemake module, the latter contains configuration files which will be modified in the next step in order to configure the workflow to your needs.

Step 3: Configure workflow

To configure the workflow, adapt config/config.yml to your needs following the instructions below.

Step 4: Run workflow

The deployment method is controlled using the --software-deployment-method (short --sdm) argument.

To run the workflow with automatic deployment of all required software via conda/mamba, use

snakemake --cores all --sdm conda

Snakemake will automatically detect the main Snakefile in the workflow subfolder and execute the workflow module that has been defined by the deployment in step 2.

For further options such as cluster and cloud execution, see the docs.

Step 5: Generate report

After finalizing your data analysis, you can automatically generate an interactive visual HTML report for inspection of results together with parameters and code inside of the browser using

snakemake --report report.zip

Configuration

The following section is imported from the workflow’s config/README.md.

General settings

To configure this workflow, modify config/config.yaml according to your needs, following the explanations provided in the file.

Sample and unit sheet

  • Add samples to config/samples.tsv. Only the column sample is mandatory, but any additional columns can be added.

  • For each sample, add one or more sequencing units (runs, lanes or replicates) to the unit sheet config/units.tsv. For each unit, define platform, and either one (column fq1) or two (columns fq1, fq2) FASTQ files (these can point to anywhere in your system).

The pipeline will jointly call all samples that are defined, following the GATK best practices.

Linting and formatting

Linting results

  1No validator found for JSON Schema version identifier 'http://json-schema.org/draft-04/schema#'
  2Defaulting to validator for JSON Schema version 'https://json-schema.org/draft/2020-12/schema'
  3Note that schema file may not be validated correctly.
  4No validator found for JSON Schema version identifier 'http://json-schema.org/draft-04/schema#'
  5Defaulting to validator for JSON Schema version 'https://json-schema.org/draft/2020-12/schema'
  6Note that schema file may not be validated correctly.
  7No validator found for JSON Schema version identifier 'http://json-schema.org/draft-04/schema#'
  8Defaulting to validator for JSON Schema version 'https://json-schema.org/draft/2020-12/schema'
  9Note that schema file may not be validated correctly.
 10The flag 'directory' used in rule prepare_ref is only valid for outputs, not inputs.
 11The flag 'directory' used in rule prepare_ref is only valid for outputs, not inputs.
 12Lints for snakefile /tmp/tmpucdlinoi/workflow/Snakefile:
 13    * Absolute path "/genome.fasta" in line 11:
 14      Do not define absolute paths inside of the workflow, since this renders
 15      your workflow irreproducible on other machines. Use path relative to the
 16      working directory instead, or make the path configurable via a config
 17      file.
 18      Also see:
 19      https://snakemake.readthedocs.io/en/latest/snakefiles/configuration.html#configuration
 20    * Absolute path "/genome.fasta.fai" in line 12:
 21      Do not define absolute paths inside of the workflow, since this renders
 22      your workflow irreproducible on other machines. Use path relative to the
 23      working directory instead, or make the path configurable via a config
 24      file.
 25      Also see:
 26      https://snakemake.readthedocs.io/en/latest/snakefiles/configuration.html#configuration
 27    * Absolute path "/genome.dict" in line 13:
 28      Do not define absolute paths inside of the workflow, since this renders
 29      your workflow irreproducible on other machines. Use path relative to the
 30      working directory instead, or make the path configurable via a config
 31      file.
 32      Also see:
 33      https://snakemake.readthedocs.io/en/latest/snakefiles/configuration.html#configuration
 34    * Absolute path "/genome.fasta.bwt" in line 14:
 35      Do not define absolute paths inside of the workflow, since this renders
 36      your workflow irreproducible on other machines. Use path relative to the
 37      working directory instead, or make the path configurable via a config
 38      file.
 39      Also see:
 40      https://snakemake.readthedocs.io/en/latest/snakefiles/configuration.html#configuration
 41    * Absolute path "/variation.noiupac.vcf.gz" in line 15:
 42      Do not define absolute paths inside of the workflow, since this renders
 43      your workflow irreproducible on other machines. Use path relative to the
 44      working directory instead, or make the path configurable via a config
 45      file.
 46      Also see:
 47      https://snakemake.readthedocs.io/en/latest/snakefiles/configuration.html#configuration
 48    * Absolute path "/variation.noiupac.vcf.gz.tbi" in line 16:
 49      Do not define absolute paths inside of the workflow, since this renders
 50      your workflow irreproducible on other machines. Use path relative to the
 51      working directory instead, or make the path configurable via a config
 52      file.
 53      Also see:
 54      https://snakemake.readthedocs.io/en/latest/snakefiles/configuration.html#configuration
 55    * Absolute path "/vep/cache" in line 17:
 56      Do not define absolute paths inside of the workflow, since this renders
 57      your workflow irreproducible on other machines. Use path relative to the
 58      working directory instead, or make the path configurable via a config
 59      file.
 60      Also see:
 61      https://snakemake.readthedocs.io/en/latest/snakefiles/configuration.html#configuration
 62    * Absolute path "/vep/plugins" in line 18:
 63      Do not define absolute paths inside of the workflow, since this renders
 64      your workflow irreproducible on other machines. Use path relative to the
 65      working directory instead, or make the path configurable via a config
 66      file.
 67      Also see:
 68      https://snakemake.readthedocs.io/en/latest/snakefiles/configuration.html#configuration
 69
 70Lints for snakefile /tmp/tmpucdlinoi/workflow/rules/ref.smk:
 71    * Absolute path "/genome.fasta" in line 7:
 72      Do not define absolute paths inside of the workflow, since this renders
 73      your workflow irreproducible on other machines. Use path relative to the
 74      working directory instead, or make the path configurable via a config
 75      file.
 76      Also see:
 77      https://snakemake.readthedocs.io/en/latest/snakefiles/configuration.html#configuration
 78    * Absolute path "/genome.fasta" in line 23:
 79      Do not define absolute paths inside of the workflow, since this renders
 80      your workflow irreproducible on other machines. Use path relative to the
 81      working directory instead, or make the path configurable via a config
 82      file.
 83      Also see:
 84      https://snakemake.readthedocs.io/en/latest/snakefiles/configuration.html#configuration
 85    * Absolute path "/genome.fasta.fai" in line 25:
 86      Do not define absolute paths inside of the workflow, since this renders
 87      your workflow irreproducible on other machines. Use path relative to the
 88      working directory instead, or make the path configurable via a config
 89      file.
 90      Also see:
 91      https://snakemake.readthedocs.io/en/latest/snakefiles/configuration.html#configuration
 92    * Absolute path "/genome.fasta" in line 36:
 93      Do not define absolute paths inside of the workflow, since this renders
 94      your workflow irreproducible on other machines. Use path relative to the
 95      working directory instead, or make the path configurable via a config
 96      file.
 97      Also see:
 98      https://snakemake.readthedocs.io/en/latest/snakefiles/configuration.html#configuration
 99    * Absolute path "/genome.dict" in line 38:
100      Do not define absolute paths inside of the workflow, since this renders
101      your workflow irreproducible on other machines. Use path relative to the
102      working directory instead, or make the path configurable via a config
103      file.
104      Also see:
105      https://snakemake.readthedocs.io/en/latest/snakefiles/configuration.html#configuration
106    * Absolute path "/genome.fasta.fai" in line 52:
107      Do not define absolute paths inside of the workflow, since this renders
108      your workflow irreproducible on other machines. Use path relative to the
109      working directory instead, or make the path configurable via a config
110      file.
111      Also see:
112      https://snakemake.readthedocs.io/en/latest/snakefiles/configuration.html#configuration
113    * Absolute path "/variation.vcf.gz" in line 54:
114      Do not define absolute paths inside of the workflow, since this renders
115      your workflow irreproducible on other machines. Use path relative to the
116      working directory instead, or make the path configurable via a config
117      file.
118      Also see:
119      https://snakemake.readthedocs.io/en/latest/snakefiles/configuration.html#configuration
120    * Absolute path "/variation.vcf.gz" in line 70:
121      Do not define absolute paths inside of the workflow, since this renders
122      your workflow irreproducible on other machines. Use path relative to the
123      working directory instead, or make the path configurable via a config
124      file.
125      Also see:
126      https://snakemake.readthedocs.io/en/latest/snakefiles/configuration.html#configuration
127    * Absolute path "/variation.noiupac.vcf.gz" in line 72:
128      Do not define absolute paths inside of the workflow, since this renders
129      your workflow irreproducible on other machines. Use path relative to the
130      working directory instead, or make the path configurable via a config
131      file.
132      Also see:
133      https://snakemake.readthedocs.io/en/latest/snakefiles/configuration.html#configuration
134    * Absolute path "/variation.noiupac.vcf.gz" in line 85:
135      Do not define absolute paths inside of the workflow, since this renders
136      your workflow irreproducible on other machines. Use path relative to the
137      working directory instead, or make the path configurable via a config
138      file.
139      Also see:
140      https://snakemake.readthedocs.io/en/latest/snakefiles/configuration.html#configuration
141    * Absolute path "/variation.noiupac.vcf.gz.tbi" in line 87:
142      Do not define absolute paths inside of the workflow, since this renders
143      your workflow irreproducible on other machines. Use path relative to the
144      working directory instead, or make the path configurable via a config
145      file.
146      Also see:
147      https://snakemake.readthedocs.io/en/latest/snakefiles/configuration.html#configuration
148    * Absolute path "/genome.fasta" in line 100:
149      Do not define absolute paths inside of the workflow, since this renders
150      your workflow irreproducible on other machines. Use path relative to the
151      working directory instead, or make the path configurable via a config
152      file.
153      Also see:
154      https://snakemake.readthedocs.io/en/latest/snakefiles/configuration.html#configuration
155    * Absolute path "/genome.fasta" in line 102:
156      Do not define absolute paths inside of the workflow, since this renders
157      your workflow irreproducible on other machines. Use path relative to the
158      working directory instead, or make the path configurable via a config
159      file.
160      Also see:
161      https://snakemake.readthedocs.io/en/latest/snakefiles/configuration.html#configuration
162    * Absolute path "/vep/cache" in line 113:
163      Do not define absolute paths inside of the workflow, since this renders
164      your workflow irreproducible on other machines. Use path relative to the
165      working directory instead, or make the path configurable via a config
166      file.
167      Also see:
168      https://snakemake.readthedocs.io/en/latest/snakefiles/configuration.html#configuration
169    * Absolute path "/vep/plugins" in line 128:
170      Do not define absolute paths inside of the workflow, since this renders
171      your workflow irreproducible on other machines. Use path relative to the
172      working directory instead, or make the path configurable via a config
173      file.
174      Also see:
175      https://snakemake.readthedocs.io/en/latest/snakefiles/configuration.html#configuration

Formatting results

 1[DEBUG] 
 2[DEBUG] In file "/tmp/tmpucdlinoi/workflow/rules/ref.smk":  Formatted content is different from original
 3[DEBUG] 
 4[DEBUG] In file "/tmp/tmpucdlinoi/workflow/rules/mapping.smk":  Formatted content is different from original
 5[DEBUG] 
 6[DEBUG] In file "/tmp/tmpucdlinoi/workflow/rules/calling.smk":  Formatted content is different from original
 7[DEBUG] 
 8[DEBUG] In file "/tmp/tmpucdlinoi/workflow/rules/stats.smk":  Formatted content is different from original
 9[DEBUG] 
10[DEBUG] In file "/tmp/tmpucdlinoi/workflow/Snakefile":  Formatted content is different from original
11[DEBUG] 
12[DEBUG] In file "/tmp/tmpucdlinoi/workflow/rules/annotation.smk":  Formatted content is different from original
13[DEBUG] 
14[DEBUG] In file "/tmp/tmpucdlinoi/workflow/rules/common.smk":  Formatted content is different from original
15[DEBUG] 
16[DEBUG] In file "/tmp/tmpucdlinoi/workflow/rules/qc.smk":  Formatted content is different from original
17[DEBUG] 
18[DEBUG] In file "/tmp/tmpucdlinoi/workflow/rules/filtering.smk":  Formatted content is different from original
19[INFO] 9 file(s) would be changed 😬
20
21snakefmt version: 0.11.3