summaryrefslogtreecommitdiffstats
path: root/takahe/settings/production.py
diff options
context:
space:
mode:
Diffstat (limited to 'takahe/settings/production.py')
-rw-r--r--takahe/settings/production.py96
1 files changed, 0 insertions, 96 deletions
diff --git a/takahe/settings/production.py b/takahe/settings/production.py
deleted file mode 100644
index b1034ef..0000000
--- a/takahe/settings/production.py
+++ /dev/null
@@ -1,96 +0,0 @@
-import os
-import sys
-from typing import Optional
-
-from .base import * # noqa
-
-# Ensure debug features are off
-DEBUG = bool(os.environ.get("TAKAHE__SECURITY_HAZARD__DEBUG", False))
-
-# TODO: Allow better setting of allowed_hosts, if we need to
-ALLOWED_HOSTS = ["*"]
-
-CONN_MAX_AGE = 60
-
-### User-configurable options, pulled from the environment ###
-
-# Secret key
-try:
- SECRET_KEY = os.environ["TAKAHE_SECRET_KEY"]
-except KeyError:
- print("You must specify the TAKAHE_SECRET_KEY environment variable!")
- sys.exit(1)
-
-# SSL proxy header
-if "TAKAHE_SECURE_HEADER" in os.environ:
- SECURE_PROXY_SSL_HEADER = (
- "HTTP_" + os.environ["TAKAHE_SECURE_HEADER"].replace("-", "_").upper(),
- "https",
- )
-
-# Fallback domain for links
-MAIN_DOMAIN = os.environ["TAKAHE_MAIN_DOMAIN"]
-if "/" in MAIN_DOMAIN:
- print("TAKAHE_MAIN_DOMAIN should be just the domain name - no https:// or path")
- sys.exit(1)
-
-# Email config
-if os.environ.get("TAKAHE_EMAIL_CONSOLE_ONLY"):
- EMAIL_BACKEND = "django.core.mail.backends.console.EmailBackend"
- SERVER_EMAIL = "test@example.com"
-else:
- SERVER_EMAIL = os.environ["TAKAHE_EMAIL_FROM"]
- if "TAKAHE_EMAIL_SENDGRID_KEY" in os.environ:
- EMAIL_HOST = "smtp.sendgrid.net"
- EMAIL_PORT = 587
- EMAIL_HOST_USER: Optional[str] = "apikey"
- EMAIL_HOST_PASSWORD: Optional[str] = os.environ["TAKAHE_EMAIL_SENDGRID_KEY"]
- EMAIL_USE_TLS = True
- else:
- EMAIL_HOST = os.environ["TAKAHE_EMAIL_HOST"]
- EMAIL_PORT = int(os.environ["TAKAHE_EMAIL_PORT"])
- EMAIL_HOST_USER = os.environ.get("TAKAHE_EMAIL_USER")
- EMAIL_HOST_PASSWORD = os.environ.get("TAKAHE_EMAIL_PASSWORD")
- EMAIL_USE_SSL = EMAIL_PORT == 465
- EMAIL_USE_TLS = EMAIL_PORT == 587
-
-AUTO_ADMIN_EMAIL = os.environ.get("TAKAHE_AUTO_ADMIN_EMAIL")
-
-# Media storage
-MEDIA_BACKEND = os.environ.get("TAKAHE_MEDIA_BACKEND", None)
-if MEDIA_BACKEND == "local":
- # Note that this MUST be a fully qualified URL in production
- MEDIA_URL = os.environ.get("TAKAHE_MEDIA_URL", "/media/")
- MEDIA_ROOT = os.environ.get("TAKAHE_MEDIA_ROOT", BASE_DIR / "media")
-elif MEDIA_BACKEND == "gcs":
- DEFAULT_FILE_STORAGE = "storages.backends.gcloud.GoogleCloudStorage"
- GS_BUCKET_NAME = os.environ["TAKAHE_MEDIA_BUCKET"]
- GS_QUERYSTRING_AUTH = False
-elif MEDIA_BACKEND == "s3":
- DEFAULT_FILE_STORAGE = "storages.backends.s3boto3.S3Boto3Storage"
- AWS_STORAGE_BUCKET_NAME = os.environ["TAKAHE_MEDIA_BUCKET"]
-else:
- print("Unknown TAKAHE_MEDIA_BACKEND value")
- sys.exit(1)
-
-# Stator secret token
-STATOR_TOKEN = os.environ.get("TAKAHE_STATOR_TOKEN")
-
-# Error email recipients
-if "TAKAHE_ERROR_EMAILS" in os.environ:
- ADMINS = [("Admin", e) for e in os.environ["TAKAHE_ERROR_EMAILS"].split(",")]
-
-# Sentry integration
-if "SENTRY_DSN" in os.environ:
- import sentry_sdk
- from sentry_sdk.integrations.django import DjangoIntegration
-
- sentry_sdk.init(
- dsn=os.environ["SENTRY_DSN"],
- integrations=[
- DjangoIntegration(),
- ],
- traces_sample_rate=1.0,
- send_default_pii=True,
- )
- SENTRY_ENABLED = True