fix(settings): ensure environment variables always override config

DJANGO_STATIC_ROOT is required in order to run `collectstatic` in
a packaging environment - manually specifying it as an environment
variable should always override any config files that may exist.
pull/147/head
Xiretza 2 years ago
parent 5f455e55b5
commit c4475535ea

@ -126,13 +126,12 @@ USE_TZ = True
# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/3.0/howto/static-files/
STATIC_ROOT = os.path.join(BASE_DIR, "static")
STATIC_URL = "/static/"
STATIC_ROOT = os.environ.get("DJANGO_STATIC_ROOT", os.path.join(BASE_DIR, "static"))
MEDIA_ROOT = os.environ.get("DJANGO_MEDIA_ROOT", os.path.join(BASE_DIR, "media"))
MEDIA_ROOT = os.path.join(BASE_DIR, "media")
MEDIA_URL = "/user-media/"
# Define where to find configuration files
config_locations = [
os.environ.get("ETEBASE_EASY_CONFIG_PATH", ""),
@ -193,6 +192,12 @@ if any(os.path.isfile(x) for x in config_locations):
SENDFILE_BACKEND = "etebase_server.fastapi.sendfile.backends.simple"
SENDFILE_ROOT = MEDIA_ROOT
if "DJANGO_STATIC_ROOT" in os.environ:
STATIC_ROOT = os.environ["DJANGO_STATIC_ROOT"]
if "DJANGO_MEDIA_ROOT" in os.environ:
MEDIA_ROOT = os.environ["DJANGO_MEDIA_ROOT"]
# Make an `etebase_server_settings` module available to override settings.
try:
from etebase_server_settings import *

Loading…
Cancel
Save