Files
Kine-backend/ConfBack/config.py
2022-11-24 16:17:34 +01:00

74 lines
2.1 KiB
Python

# -*- coding: utf-8 -*-
#
# @author: vincent.benoit@benserv.fr
# @brief: Flask Config classes
import os
import datetime
class BaseConfig(object):
PROJECT = "configurateur"
# Get app root path, also can use flask.root_path.
PROJECT_ROOT = os.path.abspath(os.path.dirname(os.path.dirname(__file__)))
DEBUG = False
TESTING = False
FLASK_ENV = 'production'
ADMINS = ['vincent.benoit@benserv.fr']
LOG_FOLDER = os.path.join(os.getcwd(), 'log')
APP_NAME = "KineIntercom"
PROCESS_LOGNAME = "Intercom.log"
CONF_LOGNAME = "configurateur.log"
SECRET_KEY = "d]omg;<*|uHfs}ogN=dk_$YW"
# Setup the Flask-JWT-Extended extension
JWT_SECRET_KEY = "xbNNvwHCY*cN,)Yq;A,e(]|P"
JWT_COOKIE_SECURE = False
JWT_TOKEN_LOCATION = ["cookies"]
JWT_ACCESS_TOKEN_EXPIRES = datetime.timedelta(minutes=30)
DELTA = datetime.timedelta(minutes=20) # in minutes
# Controls if Cross Site Request Forgery (CSRF) protection is enabled when using cookies
# This should always be True in production
JWT_COOKIE_CSRF_PROTECT = True
JWT_CSRF_IN_COOKIES = True
JWT_COOKIE_SAMESITE = "None"
STATIC_FOLDER = os.path.join(os.getcwd(), 'static')
UPLOAD_FOLDER = STATIC_FOLDER + '/upload'
DOWNLOAD_FOLDER = STATIC_FOLDER + '/download'
ALLOWED_EXTENSIONS = {'json', 'tar', 'txt'}
MAX_CONTENT_LENGTH = 200 * 1024 * 1024 # 100 megabytes
# Database path
DB_PATH = os.path.join(os.getcwd(), 'db.json')
UNIX_ADDR = "/tmp/uds_socket"
class DefaultConfig(BaseConfig):
DEBUG = True
TESTING = True
FLASK_ENV = 'development'
SECRET_KEY = "secretkey10"
# Setup the Flask-JWT-Extended extension
JWT_SECRET_KEY = "secretkeyjwt10"
JWT_ACCESS_TOKEN_EXPIRES = datetime.timedelta(minutes=10)
DELTA = datetime.timedelta(minutes=5) # in minutes
class ProdConfig(BaseConfig):
DEBUG = False
TESTING = False
FLASK_ENV = 'production'
JWT_COOKIE_SAMESITE = "Strict"
ROOT_BASE_FOLDER = "/opt"
# Log Folder path
LOG_FOLDER = "/var/log/kineintercom"
# Database path
DB_PATH = os.path.join('/etc/kineintercom', 'db.json')