The Ruffus python module provides automatic support for
- Managing dependencies
- Parallel jobs
- Re-starting from arbitrary points, especially after errors
- Display of the pipeline as a flowchart
- Reporting
Computational pipelines are often conceptually quite simple, especially if we breakdown the process into simple stages, or separate tasks.
Each stage or task in a computational pipeline is represented by a python function.
Each python function can be called in parallel to run multiple jobs.
It was originally written for scientific research (bioinformatics/genome analysis pipelines).
Design goals
(In order)
- Elegance
- Lightweight
- Unintrusiveness
- Flexible
- Practical (i.e. powerful)
There is no hidden magic so Ruffus is completely customisable.
Project Documentation
Project documentation is available here: http://wwwfgu.anat.ox.ac.uk/~lg/oss/ruffus/index.html
Tutorial
An simple tutorial is available here: http://wwwfgu.anat.ox.ac.uk/~lg/oss/ruffus/tutorials/simple_tutorial/simple_tutorial.html
Cylindrophis ruffus
Is the name of the red-tailed pipe snake from Hong Kong where the author comes from http://en.wikipedia.org/wiki/Cylindrophis_ruffus
Click here if you are on ohloh and are using Ruffus: