Development guidelines:¶
Contributing to the documentation¶
For the docs, we use MkDocs because of its flexibility:
- mkdocs-material: look and feel
- mkdocs-bibtex: literature reference
- MkPDFs: PDF version
Modify any of the doc files¶
vi docs/setup.md
Test the changes locally¶
mkdocs serve
If everything looks fine you can submit a patch or pull-request.
Deploy changes¶
This requires permissions from the GitHub organization.
mkdocs gh-deploy
Setting up mkdocs¶
# osx specific settings
conda install pango cairo
pip install mkdocs
pip install mkdocs-material
pip install mkdocs-bibtex
pip install -e git+https://github.com/jwaschkau/mkpdfs-mkdocs-plugin.git#egg=mkpdfs-mkdocs-plugin
# osx specific settings
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
Updating docker containers¶
The dockerfiles for containers reside at the docker/
directory. Some of the environments use conda recipes, which reside in the envs/
directory. After updating a recipe, to build and upload its container, one should use:
cd Baltica/
docker build -f <dockerfile> --tag <name>:<tag> .
docker push <tag>
For example,
- dockerfile: docker/baltica/1.0/Dockerfile
- name: tbrittoborges/baltica
- tag: 1.0
Once the container is updated, its tag version (tag) should be updated as well as it the container directive in the snakemake workflows.
docker hub hosts the container and can change this location at the container directive at the snakefiles.
Testing Baltica¶
Baltica's continuous integration testing suite is under development.