This repository has been archived on 2024-05-31. You can view files and clone it, but cannot push or open issues or pull requests.
devicehub-teal/ereuse_devicehub/config.py

82 lines
3.3 KiB
Python
Raw Normal View History

2021-12-28 10:13:30 +00:00
import os
2018-04-27 17:16:43 +00:00
from distutils.version import StrictVersion
from itertools import chain
2018-06-10 16:47:49 +00:00
from typing import Set
2020-09-29 07:42:05 +00:00
from decouple import config
2018-04-27 17:16:43 +00:00
from teal.auth import TokenAuth
2018-04-10 15:06:39 +00:00
from teal.config import Config
from teal.enums import Currency
from teal.utils import import_resource
2018-04-10 15:06:39 +00:00
2020-03-12 16:07:35 +00:00
from ereuse_devicehub.resources import action, agent, deliverynote, inventory, \
2021-02-04 12:50:00 +00:00
lot, tag, user
from ereuse_devicehub.resources.device import definitions
from ereuse_devicehub.resources.documents import documents
from ereuse_devicehub.resources.tradedocument import definitions as tradedocument
2019-04-16 15:47:28 +00:00
from ereuse_devicehub.resources.enums import PriceSoftware
2020-09-15 11:22:28 +00:00
from ereuse_devicehub.resources.versions import versions
2020-12-29 16:37:13 +00:00
from ereuse_devicehub.resources.licences import licences
2020-11-23 17:03:06 +00:00
from ereuse_devicehub.resources.metric import definitions as metric_def
2018-09-07 10:38:02 +00:00
2018-04-10 15:06:39 +00:00
class DevicehubConfig(Config):
RESOURCE_DEFINITIONS = set(chain(import_resource(definitions),
import_resource(action),
import_resource(user),
import_resource(tag),
2018-08-08 19:25:53 +00:00
import_resource(agent),
import_resource(lot),
2020-02-26 19:21:59 +00:00
import_resource(deliverynote),
2019-01-23 15:55:04 +00:00
import_resource(documents),
import_resource(tradedocument),
2020-09-15 11:22:28 +00:00
import_resource(inventory),
2020-11-16 19:32:28 +00:00
import_resource(versions),
2020-12-29 16:37:13 +00:00
import_resource(licences),
2020-11-23 17:03:06 +00:00
import_resource(metric_def),
),)
2018-06-10 16:47:49 +00:00
PASSWORD_SCHEMES = {'pbkdf2_sha256'} # type: Set[str]
2020-09-29 07:42:05 +00:00
DB_USER = config('DB_USER', 'dhub')
DB_PASSWORD = config('DB_PASSWORD', 'ereuse')
DB_HOST = config('DB_HOST', 'localhost')
DB_DATABASE = config('DB_DATABASE', 'devicehub')
2021-03-02 16:11:34 +00:00
DB_SCHEMA = config('DB_SCHEMA', 'dbtest')
2020-09-29 07:42:05 +00:00
SQLALCHEMY_DATABASE_URI = 'postgresql://{user}:{pw}@{host}/{db}'.format(
user=DB_USER,
pw=DB_PASSWORD,
host=DB_HOST,
db=DB_DATABASE,
) # type: str
2021-05-26 09:00:43 +00:00
SCHEMA = config('SCHEMA', 'dbtest')
HOST = config('HOST', 'localhost')
2018-07-02 10:52:54 +00:00
MIN_WORKBENCH = StrictVersion('11.0a1') # type: StrictVersion
"""The minimum version of ereuse.org workbench that this devicehub
2018-06-26 13:36:21 +00:00
accepts. we recommend not changing this value.
"""
2020-10-13 13:37:21 +00:00
TMP_SNAPSHOTS = config('TMP_SNAPSHOTS', '/tmp/snapshots')
2020-12-29 16:37:13 +00:00
TMP_LIVES = config('TMP_LIVES', '/tmp/lives')
2020-12-29 20:14:07 +00:00
LICENCES = config('LICENCES', './licences.txt')
2020-10-13 13:37:21 +00:00
"""This var is for save a snapshots in json format when fail something"""
API_DOC_CONFIG_TITLE = 'Devicehub'
API_DOC_CONFIG_VERSION = '0.2'
API_DOC_CONFIG_COMPONENTS = {
'securitySchemes': {
'bearerAuth': TokenAuth.API_DOCS
}
}
API_DOC_CLASS_DISCRIMINATOR = 'type'
2018-07-14 14:41:22 +00:00
PRICE_SOFTWARE = PriceSoftware.Ereuse
PRICE_VERSION = StrictVersion('1.0')
PRICE_CURRENCY = Currency.EUR
"""Official versions."""
2021-02-22 20:14:56 +00:00
"""Admin email"""
EMAIL_ADMIN = config('EMAIL_ADMIN', '')
2021-05-12 09:47:03 +00:00
"""Definition of path where save the documents of customers"""
PATH_DOCUMENTS_STORAGE = config('PATH_DOCUMENTS_STORAGE', '/tmp/')
2021-07-05 13:04:14 +00:00
JWT_PASS = config('JWT_PASS', '')
2021-12-28 10:13:30 +00:00
SECRET_KEY = os.urandom(32)