Skip to content

Commit 6401d60

Browse files
committed
updated azure.py
1 parent 50574bd commit 6401d60

File tree

4 files changed

+22
-6
lines changed

4 files changed

+22
-6
lines changed

application_sdk/clients/azure/azure.py

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@
1515

1616
from application_sdk.clients import ClientInterface
1717
from application_sdk.clients.azure.azure_auth import AzureAuthProvider
18-
from application_sdk.common.credential_utils import resolve_credentials
1918
from application_sdk.common.error_codes import ClientError
2019
from application_sdk.observability.logger_adaptor import get_logger
2120

@@ -82,8 +81,22 @@ async def load(self, credentials: Optional[Dict[str, Any]] = None) -> None:
8281
try:
8382
logger.info("Loading Azure client...")
8483

85-
# Resolve credentials using framework's credential resolution
86-
self.resolved_credentials = await resolve_credentials(self.credentials)
84+
# Handle credential resolution
85+
if "credential_guid" in self.credentials:
86+
# If we have a credential_guid, use the async get_credentials function
87+
from application_sdk.common.credential_utils import get_credentials
88+
self.resolved_credentials = await get_credentials(self.credentials["credential_guid"])
89+
else:
90+
# If credentials are already resolved (direct format), use them as-is
91+
# For direct credentials, we need to check if they need resolution
92+
if "secret-path" in self.credentials or "credentialSource" in self.credentials:
93+
# Credentials need resolution - this is a complex case
94+
# For now, assume credentials are already resolved if no credential_guid
95+
logger.warning("Credentials appear to need resolution but no credential_guid provided. Using as-is.")
96+
self.resolved_credentials = self.credentials
97+
else:
98+
# Credentials are already in the correct format
99+
self.resolved_credentials = self.credentials
87100

88101
# Create Azure credential using Service Principal authentication
89102
self.credential = await self.auth_provider.create_credential(

application_sdk/common/credential_utils.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,7 @@ def _get_credentials_sync(credential_guid: str) -> Dict[str, Any]:
5959
f"Failed to resolve credentials: {str(e)}",
6060
)
6161

62+
6263
def resolve_credentials(
6364
credential_config: Dict[str, Any], secret_data: Dict[str, Any]
6465
) -> Dict[str, Any]:
@@ -79,6 +80,7 @@ def resolve_credentials(
7980
if value in secret_data:
8081
credentials["extra"][key] = secret_data[value]
8182
elif value in secret_data.get("extra", {}):
83+
8284
credentials["extra"][key] = secret_data["extra"][value]
8385

8486
return credentials

application_sdk/transformers/common/utils.py

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,6 @@ def flatten_yaml_columns(
139139
flat_columns: List[Dict[str, Any]] = []
140140
for key, value in nested.items():
141141
new_key = f"{parent_key}{sep}{key}" if parent_key else key
142-
143142
if isinstance(value, dict) and any(isinstance(v, dict) for v in value.values()):
144143
# If value is a dict and has nested dicts, recurse
145144
flat_columns.extend(flatten_yaml_columns(value, new_key, sep=sep))
@@ -150,5 +149,4 @@ def flatten_yaml_columns(
150149
)
151150
col_def["name"] = new_key
152151
flat_columns.append(col_def)
153-
154-
return flat_columns
152+
return flat_columns

uv.lock

Lines changed: 3 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)