Skip to main content

Marinerg-i Facility Service

The record of MARINERG-i's marine renewable energy test facilities and their equipment: who runs each facility, where it is, and the persistent identifiers (ROR, PIDINST) that let the wider research infrastructure cite it.

It is an installable Django app, marinerg_facility, exposing a REST API. It runs standalone for development, and in production is composed into the Test Access Service, which depends on it. Built for the Marinerg-i preparatory phase project.

Quick start

Inspect the script, then run it:

./infra/quick_start.sh

It creates a virtualenv, installs dependencies, loads the demo settings from infra/dev.txt, sets up a local database, creates an admin user, and starts the development server. Then browse to localhost:8000/api for the facilities, equipment and tag endpoints.

Development

uv sync --group dev
source infra/set_dev_environment.sh
uv run python manage.py migrate
uv run python manage.py runserver

Tests, linting and types — the same commands CI runs:

uv run python -m pytest        # add --no-cov to drop the coverage report
uv run ruff format --check src tests
uv run ruff check src tests
uv run mypy src

Tests run against SQLite by default; CI runs them against Postgres, which is what production uses. The full-text-search tests self-skip on SQLite, so run them against Postgres before trusting a search change.

More detail in the Developer Guide.

Partner ROR identifiers

Partner facilities carry a ROR identifier. The values live in a reviewable data file, applied by a management command that validates each ROR — format, checksum, and existence in the public registry — before writing it:

uv run python manage.py populate_ror --emit-template > facility_rors.yaml
# fill in each `ror:` field, then apply (idempotent)
uv run python manage.py populate_ror --mapping facility_rors.yaml

--dry-run previews, --no-verify skips the registry check, --strict fails if a partner facility is left without one, and --all widens the template beyond partners. See populate_ror --help.

Release

Published by the shared python-package CI component: run a web pipeline with RELEASE_FIELD=patch|minor|major. Consumers pin this package exactly, so a release is only visible once they bump their pin.

Licensing

Copyright of the Irish Centre for High End Computing (ICHEC), released under the MIT License. See LICENSE for the full terms.

Download files

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

Source Distribution

marinerg_facility-2.2.0.tar.gz (48.7 kB view details)

Uploaded Source

Built Distribution

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

marinerg_facility-2.2.0-py3-none-any.whl (41.6 kB view details)

Uploaded Python 3

File details

Details for the file marinerg_facility-2.2.0.tar.gz.

File metadata

  • Download URL: marinerg_facility-2.2.0.tar.gz
  • Upload date:
  • Size: 48.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.14.6

File hashes

Hashes for marinerg_facility-2.2.0.tar.gz
Algorithm Hash digest
SHA256 e2eda3808b164f580880a06b8bb585d447bb4a1188d2d031e5e3e5062067b251
MD5 1ed6079802dd4c37de17a39a0728b12f
BLAKE2b-256 1b0f18df05cfea5082cca36d54fe8e1e750e2949efb45473fba3dfacbed79aff

See more details on using hashes here.

File details

Details for the file marinerg_facility-2.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for marinerg_facility-2.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9c1fd107b67e5cd853a81ad7ecc6d9de0fc32ae14bc1db648e526d708bb2a427
MD5 55d032738210bbf7b8a9bd689d58f7f4
BLAKE2b-256 4a11b9ee224c0f5dfe9a5177df49355293edfac2147996236e043d2231cf4511

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