Snakemake Workflow
TiRank provides a Snakemake workflow under the repository’s workflow/ directory to support
reproducible end-to-end execution with Snakemake-managed conda environments.
Why we recommend a fixed Snakemake version
Snakemake behavior and dependency resolution can change across versions. For consistent and
reproducible execution, we recommend installing a fixed Snakemake release (currently 7.32.4).
conda create -n tirank_smk -c conda-forge -c bioconda python=3.9 snakemake=7.32.4
conda activate tirank_smk
Running the workflow with conda environment management
Run from the TiRank repository root:
snakemake --snakefile workflow/Snakefile \
--configfile workflow/config/config.yaml \
--use-conda --cores 8
Notes:
- --use-conda enables Snakemake to automatically create and manage rule environments.
- Configuration is provided via the repository’s workflow config file. Adjust it as needed before running.
Repository layout and Snakemake deployment guidance
Snakemake recommends separating workflow code (workflow/) from configuration (often a top-level
config/ directory) for distribution and reproducibility.
TiRank is distributed as a software repository that includes a namespaced workflow. To keep workflow
assets clearly scoped, TiRank stores workflow configuration under workflow/config/ while preserving
the key separation of concerns (workflow code vs. configuration vs. environments).
If you prefer a standalone Snakemake workflow repository, you can treat:
- workflow/ as the Snakemake workflow folder, and
- workflow/config/ as the configuration folder for that workflow.