"""Config file for lambda function.""" import os from owslogger import logger from secrets_manager.lambda_ext import LambdaSecretsManager APPLICATION_NAME = "lambda-assets-hive-text-recognition" APPLICATION_VERSION = "1.0.0" LOG_LEVEL = os.environ.get("LOG_LEVEL", "INFO") # AWS region configuration DEFAULT_AWS_REGION = "us-east-1" AWS_REGION = os.environ.get("AWS_REGION", DEFAULT_AWS_REGION) # AWS credentials AWS_ACCESS_KEY_ID = os.environ.get("AWS_ACCESS_KEY_ID") AWS_SECRET_ACCESS_KEY = os.environ.get("AWS_SECRET_ACCESS_KEY") AWS_SESSION_TOKEN = os.environ.get("AWS_SESSION_TOKEN") # Environment setup TEST_ENVIRONMENT = "test" DEV_ENVIRONMENT = "dev" QA_ENVIRONMENT = "qa" PROD_ENVIRONMENT = "prod" ENVIRONMENT = os.environ["Environment"] SENTRY_DSN = os.environ.get("SENTRY_DSN") secrets_manager_client = LambdaSecretsManager( environment=ENVIRONMENT, service_name=APPLICATION_NAME ) HIVE_API_KEY = secrets_manager_client.get_cred("HIVE_API_KEY") HIVE_RETRIES = int(os.environ.get("HIVE_RETRIES", 3)) HIVE_TIMEOUT = int(os.environ.get("HIVE_TIMEOUT", 600)) assert HIVE_API_KEY is not None, "Hive API key not found." OWS_RETRIES = int(os.environ.get("OWS_RETRIES", 3)) OWS_TIMEOUT = int(os.environ.get("OWS_TIMEOUT", 30)) # M2MTokenManager only works for QA and PROD environments. TOKEN_MANAGER_ENVIRONMENT = ( ENVIRONMENT if ENVIRONMENT not in [DEV_ENVIRONMENT, TEST_ENVIRONMENT] else QA_ENVIRONMENT ) app_logger = logger.setup( ENVIRONMENT, "owslogger", LOG_LEVEL, APPLICATION_NAME, APPLICATION_VERSION )