Add: setup environ

This commit is contained in:
Aroy-Art 2023-08-26 21:36:54 +02:00
parent fbbf97064d
commit 71e1db8517
Signed by: Aroy
GPG key ID: 583642324A1D2070

View file

@ -10,22 +10,36 @@ For the full list of settings and their values, see
https://docs.djangoproject.com/en/4.0/ref/settings/ https://docs.djangoproject.com/en/4.0/ref/settings/
""" """
from pathlib import Path import os, environ
env = environ.Env(
# set casting, default value
DEBUG=(bool, True)
)
# Build paths inside the project like this: BASE_DIR / 'subdir'. # Build paths inside the project like this: BASE_DIR / 'subdir'.
BASE_DIR = Path(__file__).resolve().parent.parent BASE_DIR = os.path.dirname(os.path.dirname(__file__))
CORE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
# Take environment variables from .env file
environ.Env.read_env(os.path.join(BASE_DIR, '.env'))
# Quick-start development settings - unsuitable for production # Quick-start development settings - unsuitable for production
# See https://docs.djangoproject.com/en/4.0/howto/deployment/checklist/ # See https://docs.djangoproject.com/en/4.0/howto/deployment/checklist/
# SECURITY WARNING: keep the secret key used in production secret! # SECURITY WARNING: keep the secret key used in production secret!
SECRET_KEY = 'django-insecure-wj*03n+sv=av8#xc5wke*o8lf4*eu&(&xn^uyce=%tdt=4r5n_' SECRET_KEY = env('SECRET_KEY', default='S#perS3crEt_007')
# SECURITY WARNING: don't run with debug turned on in production! # SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True DEBUG = env('DEBUG')
# Assets Management
ASSETS_ROOT = os.getenv('ASSETS_ROOT', '/static/assets')
# load production server from .env
ALLOWED_HOSTS = ['localhost', 'localhost:85', '127.0.0.1', env('SERVER', default='127.0.0.1') ]
CSRF_TRUSTED_ORIGINS = ['http://localhost:85', 'http://127.0.0.1', 'https://' + env('SERVER', default='127.0.0.1') ]
ALLOWED_HOSTS = []
# Application definition # Application definition
@ -73,12 +87,24 @@ WSGI_APPLICATION = 'core.wsgi.application'
# Database # Database
# https://docs.djangoproject.com/en/4.0/ref/settings/#databases # https://docs.djangoproject.com/en/4.0/ref/settings/#databases
DATABASES = { if os.environ.get('DB_ENGINE') and os.environ.get('DB_ENGINE') == "mysql":
'default': { DATABASES = {
'ENGINE': 'django.db.backends.sqlite3', 'default': {
'NAME': BASE_DIR / 'db.sqlite3', 'ENGINE' : 'django.db.backends.mysql',
'NAME' : os.getenv('DB_NAME' , 'gallery_archivist_db'),
'USER' : os.getenv('DB_USERNAME' , 'gallery_archivist_db_usr'),
'PASSWORD': os.getenv('DB_PASS' , 'pass'),
'HOST' : os.getenv('DB_HOST' , 'localhost'),
'PORT' : os.getenv('DB_PORT' , 3306),
},
}
else:
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': 'db.sqlite3',
}
} }
}
# Password validation # Password validation