An example of how to trigger Octue services from a django webserver, allowing you to put a paywall, permissions, auth, throttling, schedulers or other stage gates / triggers between the outside world and your scientific data services.
Exa is a basic django webserver, utilising django-twined
to interface between django and the octue services in your GCP project.
The main reason for us building Exa is as a demonstration of our communications architecture, allowing us to run load tests to improve communications and stability of the way in which we deploy and communicate with Octue services.
This with a view to working with GCP and support partners to improve our Architecture. Click here to see a full introduction of the issues this repository demonstrates.
Exa is a basic django webserver, utilising django-gcp
to manage django storage and events on GCP in a serverless way.
Together, the terraform
directory, the server.settings
, and the .github/workflows/cd.yml
files provide a complete working example of how to run django in a serverless cloud environment on GCP, and all the infrastructure required to do so.
Feel free to use this as an example of how to use django on GCP, even without django-twined
and the octue service aspects.
We keep django-gcp
and django-twined
moving, adding new features regularly but we have scant internal resource here at Octue. As a result, this example may become outdated - we have good intentions but are busy helping climate scientists and renewables engineers fix their problems, so that comes first!
If you'd like us to help you set up django on GCP, or work with you on your data engineering infrastructure, please get in touch - be assured all our work doubles down into making the OSS software that you use even better :)