summaryrefslogtreecommitdiffstats
path: root/conf
diff options
context:
space:
mode:
authorMatthew Lemon <y@yulqen.org>2024-05-23 09:52:29 +0100
committerMatthew Lemon <y@yulqen.org>2024-05-23 09:52:29 +0100
commit5f5a3de40a8d2fa9c6067c2b0fa567ff11419e80 (patch)
treedee287f6b3f5a7b671388f1f15972f1d9073b773 /conf
parent88dacb9f57a40c96f48c359275fe11f85aa1f051 (diff)
wip: moved config to base.py
Diffstat (limited to 'conf')
-rw-r--r--conf/settings/base.py155
1 files changed, 155 insertions, 0 deletions
diff --git a/conf/settings/base.py b/conf/settings/base.py
new file mode 100644
index 0000000..a16c488
--- /dev/null
+++ b/conf/settings/base.py
@@ -0,0 +1,155 @@
+"""
+Django settings for ded project.
+
+Generated by 'django-admin startproject' using Django 4.0.5.
+
+For more information on this file, see
+https://docs.djangoproject.com/en/4.0/topics/settings/
+
+For the full list of settings and their values, see
+https://docs.djangoproject.com/en/4.0/ref/settings/
+"""
+from pathlib import Path
+
+# Build paths inside the project like this: BASE_DIR / 'subdir'.
+BASE_DIR = Path(__file__).resolve().parent.parent
+
+# For staging (on OpenShift)
+# was getting 403, CSRF verification failed error
+# doesn't work
+CSRF_COOKIE_SECURE = True
+SESSION_COOKIE_SECURE = True
+CSRF_TRUSTED_ORIGINS = [
+ 'https://*.apps.ocp1.azure.dso.digital.mod.uk',
+]
+
+# Quick-start development settings - unsuitable for production
+# See https://docs.djangoproject.com/en/4.0/howto/deployment/checklist/
+
+# SECURITY WARNING: keep the secret key used in production secret!
+# TODO Replace with environment variable
+SECRET_KEY = "django-insecure-z*tv24r*)-$q*l1=l64))qocs1x$*10c&6w_@ld^dw#=q#ndy2"
+
+# SECURITY WARNING: don't run with debug turned on in production!
+DEBUG = True
+
+ALLOWED_HOSTS = ["nginx-proxy-route-ho-defnucsyr-ded.apps.ocp1.azure.dso.digital.mod.uk", "localhost", "127.0.0.1"]
+
+STATIC_ROOT = BASE_DIR / "static"
+
+# Application definition
+INSTALLED_APPS = [
+ "instruments.apps.InstrumentsConfig",
+ "engagements.apps.EngagementsConfig",
+ "myuser.apps.AuthuserConfig",
+ "core.apps.CoreConfig",
+ "django.contrib.admin",
+ "django.contrib.auth",
+ "django.contrib.contenttypes",
+ "django.contrib.sessions",
+ "django.contrib.messages",
+ "django.contrib.staticfiles",
+ "crispy_forms",
+ "django_htmx",
+ # "debug_toolbar",
+]
+
+
+# needed for debug_toolbar
+INTERNAL_IPS = ["127.0.0.1", "localhost"]
+
+# DEBUG_TOOLBAR_PANELS = ["debug_toolbar.panels.request.RequestPanel"]
+
+# SHOW_TOOLBAR_CALLBACK = "debug_toolbar.middleware.show_toolbar"
+
+MIDDLEWARE = [
+ "django.middleware.security.SecurityMiddleware",
+ # "debug_toolbar.middleware.DebugToolbarMiddleware",
+ "django.contrib.sessions.middleware.SessionMiddleware",
+ "django.middleware.common.CommonMiddleware",
+ "django.middleware.csrf.CsrfViewMiddleware",
+ "django.contrib.auth.middleware.AuthenticationMiddleware",
+ "django.contrib.messages.middleware.MessageMiddleware",
+ "django_htmx.middleware.HtmxMiddleware",
+ "django.middleware.clickjacking.XFrameOptionsMiddleware",
+]
+
+ROOT_URLCONF = "ded.urls"
+
+# new auth user
+AUTH_USER_MODEL = "myuser.TeamUser"
+
+
+TEMPLATES = [
+ {
+ "BACKEND": "django.template.backends.django.DjangoTemplates",
+ "DIRS": [BASE_DIR / "templates"],
+ "APP_DIRS": True,
+ "OPTIONS": {
+ "context_processors": [
+ "django.template.context_processors.debug",
+ "django.template.context_processors.request",
+ "django.contrib.auth.context_processors.auth",
+ "django.contrib.messages.context_processors.messages",
+ ],
+ },
+ },
+]
+
+CRISPY_ALLOWED_TEMPLATE_PACKS = ("w3",)
+CRISPY_TEMPLATE_PACK = "w3"
+
+WSGI_APPLICATION = "ded.wsgi.application"
+
+
+# Database
+# https://docs.djangoproject.com/en/4.0/ref/settings/#databases
+
+DATABASES = {
+ "default": {
+ "ENGINE": "django.db.backends.sqlite3",
+ "NAME": BASE_DIR / "db.sqlite3",
+ }
+}
+
+
+# Password validation
+# https://docs.djangoproject.com/en/4.0/ref/settings/#auth-password-validators
+
+AUTH_PASSWORD_VALIDATORS = [
+ {
+ "NAME": "django.contrib.auth.password_validation.UserAttributeSimilarityValidator",
+ },
+ {
+ "NAME": "django.contrib.auth.password_validation.MinimumLengthValidator",
+ },
+ {
+ "NAME": "django.contrib.auth.password_validation.CommonPasswordValidator",
+ },
+ {
+ "NAME": "django.contrib.auth.password_validation.NumericPasswordValidator",
+ },
+]
+
+
+# Internationalization
+# https://docs.djangoproject.com/en/4.0/topics/i18n/
+
+LANGUAGE_CODE = "en-us"
+
+TIME_ZONE = "UTC"
+
+USE_I18N = True
+
+USE_TZ = False
+
+
+# Static files (CSS, JavaScript, Images)
+# https://docs.djangoproject.com/en/4.0/howto/static-files/
+
+STATIC_URL = "static/"
+
+# Default primary key field type
+# https://docs.djangoproject.com/en/4.0/ref/settings/#default-auto-field
+
+DEFAULT_AUTO_FIELD = "django.db.models.BigAutoField"