Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

hdn-research-environment

A Django app for supporting cloud-native research environments

Deployment configuration

The host Django project supplies the site's branding and cloud identity domain:

  • SITE_NAME supplies the name shown in billing instructions (and existing emails).
  • SUPPORT_EMAIL, if set, supplies support links and error messages. Otherwise CONTACT_EMAIL, then DEFAULT_FROM_EMAIL, is used. Display-name addresses such as PhysioNet Support <help@physionet.org> are accepted; links use the bare email.
  • CLOUD_RESEARCH_ENVIRONMENTS_ORGANIZATION_DOMAIN optionally overrides the domain used by the collaborator forms, for example physionet.org. When unset or empty, it is derived from the signed-in user's cloud identity email, not their login email or the site's hostname. Without either source, the forms use ordinary email validation; server-side collaborator access checks still apply.

These are Django settings, not environment variables read by this package. No additional context processor is required. The owner is identified by their full cloud identity email and is excluded from collaborator removal controls.

Feature settings

  • CLOUD_RESEARCH_ENVIRONMENTS_ENABLE_DRAFT_WORKBENCHES (default False) lets researchers attach their own editable draft projects to new Jupyter and RStudio workbenches with a read-write mount. While it is off, the creation form offers only published projects, a draft selection is rejected, and draft state changes queue no background work. Workbenches created while it was on are left as they are. While it is on, a draft is offered only once its upload agreement has been accepted (the host's ActiveProject.upload_agreement_accepted(), which honours UPLOAD_AGREEMENT_START_DATE). Other drafts are listed above the form with a link to accept the agreement.

  • CLOUD_RESEARCH_ENVIRONMENTS_EXPIRED_ACCESS_ENFORCEMENT (default "dry_run") controls the tasks that stop, and 14 days later destroy, workbenches whose data access has expired:

    • "off": the tasks do nothing.
    • "dry_run": each workbench an enforcing run would stop or destroy is logged at INFO as a JSON line prefixed Expired-access dry run:. Nothing is stopped, destroyed or mailed, and no termination is queued.
    • "enforce": the workbenches are stopped, the user is mailed, and termination is queued.

    An unrecognised value is treated as "dry_run" and logged as an error.

Regression tests

The Python tests run in a configured PhysioNet Django host with this checkout on PYTHONPATH and cloud research environments enabled. Use a dedicated test database (not the host's development database):

python manage.py test environment.tests.test_deployment_config environment.tests.test_services.CreateCloudIdentityTestCase --settings=<host_test_settings>

The collaborator submit handlers also have dependency-free tests using Node.js 18 or newer:

node --test environment/tests/test_collaborator_domains.cjs

Publishing a new version

Create the package:

python setup.py sdist

Publish the package:

python -m twine upload dist/*

Metadata

Release files for hdn-research-environment 3.2.27rc1

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

Source distribution (sdist)

Source distribution for hdn-research-environment 3.2.27rc1
File Size Uploaded
hdn_research_environment-3.2.27rc1.tar.gz 157.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for hdn-research-environment 3.2.27rc1
File Interpreter ABI Platform
hdn_research_environment-3.2.27rc1-py3-none-any.whl Python 3 none any Details

Total release size: 364.8 kB

Release files / hdn_research_environment-3.2.27rc1.tar.gz

Download URL hdn_research_environment-3.2.27rc1.tar.gz
Size 157.8 kB
Tags Source
SHA-256 checksum
How to use checksums
64db83755c8d99da4f9b7ed052a42b2d8ebae3831e3eb9eeeec956e38e2b0b4c
BLAKE2b-256 checksum
How to use checksums
e682eb98a7d4f32f5ecc5562fd7f7aba5f56abf55ae72322e23b3b6e82df32b7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.1

Release files / hdn_research_environment-3.2.27rc1-py3-none-any.whl

Download URL hdn_research_environment-3.2.27rc1-py3-none-any.whl
Size 207.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
41fc2a39c833d602ad9b373e27f9375a8e1bf62f8b132e1690b961bcd6bcc82b
BLAKE2b-256 checksum
How to use checksums
618ce7f6735eda3fcb4cf8c9151f3a102c57525f17ba3ac6c5ac013afc1ac60c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.13.1

Release history Release notifications | RSS feed

3.2.27

2 release files

This release

3.2.27rc1 This release

2 release files

3.2.26

2 release files

3.2.25

2 release files

3.2.24

2 release files

3.2.23

2 release files

3.2.22

2 release files

3.2.21

2 release files

3.2.20

2 release files

3.2.19

1 release file

3.2.17

1 release file

3.2.15

1 release file

3.2.14

1 release file

3.2.13

1 release file

3.2.12

1 release file

3.2.11

1 release file

3.2.10

1 release file

3.2.9

1 release file

3.2.8

1 release file

3.2.7

1 release file

3.2.6

1 release file

3.2.5

1 release file

3.2.4

1 release file

3.2.3

1 release file

3.2.2

1 release file

3.2.1

1 release file

3.2.0

1 release file

3.1.6

1 release file

3.1.5

1 release file

3.1.4

1 release file

3.1.3

1 release file

3.1.2

1 release file

3.1.1

1 release file

3.1.0

1 release file

3.0.6

1 release file

3.0.5

1 release file

3.0.4

1 release file

3.0.3

1 release file

3.0.2

1 release file

3.0.1

1 release file

3.0.0

1 release file

2.4.0

1 release file

2.3.8

1 release file

2.3.7

1 release file

2.3.6

1 release file

2.3.5

1 release file

2.3.4

1 release file

2.3.3

1 release file

2.3.2

1 release file

2.3.1

1 release file

2.3.0

1 release file

2.2.0

1 release file

2.1.10

1 release file

2.1.9

1 release file

2.1.8

1 release file

2.1.7

1 release file

2.1.6

1 release file

2.1.5

1 release file

2.1.4

1 release file

2.1.3

1 release file

2.1.2

1 release file

2.1.1

1 release file

2.1.0

1 release file

2.0.7

1 release file

2.0.6

1 release file

2.0.5

1 release file

2.0.4

1 release file

2.0.3

1 release file

2.0.2

1 release file

2.0.1

1 release file

2.0.0

1 release file

1.5.3

1 release file

1.5.2

1 release file

1.5.1

1 release file

1.5.0

1 release file

1.4.0

1 release file

1.2.2

1 release file

1.2.1

1 release file

1.2.0

1 release file

1.1.1

1 release file

1.1.0

1 release file

1.0.0

1 release file

0.0.6

1 release file

0.0.5

1 release file

0.0.4

1 release file

0.0.3

1 release file

0.0.2

1 release file

0.0.1

1 release file

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