diff --git a/helm/settings_local.py b/helm/settings_local.py index 26d8ca8e05..8c786549cd 100644 --- a/helm/settings_local.py +++ b/helm/settings_local.py @@ -25,61 +25,20 @@ ) IDSUBMIT_IDNITS_BINARY = "/usr/local/bin/idnits" -IDSUBMIT_REPOSITORY_PATH = "/test/id/" -IDSUBMIT_STAGING_PATH = "/test/staging/" -AGENDA_PATH = "/assets/www6s/proceedings/" -MEETINGHOST_LOGO_PATH = AGENDA_PATH - -USING_DEBUG_EMAIL_SERVER=True -EMAIL_HOST= "localhost" -EMAIL_PORT=2025 - -MEDIA_BASE_DIR = "/assets" -MEDIA_ROOT = MEDIA_BASE_DIR + "/media/" -MEDIA_URL = "/media/" - -PHOTOS_DIRNAME = "photo" -PHOTOS_DIR = MEDIA_ROOT + PHOTOS_DIRNAME - -SUBMIT_YANG_CATALOG_MODEL_DIR = "/assets/ietf-ftp/yang/catalogmod/" -SUBMIT_YANG_DRAFT_MODEL_DIR = "/assets/ietf-ftp/yang/draftmod/" -SUBMIT_YANG_INVAL_MODEL_DIR = "/assets/ietf-ftp/yang/invalmod/" -SUBMIT_YANG_IANA_MODEL_DIR = "/assets/ietf-ftp/yang/ianamod/" -SUBMIT_YANG_RFC_MODEL_DIR = "/assets/ietf-ftp/yang/rfcmod/" +USING_DEBUG_EMAIL_SERVER=os.environ.get("USING_DEBUG_EMAIL_SERVER",True) +EMAIL_HOST= os.environ.get("EMAIL_HOST","localhost") +EMAIL_PORT=os.environ.get("EMAIL_PORT", 2025) # Set INTERNAL_IPS for use within Docker. See https://knasmueller.net/fix-djangos-debug-toolbar-not-showing-inside-docker import socket hostname, _, ips = socket.gethostbyname_ex(socket.gethostname()) INTERNAL_IPS = [".".join(ip.split(".")[:-1] + ["1"]) for ip in ips] -# DEV_TEMPLATE_CONTEXT_PROCESSORS = [ -# 'ietf.context_processors.sql_debug', -# ] - -DOCUMENT_PATH_PATTERN = "/assets/ietfdata/doc/{doc.type_id}/" -INTERNET_DRAFT_PATH = "/assets/ietf-ftp/internet-drafts/" -RFC_PATH = "/assets/ietf-ftp/rfc/" -CHARTER_PATH = "/assets/ietf-ftp/charter/" -BOFREQ_PATH = "/assets/ietf-ftp/bofreq/" -CONFLICT_REVIEW_PATH = "/assets/ietf-ftp/conflict-reviews/" -STATUS_CHANGE_PATH = "/assets/ietf-ftp/status-changes/" -INTERNET_DRAFT_ARCHIVE_DIR = "/assets/archive/id" -INTERNET_ALL_DRAFTS_ARCHIVE_DIR = "/assets/archive/id" -BIBXML_BASE_PATH = "/assets/ietfdata/derived/bibxml" -IDSUBMIT_REPOSITORY_PATH = INTERNET_DRAFT_PATH - -NOMCOM_PUBLIC_KEYS_DIR = "data/nomcom_keys/public_keys/" -SLIDE_STAGING_PATH = "/test/staging/" - DE_GFM_BINARY = "/usr/local/bin/de-gfm" -# OIDC configuration -SITE_URL = os.environ.get("OIDC_SITE_URL") - -# todo: parameterize memcached url in settings.py -MEMCACHED_HOST = os.environ.get("MEMCACHED_SERVICE_HOST", "127.0.0.1") -MEMCACHED_PORT = os.environ.get("MEMCACHED_SERVICE_PORT", "11211") +# Duplicating production cache from settings.py and +# using it whether we're in production mode or not from ietf import __version__ CACHES = { "default": { @@ -119,6 +78,3 @@ }, }, } - -# Normally only set for debug, but needed until we have a real FS -DJANGO_VITE_MANIFEST_PATH = os.path.join(BASE_DIR, 'static/dist-neue/manifest.json') diff --git a/ietf/settings.py b/ietf/settings.py index e5c281fd89..35a41ca221 100644 --- a/ietf/settings.py +++ b/ietf/settings.py @@ -125,6 +125,10 @@ # In the future (relative to 4.2), the default will become 'django.db.models.BigAutoField.' DEFAULT_AUTO_FIELD = 'django.db.models.AutoField' +# OIDC configuration +_SITE_URL = os.environ.get("OIDC_SITE_URL", None) +if _SITE_URL is not None: + SITE_URL=_SITE_URL if SERVER_MODE == 'production': MEDIA_ROOT = '/a/www/www6s/lib/dt/media/' @@ -1204,43 +1208,46 @@ def skip_unreadable_post(record): MIDDLEWARE += DEV_MIDDLEWARE TEMPLATES[0]['OPTIONS']['context_processors'] += DEV_TEMPLATE_CONTEXT_PROCESSORS +MEMCACHED_HOST = os.environ.get("MEMCACHED_SERVICE_HOST", "127.0.0.1") +MEMCACHED_PORT = os.environ.get("MEMCACHED_SERVICE_PORT", "11211") + if 'CACHES' not in locals(): if SERVER_MODE == 'production': CACHES = { - 'default': { - 'BACKEND': 'ietf.utils.cache.LenientMemcacheCache', - 'LOCATION': '127.0.0.1:11211', - 'VERSION': __version__, - 'KEY_PREFIX': 'ietf:dt', - 'KEY_FUNCTION': lambda key, key_prefix, version: ( + "default": { + "BACKEND": "ietf.utils.cache.LenientMemcacheCache", + "LOCATION": f"{MEMCACHED_HOST}:{MEMCACHED_PORT}", + "VERSION": __version__, + "KEY_PREFIX": "ietf:dt", + "KEY_FUNCTION": lambda key, key_prefix, version: ( f"{key_prefix}:{version}:{sha384(str(key).encode('utf8')).hexdigest()}" ), }, - 'sessions': { - 'BACKEND': 'ietf.utils.cache.LenientMemcacheCache', - 'LOCATION': '127.0.0.1:11211', + "sessions": { + "BACKEND": "ietf.utils.cache.LenientMemcacheCache", + "LOCATION": f"{MEMCACHED_HOST}:{MEMCACHED_PORT}", # No release-specific VERSION setting. - 'KEY_PREFIX': 'ietf:dt', + "KEY_PREFIX": "ietf:dt", }, - 'htmlized': { - 'BACKEND': 'django.core.cache.backends.filebased.FileBasedCache', - 'LOCATION': '/a/cache/datatracker/htmlized', - 'OPTIONS': { - 'MAX_ENTRIES': 100000, # 100,000 + "htmlized": { + "BACKEND": "django.core.cache.backends.filebased.FileBasedCache", + "LOCATION": "/a/cache/datatracker/htmlized", + "OPTIONS": { + "MAX_ENTRIES": 100000, # 100,000 }, }, - 'pdfized': { - 'BACKEND': 'django.core.cache.backends.filebased.FileBasedCache', - 'LOCATION': '/a/cache/datatracker/pdfized', - 'OPTIONS': { - 'MAX_ENTRIES': 100000, # 100,000 + "pdfized": { + "BACKEND": "django.core.cache.backends.filebased.FileBasedCache", + "LOCATION": "/a/cache/datatracker/pdfized", + "OPTIONS": { + "MAX_ENTRIES": 100000, # 100,000 }, }, - 'slowpages': { - 'BACKEND': 'django.core.cache.backends.filebased.FileBasedCache', - 'LOCATION': '/a/cache/datatracker/slowpages', - 'OPTIONS': { - 'MAX_ENTRIES': 5000, + "slowpages": { + "BACKEND": "django.core.cache.backends.filebased.FileBasedCache", + "LOCATION": "/a/cache/datatracker/slowpages", + "OPTIONS": { + "MAX_ENTRIES": 5000, }, }, }