From 416d26bb71dde59308191fb8f72c7dcb0631cd91 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alperen=20K=C3=B6m=C3=BCrc=C3=BC?= Date: Wed, 2 Sep 2026 15:17:10 +0200 Subject: [PATCH 1/2] fix(evaluations): fix error handling --- .../evaluations/utils/oss_secret_utils.py | 20 +++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/packages/gen/gen_ai_hub/evaluations/utils/oss_secret_utils.py b/packages/gen/gen_ai_hub/evaluations/utils/oss_secret_utils.py index cf0c9d0e..84745745 100644 --- a/packages/gen/gen_ai_hub/evaluations/utils/oss_secret_utils.py +++ b/packages/gen/gen_ai_hub/evaluations/utils/oss_secret_utils.py @@ -6,9 +6,10 @@ DEFAULT_KEY, AWS_S3_OSS_TYPE_KEY, AWS_ACCESS_KEY_ID, - AWS_SECRET_ACCESS_KEY, + AWS_SECRET_ACCESS_KEY, OBJECT_STORE_SECRET_EXISTS_MESSAGE, ) -from ai_api_client_sdk.exception import AIAPINotFoundException +from ai_api_client_sdk.exception import AIAPINotFoundException, AIAPIServerException + @dataclass class ObjectStoreData: @@ -56,6 +57,21 @@ def create_aws_object_store_secret( ) return response + except AIAPIServerException as e: + # Check if this is a 409 Conflict (secret already exists) + if hasattr(e, 'status_code') and e.status_code == 409: + # Return a mock response object with the expected message attribute + # so the caller can handle this gracefully with replace_existing=True + class ConflictResponse: + def __init__(self): + self.message = OBJECT_STORE_SECRET_EXISTS_MESSAGE + + return ConflictResponse() + # Re-raise if it's not a 409 + raise ValueError( + f"Error while creating the Object Store secret. Request failed with error of {e}" + ) from e + except Exception as e: raise ValueError( f"Error while creating the Object Store secret. Request failed with error of {e}" From d0869aa196a02b62188e4606984b9ec03d3be0df Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alperen=20K=C3=B6m=C3=BCrc=C3=BC?= Date: Thu, 3 Sep 2026 07:42:46 +0200 Subject: [PATCH 2/2] fix(formatting) --- packages/gen/gen_ai_hub/evaluations/utils/oss_secret_utils.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/gen/gen_ai_hub/evaluations/utils/oss_secret_utils.py b/packages/gen/gen_ai_hub/evaluations/utils/oss_secret_utils.py index 84745745..a53d6cc2 100644 --- a/packages/gen/gen_ai_hub/evaluations/utils/oss_secret_utils.py +++ b/packages/gen/gen_ai_hub/evaluations/utils/oss_secret_utils.py @@ -6,7 +6,8 @@ DEFAULT_KEY, AWS_S3_OSS_TYPE_KEY, AWS_ACCESS_KEY_ID, - AWS_SECRET_ACCESS_KEY, OBJECT_STORE_SECRET_EXISTS_MESSAGE, + AWS_SECRET_ACCESS_KEY, + OBJECT_STORE_SECRET_EXISTS_MESSAGE, ) from ai_api_client_sdk.exception import AIAPINotFoundException, AIAPIServerException