Aurora DSQL adapter for Django
Project description
Aurora DSQL adapter for Django
This is the adapter for enabling development of Django applications using Aurora DSQL.
Requirements
Django
Aurora DSQL adapter for Django supports Django 4.2+ with the following versions:
- Django 4.2.x (LTS)
- Django 5.0.x
- Django 5.1.x
- Django 5.2.x (LTS)
Required Python versions
aurora_dsql_django requires Python 3.10 or later.
Please see the link below for more detail to install Python:
AWS credentials
Aurora DSQL Django adapter generates the IAM db auth token for every connection. DB auth token is generated using AWS credentials. You must have configured valid AWS credentials to be able to use the adapter. If not the connection to the cluster will not succeed.
Getting Started
First, install the adapter using pip:
pip install aurora_dsql_django
Define Aurora DSQL as the Engine for the Django App
Change the DATABASES variable in settings.py of your Django app. An example
is show below
DATABASES = {
'default': {
'HOST': '<your_cluster_id>.dsql.<region>.on.aws',
'USER': 'admin', # or another user you have defined
'NAME': 'postgres',
'ENGINE': 'aurora_dsql_django',
'OPTIONS': {
'sslmode': 'require',
# (optional) AWS profile name for credentials
# 'profile': 'my-aws-profile',
# (optional) Token duration in seconds (default: 900)
# 'token_duration_secs': 900,
}
}
}
If you need certificate verification, use 'sslmode': 'verify-full' with 'sslrootcert':
'OPTIONS': {
'sslmode': 'verify-full',
'sslrootcert': '/path/to/cert.pem', # or omit to use system certs
}
For more info follow the Aurora DSQL with Django example
Features and Limitations
- Adapter Behavior - How the Aurora DSQL adapter for Django modifies Django behavior for Aurora DSQL compatibility
- Known Issues - Known limitations and workarounds
Development
Install uv and then:
$ git clone https://github.com/awslabs/aurora-dsql-orms
$ cd aurora-dsql-orms/python/django
$ uv sync
uv will automatically install the correct Python version and manage the virtual environment.
Running Tests
You can run the unit tests with this command:
$ pytest --cov=aurora_dsql_django aurora_dsql_django/tests/unit/ --cov-report=xml
You can run the integration tests with this command:
$ export CLUSTER_ENDPOINT=<your cluster endpoint>
$ export DJANGO_SETTINGS_MODULE=aurora_dsql_django.tests.test_settings
$ pytest -v aurora_dsql_django/tests/integration/
Documentation
Sphinx is used for documentation. You can generate HTML locally with the following:
$ uv sync
$ uv run sphinx-build docs/source build
Getting Help
Please use these community resources for getting help.
- Open a support ticket with AWS Support.
- If you think you may have found a bug, please open an issue.
Opening Issues
If you encounter a bug with the Aurora DSQL Django adapter, we would like to hear about it. Please search the existing issues and see if others are also experiencing the issue before opening a new issue. When opening a new issue please follow the template.
The GitHub issues are intended for bug reports and feature requests. For help and questions with using Aurora DSQL Django adapter, please make use of the resources listed in the Getting Help section. Keeping the list of open issues lean will help us respond in a timely manner.
License
This library is licensed under the Apache 2.0 License.
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file aurora_dsql_django-0.4.1.tar.gz.
File metadata
- Download URL: aurora_dsql_django-0.4.1.tar.gz
- Upload date:
- Size: 104.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2842d511c661c2fc52c93889de45b1e3ee4c07957f3f40cb579b0605387dd979
|
|
| MD5 |
f19474feaebd5423042713344030b0b3
|
|
| BLAKE2b-256 |
f4632762b043f0911c365ce43e77aff9b38cd97fba30d33f19b2402ce4e7ecba
|
Provenance
The following attestation bundles were made for aurora_dsql_django-0.4.1.tar.gz:
Publisher:
python-django-release.yml on awslabs/aurora-dsql-orms
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
aurora_dsql_django-0.4.1.tar.gz -
Subject digest:
2842d511c661c2fc52c93889de45b1e3ee4c07957f3f40cb579b0605387dd979 - Sigstore transparency entry: 874250318
- Sigstore integration time:
-
Permalink:
awslabs/aurora-dsql-orms@93c13b3437738f5645e42de43e9c156096e23030 -
Branch / Tag:
refs/tags/python/django/v0.4.1 - Owner: https://github.com/awslabs
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-django-release.yml@93c13b3437738f5645e42de43e9c156096e23030 -
Trigger Event:
push
-
Statement type:
File details
Details for the file aurora_dsql_django-0.4.1-py3-none-any.whl.
File metadata
- Download URL: aurora_dsql_django-0.4.1-py3-none-any.whl
- Upload date:
- Size: 22.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d2b3d6be89e8634fc936d1c47dc57f0a26d24629e683c5d1224864be52a3b17a
|
|
| MD5 |
33809feec6f08fcef025e9f63747ed27
|
|
| BLAKE2b-256 |
1c229bf07a776039d0928cb7f7de40cc66e84dac21ba769837e34cab29b7f6d9
|
Provenance
The following attestation bundles were made for aurora_dsql_django-0.4.1-py3-none-any.whl:
Publisher:
python-django-release.yml on awslabs/aurora-dsql-orms
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
aurora_dsql_django-0.4.1-py3-none-any.whl -
Subject digest:
d2b3d6be89e8634fc936d1c47dc57f0a26d24629e683c5d1224864be52a3b17a - Sigstore transparency entry: 874250369
- Sigstore integration time:
-
Permalink:
awslabs/aurora-dsql-orms@93c13b3437738f5645e42de43e9c156096e23030 -
Branch / Tag:
refs/tags/python/django/v0.4.1 - Owner: https://github.com/awslabs
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
python-django-release.yml@93c13b3437738f5645e42de43e9c156096e23030 -
Trigger Event:
push
-
Statement type: