"""Common configuration.""" import logging import re import os DEV_ENVIRONMENT = 'dev' ENVIRONMENT = os.environ.get('Environment', DEV_ENVIRONMENT) # E-mail configuration DEFAULT_EMAIL_SENDER = 'donotreply@theorchard.com' EMAIL_SENDER = os.environ.get('EMAIL_SENDER', DEFAULT_EMAIL_SENDER) ERROR_ATTACHMENT_EMAIL_RECIPIENT = os.environ.get( 'ERROR_ATTACHMENT_EMAIL_RECIPIENT') # Logger configuration LOGGER_LEVEL = os.environ.get('LOGGING_LEVEL', logging.INFO) logger = logging.getLogger() logger.setLevel(LOGGER_LEVEL) # Error reporting. SENTRY_DSN = os.environ.get('SENTRY_DSN') or None # SNS Topics SNS_ARN_SUCCESS = os.environ.get('SNS_ARN_SUCCESS') SNS_ARN_FAIL = os.environ.get('SNS_ARN_FAIL') # DynamoDB Tables DYNAMODB_TABLE_SUCCESS = '{env}_statement_attachments_success'.format( env=ENVIRONMENT) DYNAMODB_TABLE_ERROR = '{env}_statement_attachments_error'.format( env=ENVIRONMENT) # S3 S3_BUCKET_FOLDER = '{env}-statement-attachments'.format( env=ENVIRONMENT) BUCKET_NAME = os.environ.get('BUCKET_NAME', 'orcdbucket') S3_BUCKET_NAME = '{env}-{bucket_name}'.format( env=ENVIRONMENT, bucket_name=BUCKET_NAME) S3_PER_LABEL_DIR_NAME_DEFAULT = 'per-label-statement-attachments' S3_PER_LABEL_DIR_NAME = os.environ.get( 'S3_PER_LABEL_DIR_NAME', S3_PER_LABEL_DIR_NAME_DEFAULT) S3_PER_LABEL_DIR = '{env}-{dir_name}'.format( env=ENVIRONMENT, dir_name=S3_PER_LABEL_DIR_NAME) S3_DESTINATION_KEY_TEMPLATE = '{attachments_dir}/{account_dir}/{file_name}' FILE_KEY_REGEXP = re.compile(r""" (?P[L]) (?P\d+)_ (?P\d{1,4})_ (?P[a-zA-Z0-9-_.*'()]+\.(?P\w{3,4}))$""", re.VERBOSE) WORKFLOW_LINK = os.environ.get('WORKFLOW_LINK') # Emergency switch to disable event processing. Use with caution. # If set - will force lambda function to ignore all events # works only for the lambda function which has this var set to something IGNORE_ALL_EVENTS = os.environ.get('IGNORE_ALL_EVENTS', None)