S3 blob storage for guillotina.
The bucket name is built from the container id and the 'bucket' setting:
"<container>.<bucket>"
Example config.json:
"applications": [
"guillotina_s3storage"
]
"load_utilities": {
"s3": {
"provides": "guillotina_s3storage.interfaces.IS3BlobStore",
"factory": "guillotina_s3storage.storage.S3BlobStore",
"settings": {
"aws_client_id": "<client id>",
"aws_client_secret": "<client secret>",
"bucket": "<bucket name suffix>",
"bucket_name_format": "{container}{delimiter}{base}",
"endpoint_url": null,
"ssl": true,
"verify_ssl": null,
"region_name": null
}
}
}
Using pip (requires Python > 3.7)
python3.7 -m venv .
./bin/pip install -e .[test]
pre-commit install