Skip to content

Commit 3ada4a5

Browse files
committed
[Core] [Azure] Use subscription id from azure profile if not provided in config during AzureNodeProvider init
Signed-off-by: Mark Rossett <[email protected]>
1 parent 212367d commit 3ada4a5

File tree

1 file changed

+11
-1
lines changed

1 file changed

+11
-1
lines changed

python/ray/autoscaler/_private/_azure/node_provider.py

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
from threading import RLock
77
from uuid import uuid4
88

9+
from azure.common.credentials import get_cli_profile
910
from azure.core.exceptions import ResourceNotFoundError
1011
from azure.identity import DefaultAzureCredential
1112
from azure.mgmt.compute import ComputeManagementClient
@@ -65,7 +66,16 @@ class AzureNodeProvider(NodeProvider):
6566

6667
def __init__(self, provider_config, cluster_name):
6768
NodeProvider.__init__(self, provider_config, cluster_name)
68-
subscription_id = provider_config["subscription_id"]
69+
subscription_id = provider_config.get("subscription_id")
70+
if subscription_id is None:
71+
# Get subscription from logged in azure profile
72+
# if it isn't provided in the provider_config
73+
# so operations like `get-head-ip` will work
74+
subscription_id = get_cli_profile().get_subscription_id()
75+
logger.info(
76+
"subscription_id not found in provider config, falling back "
77+
f"to subscription_id from the logged in azure profile: {subscription_id}"
78+
)
6979
self.cache_stopped_nodes = provider_config.get("cache_stopped_nodes", True)
7080
credential = DefaultAzureCredential(exclude_shared_token_cache_credential=True)
7181
self.compute_client = ComputeManagementClient(credential, subscription_id)

0 commit comments

Comments
 (0)