From 7aee257dfd7b20b1491869a2a15530fcb8661a50 Mon Sep 17 00:00:00 2001 From: Abhishek Agrawal Date: Wed, 15 Oct 2025 14:36:11 +0530 Subject: [PATCH] fix: return None when cannot extract region from hostname + improve preflight logging --- application_sdk/activities/__init__.py | 4 +++- application_sdk/common/aws_utils.py | 5 +++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/application_sdk/activities/__init__.py b/application_sdk/activities/__init__.py index 223a592d9..6d270f76f 100644 --- a/application_sdk/activities/__init__.py +++ b/application_sdk/activities/__init__.py @@ -258,7 +258,9 @@ async def preflight_check(self, workflow_args: Dict[str, Any]) -> Dict[str, Any] ) if not result or "error" in result: - raise ValueError("Preflight check failed") + raise ValueError( + "Preflight check failed: " + str(result.get("error", "")) + ) logger.info("Preflight check completed successfully") return result diff --git a/application_sdk/common/aws_utils.py b/application_sdk/common/aws_utils.py index 638eb91ad..0d6e64172 100644 --- a/application_sdk/common/aws_utils.py +++ b/application_sdk/common/aws_utils.py @@ -10,7 +10,7 @@ logger = get_logger(__name__) -def get_region_name_from_hostname(hostname: str) -> str: +def get_region_name_from_hostname(hostname: str) -> str | None: """ Extract region name from AWS RDS endpoint. Example: database-1.abc123xyz.us-east-1.rds.amazonaws.com -> us-east-1 @@ -28,7 +28,8 @@ def get_region_name_from_hostname(hostname: str) -> str: match = re.search(r"-([a-z]{2}-[a-z]+-\d)\.", hostname) if match: return match.group(1) - raise ValueError("Could not find valid AWS region from hostname") + logger.warning("Could not find valid AWS region from hostname") + return None def generate_aws_rds_token_with_iam_role(