Skip to main content

Marinerg-i Test Access Service

This is the backend for the Marinerg-i Test Access Portal. Researchers apply for time at marine renewable energy test facilities. A review board evaluates each application, the board chair decides, and accepted applications lead to a facility test report.

It is a Django app with a REST API, built for the Marinerg-i project. The Angular frontend is in marinerg-i/frontend. Run it separately and point it at this backend.

Try it locally

Read infra/quick_start.sh, then run it:

./infra/quick_start.sh

It creates a virtual environment, installs the dependencies, sets up a local database with an admin user, and starts the server. Browse to localhost:8000/api.

Develop

The app reads its settings from the environment. infra/dev.txt has working values for local development. Keep real deployment settings out of the repo.

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

If the server says the secret key is missing, the settings didn't load into your shell.

uv run tox runs every check CI runs: format, lint, types, the tests, the Celery tests, the schema check and the e2e collection. After you change a model or serializer, regenerate the schema and client, and commit them:

uv run python manage.py generate_client marinerg_test_access.client

After you change an access policy, rewrite the deployed sweep's declaration:

WRITE_DECLARATION=1 uv run pytest tests/test_policies.py

To see the portal in every state, load the demo data into an empty database, as docs/demo-data.md explains.

infra/dev.txt sets DJANGO_FRONTEND_URL to the frontend's dev server, so signing in returns you to the frontend, not to this server's port.

PDF summaries

Each submitted application gets a PDF summary, built by Gotenberg. Without it the summary is a zip of the HTML and attachments, so you need it only for the PDF itself and the tests in tests/integration/:

podman run -d --rm -p 3000:3000 gotenberg/gotenberg:8.34.0
GOTENBERG_URL=http://localhost:3000 uv run python runtests.py

utils/gotenberg.py lists its timeout and retry settings.

How an application is reviewed

Each call runs its applications through a review flow: facility review, board review, the chair's decision, then the facility's test report. docs/review-flow.md explains the flow, what is left to people, and who sees whom.

Release

Each pipeline on main has release patch, release minor and release major buttons. Press one to publish that release. Then pin the new version in marinerg-deploy and release its image. The deployment runs migrate and sync_roles.

Licence

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

Metadata

Release files for marinerg-test-access 8.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for marinerg-test-access 8.2.0
File Size Uploaded
marinerg_test_access-8.2.0.tar.gz 396.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for marinerg-test-access 8.2.0
File Interpreter ABI Platform
marinerg_test_access-8.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 791.2 kB

Release files / marinerg_test_access-8.2.0.tar.gz

Download URL marinerg_test_access-8.2.0.tar.gz
Size 396.2 kB
Tags Source
SHA-256 checksum
How to use checksums
0902da4909016eaa86bd9c128b71e5d6c6629acbe69ea0e7917e84ce6fea5e2d
BLAKE2b-256 checksum
How to use checksums
ea86c75edb2f0c6cbb1e7538bd215a42879b6358494feab470801a0eb0736e63
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release files / marinerg_test_access-8.2.0-py3-none-any.whl

Download URL marinerg_test_access-8.2.0-py3-none-any.whl
Size 395.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2890bbf891d86c7c1791ef3afbc11387d0855781260ae66c9ab4321af48373f4
BLAKE2b-256 checksum
How to use checksums
766118d7ef03b6a567a3bca555f7f5040fba089ba852e3c37b9749ff88193c6c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.7

Release history Release notifications | RSS feed

9.2.0

2 release files

9.1.0

2 release files

9.0.1

2 release files

9.0.0

2 release files

8.4.0

2 release files

8.3.0

2 release files

This release

8.2.0 This release

2 release files

8.1.0

2 release files

8.0.0

2 release files

7.2.0

2 release files

7.1.0

2 release files

7.0.0

2 release files

6.2.1

2 release files

6.2.0

2 release files

6.1.0

2 release files

6.0.0

2 release files

5.1.0

2 release files

5.0.0

2 release files

4.0.0

2 release files

3.0.0

2 release files

2.6.1

2 release files

2.6.0

2 release files

2.5.0

2 release files

2.4.1

2 release files

2.4.0

2 release files

2.3.0

2 release files

2.2.0

2 release files

2.1.0

2 release files

2.0.0

2 release files

1.4.0

2 release files

1.3.0

2 release files

1.2.2

2 release files

1.2.1

2 release files

1.2.0

2 release files

1.1.1

2 release files

1.1.0

2 release files

1.0.5

2 release files

1.0.4

2 release files

1.0.3

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.2.5

2 release files

0.2.4

2 release files

0.2.3

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.0.17

2 release files

0.0.16

2 release files

0.0.15

2 release files

0.0.12

2 release files

0.0.9

2 release files

0.0.8

2 release files

0.0.7

2 release files

0.0.6

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page