An open-source analysis pipeline to detect germline or somatic variants from whole genome or targeted sequencing
Previously known as the Cancer Analysis Workflow (CAW), Sarek is a workflow designed to run analyses on WGS data from regular samples or tumour / normal pairs, including relapse samples if required.
It's built using Nextflow, a domain specific language for workflow building. Software dependencies are handled using Docker or Singularity - container technologies that provide excellent reproducibility and ease of use. Singularity has been designed specifically for high-performance computing environments. This means that although Sarek has been primarily designed for use with the Swedish UPPMAX HPC systems, it should be able to run on any system that supports these two tools.
Sarek was developed at the National Genomics Infastructure and National Bioinformatics Infastructure Sweden which are both platforms at SciLifeLab. It is listed on the Elixir - Tools and Data Services Registry.
Sarek is built with several workflow scripts. A wrapper script contained within the repository makes it easy to run the different workflow scripts as a single job. To test your installation, follow the tests documentation.
Raw FastQ files or aligned BAM files (with or without realignment & recalibration) can be used as inputs. You can choose which variant callers to use, plus the pipeline is capable of accommodating additional variant calling software or CNV callers if required.
The worflow steps and tools used are as follows:
- Preprocessing -
main.nf
(based on GATK best practices)- Map reads to Reference
- Mark Duplicates
- Base (Quality Score) Recalibration
- Germline variant calling -
germlineVC.nf
- SNVs and small indels
- Structural variants
- Somatic variant calling -
somaticVC.nf
(optional) - Annotation -
annotate.nf
(optional)- Variant annotation
- Reporting -
runMultiQC.nf
- Reporting
The Sarek pipeline comes with documentation in the docs/
directory:
- Installation documentation
- Installation documentation specific for UPPMAX
rackham
- Installation documentation specific for UPPMAX
bianca
- Tests documentation
- Reference files documentation
- Configuration and profiles documentation
- Intervals documentation
- Running the pipeline
- Running the pipeline using Conda
- Command line parameters
- Examples
- Input files documentation
- Processes documentation
- Documentation about containers
- Complementary information about ASCAT
- Complementary information about annotations
- Output documentation structure
If you would like to contribute to this pipeline, please see the contributing guidelines.
For further information or help, don't hesitate to get in touch on Gitter or contact us: [email protected], [email protected]
Main authors:
Helpful contributors:
- Johannes Alneberg
- Sebastian DiLorenzo
- Jesper Eisfeldt
- Phil Ewels
- Max Käller
- Malin Larsson
- Marcel Martin
- Björn Nystedt
- Pall Olason
- Aron Skaftason
- Nilesh Tawari