Skip to content

Commit 3f01bb4

Browse files
authored
feat(audit_trail): add edge-services resources (#1345)
1 parent 38ba4b8 commit 3f01bb4

File tree

6 files changed

+616
-0
lines changed

6 files changed

+616
-0
lines changed

scaleway-async/scaleway_async/audit_trail/v1alpha1/__init__.py

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,15 @@
1818
from .types import AppleSiliconServerInfo
1919
from .types import BaremetalServerInfo
2020
from .types import BaremetalSettingInfo
21+
from .types import EdgeServicesBackendStageInfo
22+
from .types import EdgeServicesCacheStageInfo
23+
from .types import EdgeServicesDNSStageInfo
24+
from .types import EdgeServicesPipelineInfo
25+
from .types import EdgeServicesPlanInfo
26+
from .types import EdgeServicesRouteRulesInfo
27+
from .types import EdgeServicesRouteStageInfo
28+
from .types import EdgeServicesTLSStageInfo
29+
from .types import EdgeServicesWAFStageInfo
2130
from .types import InstanceServerInfo
2231
from .types import IpamIpInfo
2332
from .types import KeyManagerKeyInfo
@@ -78,6 +87,15 @@
7887
"AppleSiliconServerInfo",
7988
"BaremetalServerInfo",
8089
"BaremetalSettingInfo",
90+
"EdgeServicesBackendStageInfo",
91+
"EdgeServicesCacheStageInfo",
92+
"EdgeServicesDNSStageInfo",
93+
"EdgeServicesPipelineInfo",
94+
"EdgeServicesPlanInfo",
95+
"EdgeServicesRouteRulesInfo",
96+
"EdgeServicesRouteStageInfo",
97+
"EdgeServicesTLSStageInfo",
98+
"EdgeServicesWAFStageInfo",
8199
"InstanceServerInfo",
82100
"IpamIpInfo",
83101
"KeyManagerKeyInfo",

scaleway-async/scaleway_async/audit_trail/v1alpha1/marshalling.py

Lines changed: 218 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,15 @@
2424
AppleSiliconServerInfo,
2525
BaremetalServerInfo,
2626
BaremetalSettingInfo,
27+
EdgeServicesBackendStageInfo,
28+
EdgeServicesCacheStageInfo,
29+
EdgeServicesDNSStageInfo,
30+
EdgeServicesPipelineInfo,
31+
EdgeServicesPlanInfo,
32+
EdgeServicesRouteRulesInfo,
33+
EdgeServicesRouteStageInfo,
34+
EdgeServicesTLSStageInfo,
35+
EdgeServicesWAFStageInfo,
2736
InstanceServerInfo,
2837
IpamIpInfo,
2938
KeyManagerKeyInfo,
@@ -293,6 +302,153 @@ def unmarshal_BaremetalSettingInfo(data: Any) -> BaremetalSettingInfo:
293302
return BaremetalSettingInfo(**args)
294303

295304

305+
def unmarshal_EdgeServicesBackendStageInfo(data: Any) -> EdgeServicesBackendStageInfo:
306+
if not isinstance(data, dict):
307+
raise TypeError(
308+
"Unmarshalling the type 'EdgeServicesBackendStageInfo' failed as data isn't a dictionary."
309+
)
310+
311+
args: dict[str, Any] = {}
312+
313+
field = data.get("pipeline_id", None)
314+
if field is not None:
315+
args["pipeline_id"] = field
316+
else:
317+
args["pipeline_id"] = None
318+
319+
return EdgeServicesBackendStageInfo(**args)
320+
321+
322+
def unmarshal_EdgeServicesCacheStageInfo(data: Any) -> EdgeServicesCacheStageInfo:
323+
if not isinstance(data, dict):
324+
raise TypeError(
325+
"Unmarshalling the type 'EdgeServicesCacheStageInfo' failed as data isn't a dictionary."
326+
)
327+
328+
args: dict[str, Any] = {}
329+
330+
field = data.get("pipeline_id", None)
331+
if field is not None:
332+
args["pipeline_id"] = field
333+
else:
334+
args["pipeline_id"] = None
335+
336+
return EdgeServicesCacheStageInfo(**args)
337+
338+
339+
def unmarshal_EdgeServicesDNSStageInfo(data: Any) -> EdgeServicesDNSStageInfo:
340+
if not isinstance(data, dict):
341+
raise TypeError(
342+
"Unmarshalling the type 'EdgeServicesDNSStageInfo' failed as data isn't a dictionary."
343+
)
344+
345+
args: dict[str, Any] = {}
346+
347+
field = data.get("pipeline_id", None)
348+
if field is not None:
349+
args["pipeline_id"] = field
350+
else:
351+
args["pipeline_id"] = None
352+
353+
return EdgeServicesDNSStageInfo(**args)
354+
355+
356+
def unmarshal_EdgeServicesPipelineInfo(data: Any) -> EdgeServicesPipelineInfo:
357+
if not isinstance(data, dict):
358+
raise TypeError(
359+
"Unmarshalling the type 'EdgeServicesPipelineInfo' failed as data isn't a dictionary."
360+
)
361+
362+
args: dict[str, Any] = {}
363+
364+
field = data.get("name", None)
365+
if field is not None:
366+
args["name"] = field
367+
else:
368+
args["name"] = None
369+
370+
return EdgeServicesPipelineInfo(**args)
371+
372+
373+
def unmarshal_EdgeServicesPlanInfo(data: Any) -> EdgeServicesPlanInfo:
374+
if not isinstance(data, dict):
375+
raise TypeError(
376+
"Unmarshalling the type 'EdgeServicesPlanInfo' failed as data isn't a dictionary."
377+
)
378+
379+
args: dict[str, Any] = {}
380+
381+
return EdgeServicesPlanInfo(**args)
382+
383+
384+
def unmarshal_EdgeServicesRouteRulesInfo(data: Any) -> EdgeServicesRouteRulesInfo:
385+
if not isinstance(data, dict):
386+
raise TypeError(
387+
"Unmarshalling the type 'EdgeServicesRouteRulesInfo' failed as data isn't a dictionary."
388+
)
389+
390+
args: dict[str, Any] = {}
391+
392+
field = data.get("route_stage_id", None)
393+
if field is not None:
394+
args["route_stage_id"] = field
395+
else:
396+
args["route_stage_id"] = None
397+
398+
return EdgeServicesRouteRulesInfo(**args)
399+
400+
401+
def unmarshal_EdgeServicesRouteStageInfo(data: Any) -> EdgeServicesRouteStageInfo:
402+
if not isinstance(data, dict):
403+
raise TypeError(
404+
"Unmarshalling the type 'EdgeServicesRouteStageInfo' failed as data isn't a dictionary."
405+
)
406+
407+
args: dict[str, Any] = {}
408+
409+
field = data.get("pipeline_id", None)
410+
if field is not None:
411+
args["pipeline_id"] = field
412+
else:
413+
args["pipeline_id"] = None
414+
415+
return EdgeServicesRouteStageInfo(**args)
416+
417+
418+
def unmarshal_EdgeServicesTLSStageInfo(data: Any) -> EdgeServicesTLSStageInfo:
419+
if not isinstance(data, dict):
420+
raise TypeError(
421+
"Unmarshalling the type 'EdgeServicesTLSStageInfo' failed as data isn't a dictionary."
422+
)
423+
424+
args: dict[str, Any] = {}
425+
426+
field = data.get("pipeline_id", None)
427+
if field is not None:
428+
args["pipeline_id"] = field
429+
else:
430+
args["pipeline_id"] = None
431+
432+
return EdgeServicesTLSStageInfo(**args)
433+
434+
435+
def unmarshal_EdgeServicesWAFStageInfo(data: Any) -> EdgeServicesWAFStageInfo:
436+
if not isinstance(data, dict):
437+
raise TypeError(
438+
"Unmarshalling the type 'EdgeServicesWAFStageInfo' failed as data isn't a dictionary."
439+
)
440+
441+
args: dict[str, Any] = {}
442+
443+
field = data.get("pipeline_id", None)
444+
if field is not None:
445+
args["pipeline_id"] = field
446+
else:
447+
args["pipeline_id"] = None
448+
449+
return EdgeServicesWAFStageInfo(**args)
450+
451+
296452
def unmarshal_InstanceServerInfo(data: Any) -> InstanceServerInfo:
297453
if not isinstance(data, dict):
298454
raise TypeError(
@@ -797,6 +953,68 @@ def unmarshal_Resource(data: Any) -> Resource:
797953
else:
798954
args["load_balancer_certificate_info"] = None
799955

956+
field = data.get("edge_services_plan_info", None)
957+
if field is not None:
958+
args["edge_services_plan_info"] = unmarshal_EdgeServicesPlanInfo(field)
959+
else:
960+
args["edge_services_plan_info"] = None
961+
962+
field = data.get("edge_services_pipeline_info", None)
963+
if field is not None:
964+
args["edge_services_pipeline_info"] = unmarshal_EdgeServicesPipelineInfo(field)
965+
else:
966+
args["edge_services_pipeline_info"] = None
967+
968+
field = data.get("edge_services_dns_stage_info", None)
969+
if field is not None:
970+
args["edge_services_dns_stage_info"] = unmarshal_EdgeServicesDNSStageInfo(field)
971+
else:
972+
args["edge_services_dns_stage_info"] = None
973+
974+
field = data.get("edge_services_tls_stage_info", None)
975+
if field is not None:
976+
args["edge_services_tls_stage_info"] = unmarshal_EdgeServicesTLSStageInfo(field)
977+
else:
978+
args["edge_services_tls_stage_info"] = None
979+
980+
field = data.get("edge_services_cache_stage_info", None)
981+
if field is not None:
982+
args["edge_services_cache_stage_info"] = unmarshal_EdgeServicesCacheStageInfo(
983+
field
984+
)
985+
else:
986+
args["edge_services_cache_stage_info"] = None
987+
988+
field = data.get("edge_services_route_stage_info", None)
989+
if field is not None:
990+
args["edge_services_route_stage_info"] = unmarshal_EdgeServicesRouteStageInfo(
991+
field
992+
)
993+
else:
994+
args["edge_services_route_stage_info"] = None
995+
996+
field = data.get("edge_services_route_rules_info", None)
997+
if field is not None:
998+
args["edge_services_route_rules_info"] = unmarshal_EdgeServicesRouteRulesInfo(
999+
field
1000+
)
1001+
else:
1002+
args["edge_services_route_rules_info"] = None
1003+
1004+
field = data.get("edge_services_waf_stage_info", None)
1005+
if field is not None:
1006+
args["edge_services_waf_stage_info"] = unmarshal_EdgeServicesWAFStageInfo(field)
1007+
else:
1008+
args["edge_services_waf_stage_info"] = None
1009+
1010+
field = data.get("edge_services_backend_stage_info", None)
1011+
if field is not None:
1012+
args["edge_services_backend_stage_info"] = (
1013+
unmarshal_EdgeServicesBackendStageInfo(field)
1014+
)
1015+
else:
1016+
args["edge_services_backend_stage_info"] = None
1017+
8001018
return Resource(**args)
8011019

8021020

scaleway-async/scaleway_async/audit_trail/v1alpha1/types.py

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -153,6 +153,15 @@ class ResourceType(str, Enum, metaclass=StrEnumMeta):
153153
LOAD_BALANCER_CERTIFICATE = "load_balancer_certificate"
154154
SFS_FILESYSTEM = "sfs_filesystem"
155155
VPC_PRIVATE_NETWORK = "vpc_private_network"
156+
EDGE_SERVICES_PLAN = "edge_services_plan"
157+
EDGE_SERVICES_PIPELINE = "edge_services_pipeline"
158+
EDGE_SERVICES_DNS_STAGE = "edge_services_dns_stage"
159+
EDGE_SERVICES_TLS_STAGE = "edge_services_tls_stage"
160+
EDGE_SERVICES_CACHE_STAGE = "edge_services_cache_stage"
161+
EDGE_SERVICES_ROUTE_STAGE = "edge_services_route_stage"
162+
EDGE_SERVICES_ROUTE_RULES = "edge_services_route_rules"
163+
EDGE_SERVICES_WAF_STAGE = "edge_services_waf_stage"
164+
EDGE_SERVICES_BACKEND_STAGE = "edge_services_backend_stage"
156165

157166
def __str__(self) -> str:
158167
return str(self.value)
@@ -200,6 +209,51 @@ class BaremetalSettingInfo:
200209
type_: str
201210

202211

212+
@dataclass
213+
class EdgeServicesBackendStageInfo:
214+
pipeline_id: Optional[str] = None
215+
216+
217+
@dataclass
218+
class EdgeServicesCacheStageInfo:
219+
pipeline_id: Optional[str] = None
220+
221+
222+
@dataclass
223+
class EdgeServicesDNSStageInfo:
224+
pipeline_id: Optional[str] = None
225+
226+
227+
@dataclass
228+
class EdgeServicesPipelineInfo:
229+
name: str
230+
231+
232+
@dataclass
233+
class EdgeServicesPlanInfo:
234+
pass
235+
236+
237+
@dataclass
238+
class EdgeServicesRouteRulesInfo:
239+
route_stage_id: str
240+
241+
242+
@dataclass
243+
class EdgeServicesRouteStageInfo:
244+
pipeline_id: Optional[str] = None
245+
246+
247+
@dataclass
248+
class EdgeServicesTLSStageInfo:
249+
pipeline_id: Optional[str] = None
250+
251+
252+
@dataclass
253+
class EdgeServicesWAFStageInfo:
254+
pipeline_id: Optional[str] = None
255+
256+
203257
@dataclass
204258
class InstanceServerInfo:
205259
name: str
@@ -346,6 +400,24 @@ class Resource:
346400

347401
load_balancer_certificate_info: Optional[LoadBalancerCertificateInfo] = None
348402

403+
edge_services_plan_info: Optional[EdgeServicesPlanInfo] = None
404+
405+
edge_services_pipeline_info: Optional[EdgeServicesPipelineInfo] = None
406+
407+
edge_services_dns_stage_info: Optional[EdgeServicesDNSStageInfo] = None
408+
409+
edge_services_tls_stage_info: Optional[EdgeServicesTLSStageInfo] = None
410+
411+
edge_services_cache_stage_info: Optional[EdgeServicesCacheStageInfo] = None
412+
413+
edge_services_route_stage_info: Optional[EdgeServicesRouteStageInfo] = None
414+
415+
edge_services_route_rules_info: Optional[EdgeServicesRouteRulesInfo] = None
416+
417+
edge_services_waf_stage_info: Optional[EdgeServicesWAFStageInfo] = None
418+
419+
edge_services_backend_stage_info: Optional[EdgeServicesBackendStageInfo] = None
420+
349421

350422
@dataclass
351423
class EventPrincipal:

scaleway/scaleway/audit_trail/v1alpha1/__init__.py

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,15 @@
1818
from .types import AppleSiliconServerInfo
1919
from .types import BaremetalServerInfo
2020
from .types import BaremetalSettingInfo
21+
from .types import EdgeServicesBackendStageInfo
22+
from .types import EdgeServicesCacheStageInfo
23+
from .types import EdgeServicesDNSStageInfo
24+
from .types import EdgeServicesPipelineInfo
25+
from .types import EdgeServicesPlanInfo
26+
from .types import EdgeServicesRouteRulesInfo
27+
from .types import EdgeServicesRouteStageInfo
28+
from .types import EdgeServicesTLSStageInfo
29+
from .types import EdgeServicesWAFStageInfo
2130
from .types import InstanceServerInfo
2231
from .types import IpamIpInfo
2332
from .types import KeyManagerKeyInfo
@@ -78,6 +87,15 @@
7887
"AppleSiliconServerInfo",
7988
"BaremetalServerInfo",
8089
"BaremetalSettingInfo",
90+
"EdgeServicesBackendStageInfo",
91+
"EdgeServicesCacheStageInfo",
92+
"EdgeServicesDNSStageInfo",
93+
"EdgeServicesPipelineInfo",
94+
"EdgeServicesPlanInfo",
95+
"EdgeServicesRouteRulesInfo",
96+
"EdgeServicesRouteStageInfo",
97+
"EdgeServicesTLSStageInfo",
98+
"EdgeServicesWAFStageInfo",
8199
"InstanceServerInfo",
82100
"IpamIpInfo",
83101
"KeyManagerKeyInfo",

0 commit comments

Comments
 (0)