"""Service configs.""" import os from download_spotify_charts.constants import ChartBreakdown, ChartType AWS_DEFAULT_REGION = os.environ.get("AWS_DEFAULT_REGION", "us-east-1") AWS_S3_BUCKET_NAME = os.environ["AWS_S3_BUCKET_NAME"] BUCKET_BASE_PATH = os.environ.get("BUCKET_BASE_PATH", "spotifycharts") DEFAULT_LAST_DATE_DIFF_DAILY = int(os.environ.get("DEFAULT_LAST_DATE_DIFF_DAILY", 2)) DEFAULT_LAST_DATE_DIFF_WEEKLY = int(os.environ.get("DEFAULT_LAST_DATE_DIFF_WEEKLY", 2)) SKIP_WEEKLY_DAYS_COUNT_RANGE = os.environ.get("SKIP_WEEKLY_DAYS_COUNT_RANGE", "") SKIP_WEEKLY_DAYS_COUNT_RANGE = ( [int(i) for i in SKIP_WEEKLY_DAYS_COUNT_RANGE.split(",")] if SKIP_WEEKLY_DAYS_COUNT_RANGE else [] ) RELOAD_WEEKLY_DAYS_COUNT = int(os.environ.get("RELOAD_WEEKLY_DAYS_COUNT_RANGE", 1)) RELOAD_EACH_HOURS = float(os.environ.get("RELOAD_EACH_HOURS", 2)) RELOAD_ROUND_MINUTES = int(os.environ.get("RELOAD_ROUND_MINUTES", 15)) BREAK_IF_NO_DATA_FOR_SOME_DATE = bool(os.environ.get("BREAK_IF_NO_DATA_FOR_SOME_DATE", True)) PUT_NOTE_TO_CSV = bool(os.environ.get("PUT_NOTE_TO_CSV", True)) PUT_HEADER_TO_CSV = bool(os.environ.get("PUT_HEADER_TO_CSV", True)) SENTRY_DSN = os.environ["SENTRY_DSN"] BACKFILL_MODE = bool(os.environ.get("BACKFILL_MODE", "")) DEFAULT_RETRY_COUNT = int(os.environ.get("DEFAULT_RETRY_COUNT", 2)) DEFAULT_RETRY_WAIT = int(os.environ.get("DEFAULT_RETRY_WAIT", 1)) CHART_TYPE_LIST = [ChartType(i) for i in os.environ.get("CHART_TYPE_LIST", ChartType.all_str()).split(",")] CHART_BREAKDOWN_LIST = [ ChartBreakdown(i) for i in os.environ.get("CHART_BREAKDOWN_LIST", ChartBreakdown.all_str()).split(",") ] DSP_AUTH = os.environ["DSPAPI_APPKEY"] DSP_HOSTNAME = os.environ["DSPAPI_HOSTNAME"] DSP_SCHEMA = os.environ.get("DSPAPI_SCHEMA", "https") DSP_URI = f"{DSP_SCHEMA}://{DSP_HOSTNAME}" DEFAULT_REQUEST_TIMEOUT = int(os.environ.get("DEFAULT_REQUEST_TIMEOUT", 300)) # 5*60