As per https://12factor.net/ Use environs/python-dotenv for reading/parsing variablesmaster
parent
72b224786f
commit
973bcd96cb
@ -0,0 +1,5 @@ |
||||
# Environment variable overrides for local development |
||||
FLASK_APP=autoapp.py |
||||
FLASK_ENV=development |
||||
DATABASE_URL="sqlite:////tmp/dev.db" |
||||
SECRET_KEY="not-so-secret" |
@ -1,10 +1,5 @@ |
||||
# -*- coding: utf-8 -*- |
||||
"""Create an application instance.""" |
||||
from flask.helpers import get_debug_flag |
||||
|
||||
from {{cookiecutter.app_name}}.app import create_app |
||||
from {{cookiecutter.app_name}}.settings import DevConfig, ProdConfig |
||||
|
||||
CONFIG = DevConfig if get_debug_flag() else ProdConfig |
||||
|
||||
app = create_app(CONFIG) |
||||
app = create_app() |
||||
|
@ -0,0 +1,11 @@ |
||||
"""Settings module for test app.""" |
||||
ENV = 'development' |
||||
TESTING = True |
||||
SQLALCHEMY_DATABASE_URI = 'sqlite://' |
||||
SECRET_KEY = 'not-so-secret-in-tests' |
||||
BCRYPT_LOG_ROUNDS = 4 # For faster tests; needs at least 4 to avoid "ValueError: Invalid rounds" |
||||
DEBUG_TB_ENABLED = False |
||||
CACHE_TYPE = 'simple' # Can be "memcached", "redis", etc. |
||||
SQLALCHEMY_TRACK_MODIFICATIONS = False |
||||
WEBPACK_MANIFEST_PATH = 'webpack/manifest.json' |
||||
WTF_CSRF_ENABLED = False # Allows form testing |
@ -1,19 +0,0 @@ |
||||
# -*- coding: utf-8 -*- |
||||
"""Test configs.""" |
||||
from {{cookiecutter.app_name}}.app import create_app |
||||
from {{cookiecutter.app_name}}.settings import DevConfig, ProdConfig |
||||
|
||||
|
||||
def test_production_config(): |
||||
"""Production config.""" |
||||
app = create_app(ProdConfig) |
||||
assert app.config['ENV'] == 'prod' |
||||
assert app.config['DEBUG'] is False |
||||
assert app.config['DEBUG_TB_ENABLED'] is False |
||||
|
||||
|
||||
def test_dev_config(): |
||||
"""Development config.""" |
||||
app = create_app(DevConfig) |
||||
assert app.config['ENV'] == 'dev' |
||||
assert app.config['DEBUG'] is True |
Loading…
Reference in new issue