Skip to main content

The BAM Data Store utility tools and masterdata models wrapped in a Python package with a front-end web interface.

Project description

BAM Masterdata

CI Status Coverage

The BAM Masterdata is a repository containing all the masterdata schema defining in BAM, as well as some utility functions to handle the masterdata.

Development

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

Run the tests

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

Run auto-formatting and linting

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.

Run the local website

Under construction!

Documentation on Github pages

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).

Main contributors

Name E-mail
Carlos Madariaga carlos.madariaga@bam.de
Dr. Jose M. Pizarro jose.pizarro-blanco@bam.de

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bam_masterdata-0.1.0.tar.gz (961.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bam_masterdata-0.1.0-py3-none-any.whl (448.0 kB view details)

Uploaded Python 3

File details

Details for the file bam_masterdata-0.1.0.tar.gz.

File metadata

  • Download URL: bam_masterdata-0.1.0.tar.gz
  • Upload date:
  • Size: 961.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for bam_masterdata-0.1.0.tar.gz
Algorithm Hash digest
SHA256 14da2f10c9847c719d25056a6754596243c3b6ce9c51b3a1196b86d991159b26
MD5 01d01c5d1b1e08a63811776be0327c83
BLAKE2b-256 ff0c252bde6be3246994d57815474c3a82de76869e3b3510bee4d7fb8fa4980e

See more details on using hashes here.

File details

Details for the file bam_masterdata-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: bam_masterdata-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 448.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for bam_masterdata-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1e213dd3fcddb2b26ac3883ecb239de342c4b7d8cc4dc282eb02a19b10f14f61
MD5 b9d05fed22fbab495d634bdbf4683ca8
BLAKE2b-256 bed3ba23155a2f67efe7d3abf3c2e00f7e003462e363976e000efe50a87dedb4

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page