"""Config file for upc-provisioner lambda.""" import os from secrets_manager.lambda_ext import LambdaSecretsManager # Name of the lambda APPLICATION_NAME = 'upc-provisioner' # This name will be used in the logger to identify logs coming from this lambda SCRIPT_NAME = 'lambda-upc-provisioner' # Environment setup DEV_ENVIRONMENT = 'dev' QA_ENVIRONMENT = 'qa' PROD_ENVIRONMENT = 'prod' TEST_ENVIRONMENT = 'test' ENVIRONMENT = os.environ.get('Environment') # force_remote bool - 'False' if working on local, else you're assumed you're # working in dev aws land. This is primarily used in the LambdaSecretsManager FORCE_REMOTE = False if os.environ.get('FORCE_REMOTE', None) == 'False' else True secrets_manager_client = LambdaSecretsManager( environment=ENVIRONMENT, service_name=APPLICATION_NAME, force_remote=FORCE_REMOTE ) # Logger configuration LOGGER_LEVEL = os.environ.get('LOGGER_LEVEL') LOGGER_DSN = os.environ.get('LOGGER_DSN') SENTRY_DSN = os.environ.get('SENTRY_DSN') AR_DB_CONNECTION_STRING = ( 'mysql+pymysql://{user}:{password}@{host}:{port}/{database}'.format( user=secrets_manager_client.get_cred('AR_DB_USERNAME'), password=secrets_manager_client.get_cred('AR_DB_PASSWORD'), host=os.environ.get('AR_DB_HOST'), port=os.environ.get('AR_DB_PORT'), database=os.environ.get('AR_DB_DATABASE'))) AR_DB_CONNECT_ARGS = {'charset': 'utf8'} # The max number of UPCs to select on each run. UPCS_AR_SELECT_LIMIT_ALARM = int(os.environ.get('UPCS_AR_SELECT_LIMIT')) UPCS_AR_SELECT_LIMIT_CRON = int(os.environ.get('UPCS_AR_SELECT_LIMIT_CRON')) # The offset of the first row to return when selecting UPCs. UPCS_AR_SELECT_OFFSET = int(os.environ.get('UPCS_AR_SELECT_OFFSET')) # SQS QUEUE_NAME_UPC_PROVISIONER = '{environment}-upc_repository-queue'.format( environment=ENVIRONMENT )