Skip to content

Commit 59aed81

Browse files
author
Pedro Rodrigues
committed
fix(free-tier): replace regionID with provider_region
1 parent 8a109ad commit 59aed81

File tree

4 files changed

+16
-22
lines changed

4 files changed

+16
-22
lines changed

singlestoredb/management/cluster.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -390,7 +390,7 @@ def create_cluster(
390390
:class:`Cluster`
391391
392392
"""
393-
if isinstance(region, Region):
393+
if isinstance(region, Region) and region.id:
394394
region = region.id
395395
res = self._post(
396396
'clusters', json=dict(

singlestoredb/management/region.py

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,12 @@ class Region(object):
2121
2222
"""
2323

24-
def __init__(self, id: str, name: str, provider: str):
24+
def __init__(
25+
self, name: str, provider: str, id: Optional[str] = None,
26+
provider_region: Optional[str] = None,
27+
) -> None:
2528
"""Use :attr:`WorkspaceManager.regions` instead."""
26-
#: Unique ID of the region
29+
#: Unique identifier of the region
2730
self.id = id
2831

2932
#: Name of the region
@@ -32,6 +35,9 @@ def __init__(self, id: str, name: str, provider: str):
3235
#: Name of the cloud provider
3336
self.provider = provider
3437

38+
#: Name of the provider region
39+
self.provider_region = provider_region
40+
3541
self._manager: Optional[Manager] = None
3642

3743
def __str__(self) -> str:
@@ -59,10 +65,14 @@ def from_dict(cls, obj: Dict[str, str], manager: Manager) -> 'Region':
5965
:class:`Region`
6066
6167
"""
68+
id = obj.get('regionID', None)
69+
provider_region = obj.get('regionName', None)
70+
6271
out = cls(
63-
id=obj['regionID'],
72+
id=id,
6473
name=obj['region'],
6574
provider=obj['provider'],
75+
provider_region=provider_region,
6676
)
6777
out._manager = manager
6878
return out

singlestoredb/management/workspace.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1715,7 +1715,7 @@ def create_workspace_group(
17151715
:class:`WorkspaceGroup`
17161716
17171717
"""
1718-
if isinstance(region, Region):
1718+
if isinstance(region, Region) and region.id:
17191719
region = region.id
17201720
res = self._post(
17211721
'workspaceGroups', json=dict(

singlestoredb/tests/test_management.py

Lines changed: 1 addition & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1528,14 +1528,6 @@ def test_list_regions(self):
15281528
providers = {x.provider for x in regions}
15291529
assert 'Azure' in providers or 'GCP' in providers or 'AWS' in providers
15301530

1531-
# Verify region can be accessed by name or ID
1532-
region_by_name = regions[region.name]
1533-
region_by_id = regions[region.id]
1534-
assert region_by_name == region_by_id
1535-
assert region_by_name.id == region.id
1536-
assert region_by_name.name == region.name
1537-
assert region_by_name.provider == region.provider
1538-
15391531
def test_list_shared_tier_regions(self):
15401532
"""Test listing shared tier regions."""
15411533
regions = self.manager.list_shared_tier_regions()
@@ -1547,22 +1539,14 @@ def test_list_shared_tier_regions(self):
15471539
if regions:
15481540
region = regions[0]
15491541
assert isinstance(region, Region)
1550-
assert hasattr(region, 'id')
15511542
assert hasattr(region, 'name')
15521543
assert hasattr(region, 'provider')
1544+
assert hasattr(region, 'provider_region')
15531545

15541546
# Verify provider values
15551547
providers = {x.provider for x in regions}
15561548
assert any(p in providers for p in ['Azure', 'GCP', 'AWS'])
15571549

1558-
# Verify region can be accessed by name or ID
1559-
region_by_name = regions[region.name]
1560-
region_by_id = regions[region.id]
1561-
assert region_by_name == region_by_id
1562-
assert region_by_name.id == region.id
1563-
assert region_by_name.name == region.name
1564-
assert region_by_name.provider == region.provider
1565-
15661550
def test_str_repr(self):
15671551
"""Test string representation of regions."""
15681552
regions = self.manager.list_regions()

0 commit comments

Comments
 (0)