Skip to content

Commit 01384b8

Browse files
author
Datata1
committed
feat(domain): implement endpoints
1 parent e6ecf88 commit 01384b8

File tree

20 files changed

+418
-213
lines changed

20 files changed

+418
-213
lines changed

examples/domains/update_domain.py

Lines changed: 0 additions & 20 deletions
This file was deleted.

examples/domains/update_workspace_connections.py

Whitespace-only changes.
Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,10 @@
77

88
async def main():
99
async with CodesphereSDK() as sdk:
10-
domain = await sdk.domains.create(team_id=35663, domain_name="test.com")
10+
team = await sdk.teams.get(team_id=35663)
11+
domain = await team.domains.create(domain_name="test.com")
12+
13+
print(f"Domain created: {domain.name}")
1114
print(domain.model_dump_json(indent=2))
1215

1316

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
import asyncio
2+
import logging
3+
from codesphere import CodesphereSDK
4+
5+
logging.basicConfig(level=logging.INFO)
6+
7+
8+
async def main():
9+
async with CodesphereSDK() as sdk:
10+
team = await sdk.teams.get(team_id=35663)
11+
domain = await team.domains.delete(domain_name="test.com")
12+
13+
print(f"Domain created: {domain.name}")
14+
print(domain.model_dump_json(indent=2))
15+
16+
17+
if __name__ == "__main__":
18+
asyncio.run(main())
Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,10 @@
77

88
async def main():
99
async with CodesphereSDK() as sdk:
10-
domain = await sdk.domains.get(team_id=35663, domain_name="test.com")
10+
team = await sdk.teams.get(team_id=35663)
11+
logging.info(f"Working with team: {team.name}")
12+
domain = await team.domains.get("test.com")
13+
1114
print(domain.model_dump_json(indent=2))
1215

1316

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,11 @@
77

88
async def main():
99
async with CodesphereSDK() as sdk:
10-
domains = await sdk.domains.list(team_id=99999999)
10+
team = await sdk.teams.get(team_id=35663)
11+
domains = await team.domains.list()
12+
1113
for domain in domains:
14+
print(f"Domain: {domain.name}")
1215
print(domain.model_dump_json(indent=2))
1316

1417

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
import asyncio
2+
import logging
3+
from codesphere import CodesphereSDK, CustomDomainConfig
4+
5+
logging.basicConfig(level=logging.INFO)
6+
7+
8+
async def main():
9+
async with CodesphereSDK() as sdk:
10+
team = await sdk.teams.get(team_id=35663)
11+
domain = await team.domains.get(domain_name="test.com")
12+
13+
new_config_data = CustomDomainConfig(
14+
max_body_size_mb=24, max_connection_timeout_s=500, use_regex=False
15+
)
16+
await domain.update(new_config_data)
17+
18+
19+
if __name__ == "__main__":
20+
asyncio.run(main())
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
import asyncio
2+
import logging
3+
from codesphere import CodesphereSDK, DomainRouting
4+
5+
logging.basicConfig(level=logging.INFO)
6+
7+
8+
async def main():
9+
async with CodesphereSDK() as sdk:
10+
team = await sdk.teams.get(team_id=35663)
11+
domainBuilder = DomainRouting()
12+
13+
routing = (
14+
domainBuilder.add_route("/", [74861])
15+
.add_route("/api", [74868])
16+
.add_route("/test", [74868])
17+
)
18+
19+
domain = await team.domains.update_workspace_connections(
20+
domain_name="test.com", connections=routing
21+
)
22+
print(f"Current routing: {domain.workspaces}")
23+
24+
25+
if __name__ == "__main__":
26+
asyncio.run(main())

src/codesphere/__init__.py

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,17 @@
2323
from .client import CodesphereSDK
2424

2525
from .exceptions import CodesphereError, AuthenticationError
26-
from .resources.team import Team, TeamCreate, TeamBase
26+
from .resources.team import (
27+
Team,
28+
TeamCreate,
29+
TeamBase,
30+
Domain,
31+
CustomDomainConfig,
32+
WorkspaceConnectionItem,
33+
DomainVerificationStatus,
34+
DomainBase,
35+
DomainRouting,
36+
)
2737
from .resources.workspace import (
2838
Workspace,
2939
WorkspaceCreate,
@@ -32,13 +42,6 @@
3242
)
3343
from .resources.workspace.envVars import EnvVar
3444
from .resources.metadata import Datacenter, Characteristic, WsPlan, Image
35-
from .resources.domain import (
36-
Domain,
37-
CustomDomainConfig,
38-
DomainVerificationStatus,
39-
DomainBase,
40-
DomainsResource,
41-
)
4245

4346
logging.getLogger("codesphere").addHandler(logging.NullHandler())
4447

@@ -60,7 +63,9 @@
6063
"Image",
6164
"Domain",
6265
"CustomDomainConfig",
66+
"WorkspaceConnectionItem",
6367
"DomainVerificationStatus",
6468
"DomainBase",
6569
"DomainsResource",
70+
"DomainRouting",
6671
]

0 commit comments

Comments
 (0)