import os from dotenv import load_dotenv def get_secret(key: str, default: str = None) -> str: """ Retrieve a secret from environment variables or .env file. Args: key (str): The name of the secret/environment variable. default (str, optional): A default value if the secret is not found. Returns: str: The value of the secret, or the default value if not found. """ # Load .env file if it exists (for local development) load_dotenv() # Try to get the secret from environment variables secret = os.getenv(key) if secret is None: if default is not None: return default else: raise ValueError(f"Secret '{key}' not found in environment variables and no default provided.") return secret