2018-09-10 09:55:26 -07:00
|
|
|
# -*- coding: utf-8 -*-
|
|
|
|
"""Application configuration.
|
|
|
|
|
|
|
|
Most configuration is set via environment variables.
|
|
|
|
|
|
|
|
For local development, use a .env file to set
|
|
|
|
environment variables.
|
|
|
|
"""
|
2018-11-21 21:45:29 -08:00
|
|
|
import subprocess
|
2018-09-10 09:55:26 -07:00
|
|
|
from environs import Env
|
|
|
|
|
2018-12-14 11:36:22 -08:00
|
|
|
|
2018-11-25 20:02:35 -08:00
|
|
|
def git_revision_short_hash():
|
|
|
|
try:
|
|
|
|
return subprocess.check_output(['git', 'rev-parse', '--short', 'HEAD'])
|
|
|
|
except subprocess.CalledProcessError:
|
|
|
|
return 0
|
2018-11-21 21:45:29 -08:00
|
|
|
|
2018-12-14 11:36:22 -08:00
|
|
|
|
2018-09-10 09:55:26 -07:00
|
|
|
env = Env()
|
|
|
|
env.read_env()
|
|
|
|
|
|
|
|
ENV = env.str("FLASK_ENV", default="production")
|
|
|
|
DEBUG = ENV == "development"
|
2018-11-02 09:07:06 -07:00
|
|
|
SITE_URL = env.str('SITE_URL', default='https://grant.io')
|
2018-09-10 09:55:26 -07:00
|
|
|
SQLALCHEMY_DATABASE_URI = env.str("DATABASE_URL")
|
|
|
|
QUEUES = ["default"]
|
|
|
|
SECRET_KEY = env.str("SECRET_KEY")
|
|
|
|
BCRYPT_LOG_ROUNDS = env.int("BCRYPT_LOG_ROUNDS", default=13)
|
|
|
|
DEBUG_TB_ENABLED = DEBUG
|
|
|
|
DEBUG_TB_INTERCEPT_REDIRECTS = False
|
|
|
|
CACHE_TYPE = "simple" # Can be "memcached", "redis", etc.
|
|
|
|
SQLALCHEMY_TRACK_MODIFICATIONS = False
|
2018-10-19 15:20:51 -07:00
|
|
|
SENDGRID_API_KEY = env.str("SENDGRID_API_KEY", default="")
|
2018-11-14 06:30:18 -08:00
|
|
|
SENDGRID_DEFAULT_FROM = "noreply@grant.io"
|
2018-11-21 21:45:29 -08:00
|
|
|
SENTRY_DSN = env.str("SENTRY_DSN", default=None)
|
2018-11-25 20:02:35 -08:00
|
|
|
SENTRY_RELEASE = env.str("SENTRY_RELEASE", default=git_revision_short_hash())
|
2018-11-16 19:33:25 -08:00
|
|
|
MAX_CONTENT_LENGTH = 5 * 1024 * 1024 # 5MB (limits file uploads, raises RequestEntityTooLarge)
|
2018-12-14 11:36:22 -08:00
|
|
|
AWS_ACCESS_KEY_ID = env.str("AWS_ACCESS_KEY_ID")
|
|
|
|
AWS_SECRET_ACCESS_KEY = env.str("AWS_SECRET_ACCESS_KEY")
|
|
|
|
AWS_DEFAULT_REGION = env.str("AWS_DEFAULT_REGION")
|
|
|
|
S3_BUCKET = env.str("S3_BUCKET")
|
|
|
|
SECURITY_USER_IDENTITY_ATTRIBUTES = ['email_address'] # default is 'email'
|
|
|
|
SECURITY_PASSWORD_HASH = 'bcrypt'
|
|
|
|
SECURITY_PASSWORD_SALT = SECRET_KEY
|