"""Base configuration.""" import os from sqlalchemy.pool import QueuePool from sqlalchemy.pool import StaticPool ENVIRONMENT_PROD = 'prod' ENVIRONMENT_DEV = 'dev' ENVIRONMENT_QA = 'qa' ENVIRONMENT_TEST = 'test' ENVIRONMENT = os.environ.get('Environment', ENVIRONMENT_DEV) SNOWFLAKE_CONFIG = { 'account': os.environ.get('SNOWFLAKE_ACCOUNT'), 'db': os.environ.get('SNOWFLAKE_DATABASE'), 'password': os.environ.get('SNOWFLAKE_PASSWORD'), 'role': os.environ.get('SNOWFLAKE_ROLE'), 'schema': os.environ.get('SNOWFLAKE_SCHEMA', 'DEV'), 'user': os.environ.get('SNOWFLAKE_USER'), 'warehouse': os.environ.get('SNOWFLAKE_WAREHOUSE') } AR_DB_URL = os.environ.get('AR_DB_URL') if not AR_DB_URL: AR_DB_URL = 'sqlite://' POOL_CLASS = StaticPool elif ENVIRONMENT == ENVIRONMENT_TEST: AR_DB_URL = 'sqlite://' POOL_CLASS = StaticPool else: POOL_CLASS = QueuePool POOL_MAX_OVERFLOW = -1 POOL_RECYCLE_MS = 3600 POOL_SIZE = 5 DYNAMODB_STATUS_TABLE = os.environ.get('DYNAMODB_STATUS_TABLE') STATUS_TIMESTAMP_FORMAT = '%Y-%m-%d %H:%M:%S:%f' ACCOUNT_TYPE_LABEL = 'label' ACCOUNT_TYPE_SUBACCOUNT = 'subaccount' FEED_ACCOUNT_TYPES = { ACCOUNT_TYPE_LABEL: 'vendor', ACCOUNT_TYPE_SUBACCOUNT: 'subaccount' } SENTRY_DSN = os.environ.get('SENTRY_DSN')