Configuration#

Once in a while, you will require adding new configuration options to the project. There are two ways to do it:

1. Add the variable as environment variable. If the variable changes, project will need re-deployment. This is useful if the variable does not change too frequently and accessed frequently. To add the variable you’ll need to edit related environment file in conf folder and add the definition to Django settings file.

Warning

Avoid loading configuration from files or any other medium that is not environment variables. Do not override environment variables dynamically. The configuration should only be fetched from statically loaded environment variables (i.e., Docker compose env or env_file directives or Kubernetes envFrom directive).

2. Add the variable dynamically, using ProjectVariable table. In this case, the variable will be fetched from the database (and will be cached in Redis for subsequent access). This is useful if the variable changes frequently and re-deployment is too disruptive.