tmweiskittel/tmw_align_emseq

None

Overview

Latest release: None, Last update: 2026-07-12

Share link: https://snakemake.github.io/snakemake-workflow-catalog?wf=tmweiskittel/tmw_align_emseq

Quality control: linting: failed formatting: failed

Deployment

Step 1: Install Snakemake and Snakedeploy

Snakemake and Snakedeploy are best installed via the Conda package manager. 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/tmweiskittel/tmw_align_emseq . --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 using apptainer/singularity, use

snakemake --cores all --sdm apptainer

To run the workflow using a combination of conda and apptainer/singularity for software deployment, use

snakemake --cores all --sdm conda apptainer

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.

Workflow overview

This workflow is a best-practice workflow for <detailed description>. The workflow is built using snakemake and consists of the following steps:

  1. Download genome reference from NCBI

  2. Validate downloaded genome (python script)

  3. Simulate short read sequencing data on the fly (dwgsim)

  4. Check quality of input read data (FastQC)

  5. Collect statistics from tool output (MultiQC)

Running the workflow

Input data

This template workflow creates artificial sequencing data in *.fastq.gz format. It does not contain actual input data. The simulated input files are nevertheless created based on a mandatory table linked in the config.yaml file (default: .test/samples.tsv). The sample sheet has the following layout:

sample

condition

replicate

read1

read2

sample1

wild_type

1

sample1.bwa.read1.fastq.gz

sample1.bwa.read2.fastq.gz

sample2

wild_type

2

sample2.bwa.read1.fastq.gz

sample2.bwa.read2.fastq.gz

Parameters

This table lists all parameters that can be used to run the workflow.

parameter

type

details

default

sample_sheet

path

str

path to sample sheet, mandatory

“config/samples.tsv”

get_genome

ncbi_ftp

str

link to a genome on NCBI’s FTP server

link to S. cerevisiae genome

simulate_reads

read_length

num

length of target reads in bp

100

read_number

num

number of total reads to be simulated

10000

Workflow parameters

The following table is automatically parsed from the workflow’s config.schema.y(a)ml file.

Parameter

Type

Description

Required

Default

sample_sheet

string

path to sample-sheet TSV file

yes

get_genome

yes

. ncbi_ftp

string

URL for genome retrieval

yes

simulate_reads

yes

. read_length

number

length of target reads in bp

. read_number

number

number of total reads to be simulated

Linting and formatting

Linting results
  1Lints for snakefile /tmp/tmp4z6burxw/workflow/Snakefile:
  2    * Mixed rules and functions in same snakefile.:
  3      Small one-liner functions used only once should be defined as lambda
  4      expressions. Other functions should be collected in a common module, e.g.
  5      'rules/common.smk'. This makes the workflow steps more readable.
  6      Also see:
  7      https://snakemake.readthedocs.io/en/latest/snakefiles/modularization.html#includes
  8
  9Lints for rule unpack_hg38 (line 6, /tmp/tmp4z6burxw/workflow/rules/references_combined.smk):
 10    * Specify a conda environment or container for each rule.:
 11      This way, the used software for each specific step is documented, and the
 12      workflow can be executed on any machine without prerequisites.
 13      Also see:
 14      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#integrated-package-management
 15      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#running-jobs-in-containers
 16
 17Lints for rule organize_blacklist (line 19, /tmp/tmp4z6burxw/workflow/rules/references_combined.smk):
 18    * Specify a conda environment or container for each rule.:
 19      This way, the used software for each specific step is documented, and the
 20      workflow can be executed on any machine without prerequisites.
 21      Also see:
 22      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#integrated-package-management
 23      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#running-jobs-in-containers
 24    * Shell command directly uses variable REF_BED from outside of the rule:
 25      It is recommended to pass all files as input and output, and non-file
 26      parameters via the params directive. Otherwise, provenance tracking is
 27      less accurate.
 28      Also see:
 29      https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#non-file-parameters-for-rules
 30    * Shell command directly uses variable LOCAL_PATH from outside of the rule:
 31      It is recommended to pass all files as input and output, and non-file
 32      parameters via the params directive. Otherwise, provenance tracking is
 33      less accurate.
 34      Also see:
 35      https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#non-file-parameters-for-rules
 36
 37Lints for rule normalize_spikein_headers (line 33, /tmp/tmp4z6burxw/workflow/rules/references_combined.smk):
 38    * Specify a conda environment or container for each rule.:
 39      This way, the used software for each specific step is documented, and the
 40      workflow can be executed on any machine without prerequisites.
 41      Also see:
 42      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#integrated-package-management
 43      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#running-jobs-in-containers
 44
 45Lints for rule download_reference_files (line 53, /tmp/tmp4z6burxw/workflow/rules/references_combined.smk):
 46    * Specify a conda environment or container for each rule.:
 47      This way, the used software for each specific step is documented, and the
 48      workflow can be executed on any machine without prerequisites.
 49      Also see:
 50      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#integrated-package-management
 51      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#running-jobs-in-containers
 52    * Shell command directly uses variable REF_SOURCE from outside of the rule:
 53      It is recommended to pass all files as input and output, and non-file
 54      parameters via the params directive. Otherwise, provenance tracking is
 55      less accurate.
 56      Also see:
 57      https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#non-file-parameters-for-rules
 58    * Shell command directly uses variable REF_FASTA from outside of the rule:
 59      It is recommended to pass all files as input and output, and non-file
 60      parameters via the params directive. Otherwise, provenance tracking is
 61      less accurate.
 62      Also see:
 63      https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#non-file-parameters-for-rules
 64    * Shell command directly uses variable REF_BED from outside of the rule:
 65      It is recommended to pass all files as input and output, and non-file
 66      parameters via the params directive. Otherwise, provenance tracking is
 67      less accurate.
 68      Also see:
 69      https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#non-file-parameters-for-rules
 70    * Shell command directly uses variable REF_BWA from outside of the rule:
 71      It is recommended to pass all files as input and output, and non-file
 72      parameters via the params directive. Otherwise, provenance tracking is
 73      less accurate.
 74      Also see:
 75      https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#non-file-parameters-for-rules
 76
 77Lints for rule download_metadata (line 79, /tmp/tmp4z6burxw/workflow/rules/references_combined.smk):
 78    * Specify a conda environment or container for each rule.:
 79      This way, the used software for each specific step is documented, and the
 80      workflow can be executed on any machine without prerequisites.
 81      Also see:
 82      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#integrated-package-management
 83      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#running-jobs-in-containers
 84    * Shell command directly uses variable LOCAL_PATH from outside of the rule:
 85      It is recommended to pass all files as input and output, and non-file
 86      parameters via the params directive. Otherwise, provenance tracking is
 87      less accurate.
 88      Also see:
 89      https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#non-file-parameters-for-rules
 90    * Shell command directly uses variable LOCAL_PATH from outside of the rule:
 91      It is recommended to pass all files as input and output, and non-file
 92      parameters via the params directive. Otherwise, provenance tracking is
 93      less accurate.
 94      Also see:
 95      https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#non-file-parameters-for-rules
 96
 97Lints for rule bwa_index_reference (line 96, /tmp/tmp4z6burxw/workflow/rules/references_combined.smk):
 98    * Shell command directly uses variable REF_BWA from outside of the rule:
 99      It is recommended to pass all files as input and output, and non-file
100      parameters via the params directive. Otherwise, provenance tracking is
101      less accurate.
102      Also see:
103      https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#non-file-parameters-for-rules
104    * Shell command directly uses variable REF_BWA from outside of the rule:
105      It is recommended to pass all files as input and output, and non-file
106      parameters via the params directive. Otherwise, provenance tracking is
107      less accurate.
108      Also see:
109      https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#non-file-parameters-for-rules
110
111Lints for rule build_combined_reference (line 119, /tmp/tmp4z6burxw/workflow/rules/references_combined.smk):
112    * Specify a conda environment or container for each rule.:
113      This way, the used software for each specific step is documented, and the
114      workflow can be executed on any machine without prerequisites.
115      Also see:
116      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#integrated-package-management
117      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#running-jobs-in-containers
118
119Lints for rule download_and_trim_fastqs (line 1, /tmp/tmp4z6burxw/workflow/rules/download_and_trim_samples.smk):
120    * Specify a conda environment or container for each rule.:
121      This way, the used software for each specific step is documented, and the
122      workflow can be executed on any machine without prerequisites.
123      Also see:
124      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#integrated-package-management
125      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#running-jobs-in-containers
126    * Shell command directly uses variable TRIMMED_DIR from outside of the rule:
127      It is recommended to pass all files as input and output, and non-file
128      parameters via the params directive. Otherwise, provenance tracking is
129      less accurate.
130      Also see:
131      https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#non-file-parameters-for-rules
132    * Shell command directly uses variable LOCAL_PATH from outside of the rule:
133      It is recommended to pass all files as input and output, and non-file
134      parameters via the params directive. Otherwise, provenance tracking is
135      less accurate.
136      Also see:
137      https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#non-file-parameters-for-rules
138    * Shell command directly uses variable FASTQ_DIR from outside of the rule:
139      It is recommended to pass all files as input and output, and non-file
140      parameters via the params directive. Otherwise, provenance tracking is
141      less accurate.
142      Also see:
143      https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#non-file-parameters-for-rules
144    * Shell command directly uses variable FASTQ_DIR from outside of the rule:
145      It is recommended to pass all files as input and output, and non-file
146      parameters via the params directive. Otherwise, provenance tracking is
147      less accurate.
148      Also see:
149      https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#non-file-parameters-for-rules
150    * Shell command directly uses variable FASTQ_DIR from outside of the rule:
151      It is recommended to pass all files as input and output, and non-file
152      parameters via the params directive. Otherwise, provenance tracking is
153      less accurate.
154      Also see:
155      https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#non-file-parameters-for-rules
156
157Lints for rule bwameth_align (line 1, /tmp/tmp4z6burxw/workflow/rules/alignment.smk):
158    * Shell command directly uses variable BAM_DIR from outside of the rule:
159      It is recommended to pass all files as input and output, and non-file
160      parameters via the params directive. Otherwise, provenance tracking is
161      less accurate.
162      Also see:
163      https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#non-file-parameters-for-rules
164    * Shell command directly uses variable LOCAL_PATH from outside of the rule:
165      It is recommended to pass all files as input and output, and non-file
166      parameters via the params directive. Otherwise, provenance tracking is
167      less accurate.
168      Also see:
169      https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#non-file-parameters-for-rules
170
171Lints for rule filter_bam (line 1, /tmp/tmp4z6burxw/workflow/rules/bam_cleanup.smk):
172    * Specify a conda environment or container for each rule.:
173      This way, the used software for each specific step is documented, and the
174      workflow can be executed on any machine without prerequisites.
175      Also see:
176      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#integrated-package-management
177      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#running-jobs-in-containers
178    * Shell command directly uses variable BAM_DIR from outside of the rule:
179      It is recommended to pass all files as input and output, and non-file
180      parameters via the params directive. Otherwise, provenance tracking is
181      less accurate.
182      Also see:
183      https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#non-file-parameters-for-rules
184    * Shell command directly uses variable LOCAL_PATH from outside of the rule:
185      It is recommended to pass all files as input and output, and non-file
186      parameters via the params directive. Otherwise, provenance tracking is
187      less accurate.
188      Also see:
189      https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#non-file-parameters-for-rules
190
191Lints for rule blacklist_filter_bam (line 19, /tmp/tmp4z6burxw/workflow/rules/bam_cleanup.smk):
192    * Specify a conda environment or container for each rule.:
193      This way, the used software for each specific step is documented, and the
194      workflow can be executed on any machine without prerequisites.
195      Also see:
196      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#integrated-package-management
197      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#running-jobs-in-containers
198    * Shell command directly uses variable BAM_DIR from outside of the rule:
199      It is recommended to pass all files as input and output, and non-file
200      parameters via the params directive. Otherwise, provenance tracking is
201
202... (truncated)
Formatting results
 1[DEBUG] 
 2[DEBUG] In file "/tmp/tmp4z6burxw/workflow/rules/fastp_trimming.smk":  Formatted content is different from original
 3[DEBUG] 
 4[DEBUG] In file "/tmp/tmp4z6burxw/workflow/rules/references_combined.smk":  Formatted content is different from original
 5[DEBUG] 
 6[DEBUG] In file "/tmp/tmp4z6burxw/workflow/rules/download_and_trim_samples.smk":  Formatted content is different from original
 7[DEBUG] 
 8[DEBUG] In file "/tmp/tmp4z6burxw/workflow/rules/alignment.smk":  Formatted content is different from original
 9[DEBUG] 
10[DEBUG] In file "/tmp/tmp4z6burxw/workflow/Snakefile":  Formatted content is different from original
11[DEBUG] 
12[DEBUG] In file "/tmp/tmp4z6burxw/workflow/rules/lambda_qc.smk":  Formatted content is different from original
13[DEBUG] 
14[DEBUG] In file "/tmp/tmp4z6burxw/workflow/rules/bam_cleanup.smk":  Formatted content is different from original
15[DEBUG] 
16[DEBUG] In file "/tmp/tmp4z6burxw/workflow/rules/coverage_qc.smk":  Formatted content is different from original
17[DEBUG] 
18[DEBUG] In file "/tmp/tmp4z6burxw/workflow/rules/methylation.smk":  Formatted content is different from original
19[DEBUG] 
20[DEBUG] In file "/tmp/tmp4z6burxw/workflow/rules/qc_report.smk":  Formatted content is different from original
21[DEBUG] 
22[DEBUG] In file "/tmp/tmp4z6burxw/workflow/rules/cloud_upload.smk":  Formatted content is different from original
23[INFO] 11 file(s) would be changed 😬
24
25snakefmt version: 0.11.5