The BAM Masterdata is a repository containing all the masterdata schema defining in BAM, as well as some utility functions to handle the masterdata.
If you want to develop locally this package, clone the project and enter in the workspace folder:
git clone https://git.bam.de/bam-data-store/bam-masterdata.git
cd bam-masterdata
Create a virtual environment (you can use Python>3.9) in your workspace:
python3 -m venv .venv
source .venv/bin/activate
Run the following script:
./scripts/install_python_dependencies
You can locally run the tests by doing:
python -m pytest -sv tests
where the -s
and -v
options toggle the output verbosity.
You can also generate a local coverage report:
python -m pytest --cov=src tests
We use Ruff for formatting and linting the code following the rules specified in the pyproject.toml
. You can run locally:
ruff check .
This will produce an output with the specific issues found. In order to auto-fix them, run:
ruff format . --check
If some issues are not possible to fix automatically, you will need to visit the file and fix them by hand.
Under construction!
To view the documentation locally, make sure to have installed the extra packages (this is part of the scripts/install_python_dependencies.sh
, so if you ran this script before, you don't need to do it again now):
uv pip install -e '[docu]'
The first time, build the server:
mkdocs build
Run the documentation server:
mkdocs serve
The output looks like:
INFO - Building documentation...
INFO - Cleaning site directory
INFO - [14:07:47] Watching paths for changes: 'docs', 'mkdocs.yml'
INFO - [14:07:47] Serving on http://127.0.0.1:8000/
Simply click on http://127.0.0.1:8000/
. The changes in the md
files of the documentation are inmediately reflected when the files are saved (the local web will automatically refresh).
Name | Role | |
---|---|---|
Dr. Angela Ariza | angela.ariza@bam.de | Outreach and Training |
Caroline Demidova | caroline.demidova@bam.de | Outreach and Training |
Daniel Kosztyla | daniel.kosztyla@bam.de | IT |
Carlos Madariaga | carlos.madariaga@bam.de | Software Developer |
Kristina Meindl | kristina.meindl@bam.de | Project Manager |
Dr. Jose M. Pizarro | jose.pizarro-blanco@bam.de | Data Management |
Jörg Rädler | joerg.raedler@bam.de | IT |