Skip to content

Commit

Permalink
Split dev and prod settings and dependencies
Browse files Browse the repository at this point in the history
  • Loading branch information
mrEvgenX committed Jul 4, 2020
1 parent 3e4335e commit f47c7e4
Show file tree
Hide file tree
Showing 9 changed files with 106 additions and 11 deletions.
1 change: 1 addition & 0 deletions .github/workflows/django.yml
Expand Up @@ -28,4 +28,5 @@ jobs:
- name: Run Tests
run: |
cd django
export DJANGO_SETTINGS_MODULE=config.settings_dev
python manage.py test
12 changes: 12 additions & 0 deletions TODO.mk
Expand Up @@ -7,6 +7,18 @@
- Красивые кнопки элементов
- Панель с фильтрами
- Адаптивщина для мобилок
- Попробовать адаптивную ширину, как здесь
/* Small '-sm' */
@media (min-width: 640px) { ... }

/* Medium '-md' */
@media (min-width: 768px) { ... }

/* Large '-lg' */
@media (min-width: 1024px) { ... }

/* Extra Large '-xl' */
@media (min-width: 1280px) { ... }
- Базовые настройки профиля
- Смена пароля
- Уведомления
Expand Down
24 changes: 13 additions & 11 deletions django/config/settings.py → django/config/settings_common.py
Expand Up @@ -20,12 +20,15 @@
# See https://docs.djangoproject.com/en/3.0/howto/deployment/checklist/

# SECURITY WARNING: keep the secret key used in production secret!
SECRET_KEY = '^+-pjsymn4(4!hy+m%v*##92&#^9+bg%8x=oxy@po)c%m59zqk'
SECRET_KEY = os.getenv('DJANGO_SECRET_KEY')

# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True
DEBUG = False

ALLOWED_HOSTS = []
ALLOWED_HOSTS = [
'localhost',
'127.0.0.1',
]


# Application definition
Expand All @@ -46,8 +49,8 @@
MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'corsheaders.middleware.CorsMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
Expand Down Expand Up @@ -95,8 +98,7 @@

DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
'ENGINE': 'django.db.backends.postgresql',
}
}

Expand Down Expand Up @@ -139,8 +141,8 @@

STATIC_URL = '/static/'

CORS_ORIGIN_ALLOW_ALL = True

# python -m smtpd -n -c DebuggingServer localhost:1025
EMAIL_HOST='localhost'
EMAIL_PORT=1025
EMAIL_HOST = os.getenv('DJANGO_EMAIL_HOST')
EMAIL_HOST_USER = os.getenv('DJANGO_EMAIL_HOST_USER')
EMAIL_HOST_PASSWORD = os.getenv('DJANGO_EMAIL_HOST_PASSWORD')
EMAIL_PORT=os.getenv('DJANGO_EMAIL_PORT')
EMAIL_USE_SSL = True
33 changes: 33 additions & 0 deletions django/config/settings_dev.py
@@ -0,0 +1,33 @@
from config.settings_common import *


SECRET_KEY = '^+-pjsymn4(4!hy+m%v*##92&#^9+bg%8x=oxy@po)c%m59zqk'
DEBUG = True

MIDDLEWARE += [
'debug_toolbar.middleware.DebugToolbarMiddleware',
]

INSTALLED_APPS += [
'debug_toolbar',
]

DATABASES['default'].update({
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(BASE_DIR, 'db.sqlite3'),
})

CORS_ORIGIN_WHITELIST = [
'http://localhost:3000'
]

# python -m smtpd -n -c DebuggingServer localhost:1025
EMAIL_HOST='localhost'
EMAIL_PORT=1025
EMAIL_USE_SSL = False

# Django Debug Toolbar

INTERNAL_IPS = [
'127.0.0.1',
]
36 changes: 36 additions & 0 deletions django/config/settings_prod.py
@@ -0,0 +1,36 @@
from config.settings_common import *

DEBUG = False

assert SECRET_KEY is not None, (
'Please provide DJANGO_SECRET_KEY '
'environment variable with a value')

assert EMAIL_HOST is not None, (
'Please provide DJANGO_EMAIL_HOST environment variable with a value'
)
assert EMAIL_HOST_USER is not None, (
'Please provide DJANGO_EMAIL_HOST_USER environment variable with a value'
)
assert EMAIL_HOST_PASSWORD is not None, (
'Please provide DJANGO_EMAIL_HOST_PASSWORD environment variable with a value'
)
assert EMAIL_PORT is not None, (
'Please provide DJANGO_EMAIL_PORT environment variable with a value'
)

ALLOWED_HOSTS += [
os.getenv('DJANGO_ALLOWED_HOSTS'),
]

DATABASES['default'].update({
'NAME': os.getenv('DJANGO_DB_NAME'),
'USER': os.getenv('DJANGO_DB_USER'),
'PASSWORD': os.getenv('DJANGO_DB_PASSWORD'),
'HOST': os.getenv('DJANGO_DB_HOST'),
'PORT': os.getenv('DJANGO_DB_PORT'),
})

CORS_ORIGIN_WHITELIST = [
os.getenv('DJANGO_CORS_ORIGIN_WHITELIST')
]
7 changes: 7 additions & 0 deletions django/config/urls.py
Expand Up @@ -14,6 +14,7 @@
2. Add a URL to urlpatterns: path('blog/', include('blog.urls'))
"""
from django.contrib import admin
from django.conf import settings
from django.urls import path, include
import core.urls
import user.urls
Expand All @@ -24,3 +25,9 @@
path('api/v1/auth/', include(user.urls, namespace='api.auth')),
path('api/v1/', include(core.urls, namespace='api')),
]

if settings.DEBUG:
import debug_toolbar
urlpatterns = [
path('__debug__/', include(debug_toolbar.urls)),
] + urlpatterns
File renamed without changes.
2 changes: 2 additions & 0 deletions requirements.dev.txt
@@ -0,0 +1,2 @@
-r requirements.common.txt
django-debug-toolbar==2.2
2 changes: 2 additions & 0 deletions requirements.prod.txt
@@ -0,0 +1,2 @@
-r requirements.common.txt
uwsgi==2.0.19

0 comments on commit f47c7e4

Please sign in to comment.