Note
If you are on the BIH cluster, first read :ref:`quickstart` as this also explains the temporary directory.
The CUBI pipeline requires Python >=3.12 (e.g., from a Miniconda3 installation).
More recent versions also work but other requirements as Snakemake might make it depend on a more recent Python version.
For cluster execution, you need a Snakemake profile available.
This is the recommended way if you just want to use the pipeline, simply read :ref:`quickstart`.
It is highly recommended to have a Miniconda installation for the development as this allows for easily resetting everything. You can of course clone the code anywhere you like.
$ mkdir -p ~/Development/pipeline_dev
$ cd ~/Development/pipeline_dev
$ git clone [email protected]:bihealth/snappy-pipeline.git
$ cd snappy_pipeline
$ conda env create -n snappy_dev --file environment.yaml
$ conda activate snappy_dev
$ pip install -e ".[all]"
To make it easier to follow the coding style, we use pre-commit hooks. These hooks will run the style checks before you commit your changes and will automatically fix some issues.
First, install the pre-commit package (if not already installed, part of the optional dependency group dev
):
$ conda install pre-commit # or pip install pre-commit
Then, install the pre-commit hooks:
$ pre-commit install
The next time you commit changes, the pre-commit hooks will run automatically.
To run the tests, simply invoke pytest
(part of the optional dependency group test
):
$ cd ~/Development/pipeline_dev
$ pytest
$ cd ~/Development/pipeline_dev
$ make lint
Make sure to also read the "Pipeline Developer Docs" section, starting with :ref:`dev_intro`.