Skip to content

Commit 7acea49

Browse files
authored
update gcp instance validation (#2875)
2 parents 46b5686 + 68f50d0 commit 7acea49

File tree

1 file changed

+10
-8
lines changed

1 file changed

+10
-8
lines changed

src/_nebari/provider/cloud/google_cloud.py

+10-8
Original file line numberDiff line numberDiff line change
@@ -52,19 +52,21 @@ def regions() -> Set[str]:
5252

5353

5454
@functools.lru_cache()
55-
def instances(region: str) -> Set[str]:
55+
def instances(region: str) -> set[str]:
5656
"""Return a set of available compute instances in a region."""
5757
credentials, project_id = load_credentials()
5858
zones_client = compute_v1.services.region_zones.RegionZonesClient(
5959
credentials=credentials
6060
)
61-
instances_client = compute_v1.InstancesClient(credentials=credentials)
62-
63-
return {
64-
instance.machine_type.split("/")[-1]
65-
for zone in zones_client.list(project=project_id, region=region)
66-
for instance in instances_client.list(project=project_id, zone=zone.name)
67-
}
61+
instances_client = compute_v1.MachineTypesClient(credentials=credentials)
62+
zone_list = zones_client.list(project=project_id, region=region)
63+
zones = [zone for zone in zone_list]
64+
instance_set: set[str] = set()
65+
for zone in zones:
66+
instance_list = instances_client.list(project=project_id, zone=zone.name)
67+
for instance in instance_list:
68+
instance_set.add(instance.name)
69+
return instance_set
6870

6971

7072
@functools.lru_cache()

0 commit comments

Comments
 (0)