gcore 0.1.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of gcore might be problematic. Click here for more details.

Files changed (437) hide show
  1. gcore/__init__.py +89 -0
  2. gcore/_base_client.py +1943 -0
  3. gcore/_client.py +493 -0
  4. gcore/_compat.py +219 -0
  5. gcore/_constants.py +16 -0
  6. gcore/_exceptions.py +108 -0
  7. gcore/_files.py +123 -0
  8. gcore/_models.py +803 -0
  9. gcore/_qs.py +150 -0
  10. gcore/_resource.py +43 -0
  11. gcore/_response.py +830 -0
  12. gcore/_streaming.py +333 -0
  13. gcore/_types.py +217 -0
  14. gcore/_utils/__init__.py +57 -0
  15. gcore/_utils/_logs.py +25 -0
  16. gcore/_utils/_proxy.py +65 -0
  17. gcore/_utils/_reflection.py +42 -0
  18. gcore/_utils/_resources_proxy.py +24 -0
  19. gcore/_utils/_streams.py +12 -0
  20. gcore/_utils/_sync.py +86 -0
  21. gcore/_utils/_transform.py +447 -0
  22. gcore/_utils/_typing.py +151 -0
  23. gcore/_utils/_utils.py +422 -0
  24. gcore/_version.py +4 -0
  25. gcore/lib/.keep +4 -0
  26. gcore/lib/polling.py +19 -0
  27. gcore/pagination.py +70 -0
  28. gcore/py.typed +0 -0
  29. gcore/resources/__init__.py +33 -0
  30. gcore/resources/cloud/__init__.py +327 -0
  31. gcore/resources/cloud/baremetal/__init__.py +61 -0
  32. gcore/resources/cloud/baremetal/baremetal.py +166 -0
  33. gcore/resources/cloud/baremetal/flavors.py +371 -0
  34. gcore/resources/cloud/baremetal/images.py +238 -0
  35. gcore/resources/cloud/baremetal/servers.py +1042 -0
  36. gcore/resources/cloud/billing_reservations.py +386 -0
  37. gcore/resources/cloud/cloud.py +774 -0
  38. gcore/resources/cloud/file_shares/__init__.py +33 -0
  39. gcore/resources/cloud/file_shares/access_rules.py +434 -0
  40. gcore/resources/cloud/file_shares/file_shares.py +994 -0
  41. gcore/resources/cloud/floating_ips.py +765 -0
  42. gcore/resources/cloud/gpu_baremetal_clusters/__init__.py +75 -0
  43. gcore/resources/cloud/gpu_baremetal_clusters/flavors.py +211 -0
  44. gcore/resources/cloud/gpu_baremetal_clusters/gpu_baremetal_clusters.py +1493 -0
  45. gcore/resources/cloud/gpu_baremetal_clusters/images.py +785 -0
  46. gcore/resources/cloud/gpu_baremetal_clusters/interfaces.py +175 -0
  47. gcore/resources/cloud/gpu_baremetal_clusters/servers.py +1178 -0
  48. gcore/resources/cloud/inference/__init__.py +89 -0
  49. gcore/resources/cloud/inference/deployments/__init__.py +33 -0
  50. gcore/resources/cloud/inference/deployments/deployments.py +1493 -0
  51. gcore/resources/cloud/inference/deployments/logs.py +235 -0
  52. gcore/resources/cloud/inference/flavors.py +280 -0
  53. gcore/resources/cloud/inference/inference.py +295 -0
  54. gcore/resources/cloud/inference/models.py +289 -0
  55. gcore/resources/cloud/inference/registry_credentials.py +649 -0
  56. gcore/resources/cloud/inference/secrets.py +629 -0
  57. gcore/resources/cloud/instances/__init__.py +75 -0
  58. gcore/resources/cloud/instances/flavors.py +449 -0
  59. gcore/resources/cloud/instances/images.py +1297 -0
  60. gcore/resources/cloud/instances/instances.py +2821 -0
  61. gcore/resources/cloud/instances/interfaces.py +797 -0
  62. gcore/resources/cloud/instances/metrics.py +217 -0
  63. gcore/resources/cloud/ip_ranges.py +135 -0
  64. gcore/resources/cloud/load_balancers/__init__.py +103 -0
  65. gcore/resources/cloud/load_balancers/flavors.py +193 -0
  66. gcore/resources/cloud/load_balancers/l7_policies/__init__.py +33 -0
  67. gcore/resources/cloud/load_balancers/l7_policies/l7_policies.py +1020 -0
  68. gcore/resources/cloud/load_balancers/l7_policies/rules.py +1036 -0
  69. gcore/resources/cloud/load_balancers/listeners.py +1089 -0
  70. gcore/resources/cloud/load_balancers/load_balancers.py +1583 -0
  71. gcore/resources/cloud/load_balancers/metrics.py +205 -0
  72. gcore/resources/cloud/load_balancers/pools/__init__.py +47 -0
  73. gcore/resources/cloud/load_balancers/pools/health_monitors.py +352 -0
  74. gcore/resources/cloud/load_balancers/pools/members.py +353 -0
  75. gcore/resources/cloud/load_balancers/pools/pools.py +1190 -0
  76. gcore/resources/cloud/load_balancers/statuses.py +260 -0
  77. gcore/resources/cloud/networks/__init__.py +47 -0
  78. gcore/resources/cloud/networks/networks.py +771 -0
  79. gcore/resources/cloud/networks/routers.py +875 -0
  80. gcore/resources/cloud/networks/subnets.py +865 -0
  81. gcore/resources/cloud/placement_groups.py +465 -0
  82. gcore/resources/cloud/projects.py +608 -0
  83. gcore/resources/cloud/quotas/__init__.py +33 -0
  84. gcore/resources/cloud/quotas/quotas.py +335 -0
  85. gcore/resources/cloud/quotas/requests.py +482 -0
  86. gcore/resources/cloud/regions.py +328 -0
  87. gcore/resources/cloud/registries/__init__.py +75 -0
  88. gcore/resources/cloud/registries/artifacts.py +277 -0
  89. gcore/resources/cloud/registries/registries.py +688 -0
  90. gcore/resources/cloud/registries/repositories.py +265 -0
  91. gcore/resources/cloud/registries/tags.py +190 -0
  92. gcore/resources/cloud/registries/users.py +701 -0
  93. gcore/resources/cloud/reserved_fixed_ips/__init__.py +33 -0
  94. gcore/resources/cloud/reserved_fixed_ips/reserved_fixed_ips.py +965 -0
  95. gcore/resources/cloud/reserved_fixed_ips/vip.py +577 -0
  96. gcore/resources/cloud/secrets.py +797 -0
  97. gcore/resources/cloud/security_groups/__init__.py +33 -0
  98. gcore/resources/cloud/security_groups/rules.py +626 -0
  99. gcore/resources/cloud/security_groups/security_groups.py +863 -0
  100. gcore/resources/cloud/ssh_keys.py +635 -0
  101. gcore/resources/cloud/tasks.py +700 -0
  102. gcore/resources/cloud/users/__init__.py +33 -0
  103. gcore/resources/cloud/users/role_assignments.py +533 -0
  104. gcore/resources/cloud/users/users.py +102 -0
  105. gcore/resources/cloud/volumes.py +1710 -0
  106. gcore/resources/waap/__init__.py +33 -0
  107. gcore/resources/waap/domains/__init__.py +33 -0
  108. gcore/resources/waap/domains/domains.py +515 -0
  109. gcore/resources/waap/domains/settings.py +271 -0
  110. gcore/resources/waap/waap.py +102 -0
  111. gcore/types/__init__.py +3 -0
  112. gcore/types/cloud/__init__.py +199 -0
  113. gcore/types/cloud/allowed_address_pairs.py +15 -0
  114. gcore/types/cloud/aws_iam_data.py +13 -0
  115. gcore/types/cloud/aws_iam_data_param.py +15 -0
  116. gcore/types/cloud/baremetal/__init__.py +13 -0
  117. gcore/types/cloud/baremetal/baremetal_fixed_address.py +30 -0
  118. gcore/types/cloud/baremetal/baremetal_floating_address.py +15 -0
  119. gcore/types/cloud/baremetal/baremetal_server.py +178 -0
  120. gcore/types/cloud/baremetal/flavor_list_params.py +35 -0
  121. gcore/types/cloud/baremetal/flavor_list_suitable_params.py +22 -0
  122. gcore/types/cloud/baremetal/image_list_params.py +33 -0
  123. gcore/types/cloud/baremetal/server_create_params.py +370 -0
  124. gcore/types/cloud/baremetal/server_list_params.py +114 -0
  125. gcore/types/cloud/baremetal/server_rebuild_params.py +23 -0
  126. gcore/types/cloud/baremetal_flavor.py +58 -0
  127. gcore/types/cloud/baremetal_flavor_list.py +16 -0
  128. gcore/types/cloud/billing_reservation.py +153 -0
  129. gcore/types/cloud/billing_reservation_list_params.py +59 -0
  130. gcore/types/cloud/blackhole_port.py +66 -0
  131. gcore/types/cloud/capacity.py +13 -0
  132. gcore/types/cloud/console.py +18 -0
  133. gcore/types/cloud/container_probe.py +36 -0
  134. gcore/types/cloud/container_probe_config.py +16 -0
  135. gcore/types/cloud/container_probe_config_create_param.py +18 -0
  136. gcore/types/cloud/container_probe_create_param.py +38 -0
  137. gcore/types/cloud/container_probe_exec.py +12 -0
  138. gcore/types/cloud/container_probe_exec_create_param.py +13 -0
  139. gcore/types/cloud/container_probe_http_get.py +26 -0
  140. gcore/types/cloud/container_probe_http_get_create_param.py +25 -0
  141. gcore/types/cloud/container_probe_tcp_socket.py +10 -0
  142. gcore/types/cloud/container_probe_tcp_socket_create_param.py +12 -0
  143. gcore/types/cloud/container_scale.py +25 -0
  144. gcore/types/cloud/container_scale_trigger_rate.py +13 -0
  145. gcore/types/cloud/container_scale_trigger_sqs.py +33 -0
  146. gcore/types/cloud/container_scale_trigger_threshold.py +10 -0
  147. gcore/types/cloud/container_scale_triggers.py +36 -0
  148. gcore/types/cloud/ddos_profile.py +33 -0
  149. gcore/types/cloud/ddos_profile_field.py +31 -0
  150. gcore/types/cloud/ddos_profile_option_list.py +15 -0
  151. gcore/types/cloud/ddos_profile_status.py +13 -0
  152. gcore/types/cloud/ddos_profile_template.py +18 -0
  153. gcore/types/cloud/ddos_profile_template_field.py +23 -0
  154. gcore/types/cloud/deploy_status.py +13 -0
  155. gcore/types/cloud/file_share.py +111 -0
  156. gcore/types/cloud/file_share_create_params.py +104 -0
  157. gcore/types/cloud/file_share_list_params.py +24 -0
  158. gcore/types/cloud/file_share_resize_params.py +18 -0
  159. gcore/types/cloud/file_share_update_params.py +18 -0
  160. gcore/types/cloud/file_shares/__init__.py +7 -0
  161. gcore/types/cloud/file_shares/access_rule.py +21 -0
  162. gcore/types/cloud/file_shares/access_rule_create_params.py +21 -0
  163. gcore/types/cloud/file_shares/access_rule_list.py +16 -0
  164. gcore/types/cloud/fixed_address.py +38 -0
  165. gcore/types/cloud/fixed_address_short.py +24 -0
  166. gcore/types/cloud/flavor_hardware_description.py +27 -0
  167. gcore/types/cloud/floating_address.py +15 -0
  168. gcore/types/cloud/floating_ip.py +77 -0
  169. gcore/types/cloud/floating_ip_assign_params.py +20 -0
  170. gcore/types/cloud/floating_ip_create_params.py +40 -0
  171. gcore/types/cloud/floating_ip_detailed.py +222 -0
  172. gcore/types/cloud/floating_ip_list_params.py +35 -0
  173. gcore/types/cloud/floating_ip_status.py +7 -0
  174. gcore/types/cloud/gpu_baremetal_cluster.py +116 -0
  175. gcore/types/cloud/gpu_baremetal_cluster_create_params.py +155 -0
  176. gcore/types/cloud/gpu_baremetal_cluster_delete_params.py +28 -0
  177. gcore/types/cloud/gpu_baremetal_cluster_list_params.py +19 -0
  178. gcore/types/cloud/gpu_baremetal_cluster_rebuild_params.py +26 -0
  179. gcore/types/cloud/gpu_baremetal_cluster_resize_params.py +16 -0
  180. gcore/types/cloud/gpu_baremetal_cluster_server.py +200 -0
  181. gcore/types/cloud/gpu_baremetal_cluster_server_list.py +16 -0
  182. gcore/types/cloud/gpu_baremetal_clusters/__init__.py +9 -0
  183. gcore/types/cloud/gpu_baremetal_clusters/flavor_list_params.py +21 -0
  184. gcore/types/cloud/gpu_baremetal_clusters/image_upload_params.py +58 -0
  185. gcore/types/cloud/gpu_baremetal_clusters/server_attach_interface_params.py +253 -0
  186. gcore/types/cloud/gpu_baremetal_clusters/server_delete_params.py +21 -0
  187. gcore/types/cloud/gpu_baremetal_clusters/server_detach_interface_params.py +19 -0
  188. gcore/types/cloud/gpu_baremetal_flavor.py +133 -0
  189. gcore/types/cloud/gpu_baremetal_flavor_list.py +16 -0
  190. gcore/types/cloud/gpu_image.py +70 -0
  191. gcore/types/cloud/gpu_image_list.py +16 -0
  192. gcore/types/cloud/health_monitor.py +48 -0
  193. gcore/types/cloud/health_monitor_status.py +22 -0
  194. gcore/types/cloud/http_method.py +7 -0
  195. gcore/types/cloud/image.py +100 -0
  196. gcore/types/cloud/image_list.py +16 -0
  197. gcore/types/cloud/inference/__init__.py +25 -0
  198. gcore/types/cloud/inference/container.py +26 -0
  199. gcore/types/cloud/inference/deployment_create_params.py +222 -0
  200. gcore/types/cloud/inference/deployment_list_params.py +21 -0
  201. gcore/types/cloud/inference/deployment_update_params.py +215 -0
  202. gcore/types/cloud/inference/deployments/__init__.py +5 -0
  203. gcore/types/cloud/inference/deployments/log_list_params.py +28 -0
  204. gcore/types/cloud/inference/flavor_list_params.py +18 -0
  205. gcore/types/cloud/inference/inference.py +95 -0
  206. gcore/types/cloud/inference/inference_apikey_secret.py +15 -0
  207. gcore/types/cloud/inference/inference_flavor.py +34 -0
  208. gcore/types/cloud/inference/inference_log.py +21 -0
  209. gcore/types/cloud/inference/inference_registry_credential.py +19 -0
  210. gcore/types/cloud/inference/inference_registry_credential_full.py +22 -0
  211. gcore/types/cloud/inference/inference_secret.py +17 -0
  212. gcore/types/cloud/inference/mlcatalog_model_card.py +65 -0
  213. gcore/types/cloud/inference/mlcatalog_order_by_choices.py +7 -0
  214. gcore/types/cloud/inference/model_list_params.py +23 -0
  215. gcore/types/cloud/inference/registry_credential_create_params.py +24 -0
  216. gcore/types/cloud/inference/registry_credential_list_params.py +21 -0
  217. gcore/types/cloud/inference/registry_credential_replace_params.py +21 -0
  218. gcore/types/cloud/inference/secret_create_params.py +23 -0
  219. gcore/types/cloud/inference/secret_list_params.py +21 -0
  220. gcore/types/cloud/inference/secret_replace_params.py +20 -0
  221. gcore/types/cloud/inference_probes.py +19 -0
  222. gcore/types/cloud/ingress_opts_out.py +16 -0
  223. gcore/types/cloud/ingress_opts_param.py +18 -0
  224. gcore/types/cloud/instance.py +296 -0
  225. gcore/types/cloud/instance_action_params.py +32 -0
  226. gcore/types/cloud/instance_add_to_placement_group_params.py +16 -0
  227. gcore/types/cloud/instance_assign_security_group_params.py +28 -0
  228. gcore/types/cloud/instance_create_params.py +622 -0
  229. gcore/types/cloud/instance_delete_params.py +33 -0
  230. gcore/types/cloud/instance_get_console_params.py +16 -0
  231. gcore/types/cloud/instance_interface.py +40 -0
  232. gcore/types/cloud/instance_isolation.py +12 -0
  233. gcore/types/cloud/instance_list.py +16 -0
  234. gcore/types/cloud/instance_list_params.py +146 -0
  235. gcore/types/cloud/instance_metrics_time_unit.py +7 -0
  236. gcore/types/cloud/instance_resize_params.py +16 -0
  237. gcore/types/cloud/instance_unassign_security_group_params.py +28 -0
  238. gcore/types/cloud/instance_update_params.py +18 -0
  239. gcore/types/cloud/instances/__init__.py +19 -0
  240. gcore/types/cloud/instances/flavor_list_for_resize_params.py +16 -0
  241. gcore/types/cloud/instances/flavor_list_params.py +25 -0
  242. gcore/types/cloud/instances/flavor_list_suitable_params.py +56 -0
  243. gcore/types/cloud/instances/image_create_from_volume_params.py +53 -0
  244. gcore/types/cloud/instances/image_get_params.py +16 -0
  245. gcore/types/cloud/instances/image_list_params.py +33 -0
  246. gcore/types/cloud/instances/image_update_params.py +43 -0
  247. gcore/types/cloud/instances/image_upload_params.py +62 -0
  248. gcore/types/cloud/instances/instance_flavor.py +49 -0
  249. gcore/types/cloud/instances/instance_flavor_list.py +16 -0
  250. gcore/types/cloud/instances/interface_attach_params.py +253 -0
  251. gcore/types/cloud/instances/interface_detach_params.py +19 -0
  252. gcore/types/cloud/instances/metric_list_params.py +23 -0
  253. gcore/types/cloud/instances/metrics.py +52 -0
  254. gcore/types/cloud/instances/metrics_list.py +16 -0
  255. gcore/types/cloud/interface_ip_family.py +7 -0
  256. gcore/types/cloud/ip_assignment.py +13 -0
  257. gcore/types/cloud/ip_ranges.py +12 -0
  258. gcore/types/cloud/ip_version.py +7 -0
  259. gcore/types/cloud/laas_index_retention_policy.py +12 -0
  260. gcore/types/cloud/laas_index_retention_policy_param.py +13 -0
  261. gcore/types/cloud/lb_algorithm.py +7 -0
  262. gcore/types/cloud/lb_health_monitor_type.py +7 -0
  263. gcore/types/cloud/lb_listener_protocol.py +7 -0
  264. gcore/types/cloud/lb_pool_protocol.py +7 -0
  265. gcore/types/cloud/lb_session_persistence_type.py +7 -0
  266. gcore/types/cloud/listener_status.py +27 -0
  267. gcore/types/cloud/load_balancer.py +144 -0
  268. gcore/types/cloud/load_balancer_create_params.py +327 -0
  269. gcore/types/cloud/load_balancer_failover_params.py +16 -0
  270. gcore/types/cloud/load_balancer_flavor_detail.py +40 -0
  271. gcore/types/cloud/load_balancer_flavor_list.py +16 -0
  272. gcore/types/cloud/load_balancer_get_params.py +19 -0
  273. gcore/types/cloud/load_balancer_instance_role.py +7 -0
  274. gcore/types/cloud/load_balancer_l7_policy.py +86 -0
  275. gcore/types/cloud/load_balancer_l7_policy_list.py +16 -0
  276. gcore/types/cloud/load_balancer_l7_rule.py +72 -0
  277. gcore/types/cloud/load_balancer_l7_rule_list.py +16 -0
  278. gcore/types/cloud/load_balancer_list_params.py +53 -0
  279. gcore/types/cloud/load_balancer_listener_detail.py +97 -0
  280. gcore/types/cloud/load_balancer_listener_list.py +16 -0
  281. gcore/types/cloud/load_balancer_member_connectivity.py +7 -0
  282. gcore/types/cloud/load_balancer_metrics.py +32 -0
  283. gcore/types/cloud/load_balancer_metrics_list.py +16 -0
  284. gcore/types/cloud/load_balancer_operating_status.py +7 -0
  285. gcore/types/cloud/load_balancer_pool.py +87 -0
  286. gcore/types/cloud/load_balancer_pool_list.py +16 -0
  287. gcore/types/cloud/load_balancer_resize_params.py +16 -0
  288. gcore/types/cloud/load_balancer_statistics.py +22 -0
  289. gcore/types/cloud/load_balancer_status.py +38 -0
  290. gcore/types/cloud/load_balancer_status_list.py +16 -0
  291. gcore/types/cloud/load_balancer_update_params.py +43 -0
  292. gcore/types/cloud/load_balancers/__init__.py +15 -0
  293. gcore/types/cloud/load_balancers/flavor_list_params.py +16 -0
  294. gcore/types/cloud/load_balancers/l7_policies/__init__.py +6 -0
  295. gcore/types/cloud/load_balancers/l7_policies/rule_create_params.py +50 -0
  296. gcore/types/cloud/load_balancers/l7_policies/rule_replace_params.py +43 -0
  297. gcore/types/cloud/load_balancers/l7_policy_create_params.py +54 -0
  298. gcore/types/cloud/load_balancers/l7_policy_replace_params.py +51 -0
  299. gcore/types/cloud/load_balancers/listener_create_params.py +72 -0
  300. gcore/types/cloud/load_balancers/listener_get_params.py +16 -0
  301. gcore/types/cloud/load_balancers/listener_list_params.py +19 -0
  302. gcore/types/cloud/load_balancers/listener_update_params.py +55 -0
  303. gcore/types/cloud/load_balancers/metric_list_params.py +21 -0
  304. gcore/types/cloud/load_balancers/pool_create_params.py +141 -0
  305. gcore/types/cloud/load_balancers/pool_list_params.py +25 -0
  306. gcore/types/cloud/load_balancers/pool_update_params.py +139 -0
  307. gcore/types/cloud/load_balancers/pools/__init__.py +6 -0
  308. gcore/types/cloud/load_balancers/pools/health_monitor_create_params.py +49 -0
  309. gcore/types/cloud/load_balancers/pools/member_add_params.py +44 -0
  310. gcore/types/cloud/logging.py +22 -0
  311. gcore/types/cloud/member.py +47 -0
  312. gcore/types/cloud/member_status.py +24 -0
  313. gcore/types/cloud/network.py +79 -0
  314. gcore/types/cloud/network_create_params.py +36 -0
  315. gcore/types/cloud/network_details.py +80 -0
  316. gcore/types/cloud/network_interface.py +78 -0
  317. gcore/types/cloud/network_interface_list.py +16 -0
  318. gcore/types/cloud/network_list_params.py +41 -0
  319. gcore/types/cloud/network_update_params.py +18 -0
  320. gcore/types/cloud/networks/__init__.py +14 -0
  321. gcore/types/cloud/networks/router.py +83 -0
  322. gcore/types/cloud/networks/router_attach_subnet_params.py +24 -0
  323. gcore/types/cloud/networks/router_create_params.py +75 -0
  324. gcore/types/cloud/networks/router_detach_subnet_params.py +16 -0
  325. gcore/types/cloud/networks/router_list.py +16 -0
  326. gcore/types/cloud/networks/router_list_params.py +19 -0
  327. gcore/types/cloud/networks/router_update_params.py +45 -0
  328. gcore/types/cloud/networks/subnet_create_params.py +82 -0
  329. gcore/types/cloud/networks/subnet_list_params.py +58 -0
  330. gcore/types/cloud/networks/subnet_update_params.py +47 -0
  331. gcore/types/cloud/placement_group.py +41 -0
  332. gcore/types/cloud/placement_group_create_params.py +19 -0
  333. gcore/types/cloud/placement_group_list.py +16 -0
  334. gcore/types/cloud/pool_status.py +31 -0
  335. gcore/types/cloud/project.py +47 -0
  336. gcore/types/cloud/project_create_params.py +22 -0
  337. gcore/types/cloud/project_list_params.py +27 -0
  338. gcore/types/cloud/project_replace_params.py +18 -0
  339. gcore/types/cloud/provisioning_status.py +9 -0
  340. gcore/types/cloud/quota_get_all_response.py +340 -0
  341. gcore/types/cloud/quota_get_by_region_response.py +288 -0
  342. gcore/types/cloud/quota_get_global_response.py +51 -0
  343. gcore/types/cloud/quotas/__init__.py +8 -0
  344. gcore/types/cloud/quotas/request_create_params.py +193 -0
  345. gcore/types/cloud/quotas/request_get_response.py +205 -0
  346. gcore/types/cloud/quotas/request_list_params.py +22 -0
  347. gcore/types/cloud/quotas/request_list_response.py +205 -0
  348. gcore/types/cloud/region.py +101 -0
  349. gcore/types/cloud/region_capacity.py +16 -0
  350. gcore/types/cloud/region_capacity_list.py +16 -0
  351. gcore/types/cloud/region_get_params.py +18 -0
  352. gcore/types/cloud/region_list_params.py +31 -0
  353. gcore/types/cloud/registries/__init__.py +14 -0
  354. gcore/types/cloud/registries/registry_artifact.py +35 -0
  355. gcore/types/cloud/registries/registry_artifact_list.py +16 -0
  356. gcore/types/cloud/registries/registry_repository.py +30 -0
  357. gcore/types/cloud/registries/registry_repository_list.py +16 -0
  358. gcore/types/cloud/registries/registry_user.py +28 -0
  359. gcore/types/cloud/registries/registry_user_created.py +31 -0
  360. gcore/types/cloud/registries/registry_user_list.py +16 -0
  361. gcore/types/cloud/registries/user_create_multiple_params.py +36 -0
  362. gcore/types/cloud/registries/user_create_params.py +30 -0
  363. gcore/types/cloud/registries/user_update_params.py +21 -0
  364. gcore/types/cloud/registry.py +33 -0
  365. gcore/types/cloud/registry_create_params.py +24 -0
  366. gcore/types/cloud/registry_list.py +16 -0
  367. gcore/types/cloud/registry_resize_params.py +16 -0
  368. gcore/types/cloud/registry_tag.py +27 -0
  369. gcore/types/cloud/reserved_fixed_ip.py +98 -0
  370. gcore/types/cloud/reserved_fixed_ip_create_params.py +107 -0
  371. gcore/types/cloud/reserved_fixed_ip_list_params.py +47 -0
  372. gcore/types/cloud/reserved_fixed_ips/__init__.py +12 -0
  373. gcore/types/cloud/reserved_fixed_ips/candidate_port.py +26 -0
  374. gcore/types/cloud/reserved_fixed_ips/candidate_port_list.py +16 -0
  375. gcore/types/cloud/reserved_fixed_ips/connected_port.py +26 -0
  376. gcore/types/cloud/reserved_fixed_ips/connected_port_list.py +16 -0
  377. gcore/types/cloud/reserved_fixed_ips/ip_with_subnet.py +17 -0
  378. gcore/types/cloud/reserved_fixed_ips/vip_replace_connected_ports_params.py +17 -0
  379. gcore/types/cloud/reserved_fixed_ips/vip_toggle_params.py +16 -0
  380. gcore/types/cloud/reserved_fixed_ips/vip_update_connected_ports_params.py +17 -0
  381. gcore/types/cloud/route.py +16 -0
  382. gcore/types/cloud/secret.py +64 -0
  383. gcore/types/cloud/secret_create_params.py +66 -0
  384. gcore/types/cloud/secret_list_response.py +16 -0
  385. gcore/types/cloud/secret_upload_tls_certificate_params.py +39 -0
  386. gcore/types/cloud/security_group.py +45 -0
  387. gcore/types/cloud/security_group_copy_params.py +16 -0
  388. gcore/types/cloud/security_group_create_params.py +94 -0
  389. gcore/types/cloud/security_group_list_params.py +30 -0
  390. gcore/types/cloud/security_group_rule.py +83 -0
  391. gcore/types/cloud/security_group_update_params.py +83 -0
  392. gcore/types/cloud/security_groups/__init__.py +6 -0
  393. gcore/types/cloud/security_groups/rule_create_params.py +65 -0
  394. gcore/types/cloud/security_groups/rule_replace_params.py +72 -0
  395. gcore/types/cloud/session_persistence.py +22 -0
  396. gcore/types/cloud/ssh_key.py +39 -0
  397. gcore/types/cloud/ssh_key_create_params.py +31 -0
  398. gcore/types/cloud/ssh_key_created.py +53 -0
  399. gcore/types/cloud/ssh_key_list_params.py +21 -0
  400. gcore/types/cloud/ssh_key_update_params.py +15 -0
  401. gcore/types/cloud/subnet.py +87 -0
  402. gcore/types/cloud/tag.py +16 -0
  403. gcore/types/cloud/tag_update_map_param.py +10 -0
  404. gcore/types/cloud/task.py +191 -0
  405. gcore/types/cloud/task_acknowledge_all_params.py +16 -0
  406. gcore/types/cloud/task_id_list.py +12 -0
  407. gcore/types/cloud/task_list_params.py +104 -0
  408. gcore/types/cloud/users/__init__.py +9 -0
  409. gcore/types/cloud/users/role_assignment.py +33 -0
  410. gcore/types/cloud/users/role_assignment_create_params.py +22 -0
  411. gcore/types/cloud/users/role_assignment_list_params.py +25 -0
  412. gcore/types/cloud/users/role_assignment_update_delete.py +10 -0
  413. gcore/types/cloud/users/role_assignment_update_params.py +22 -0
  414. gcore/types/cloud/volume.py +141 -0
  415. gcore/types/cloud/volume_attach_to_instance_params.py +21 -0
  416. gcore/types/cloud/volume_change_type_params.py +18 -0
  417. gcore/types/cloud/volume_create_params.py +176 -0
  418. gcore/types/cloud/volume_delete_params.py +18 -0
  419. gcore/types/cloud/volume_detach_from_instance_params.py +18 -0
  420. gcore/types/cloud/volume_list_params.py +56 -0
  421. gcore/types/cloud/volume_resize_params.py +18 -0
  422. gcore/types/cloud/volume_update_params.py +18 -0
  423. gcore/types/waap/__init__.py +12 -0
  424. gcore/types/waap/domain_list_params.py +30 -0
  425. gcore/types/waap/domain_update_params.py +12 -0
  426. gcore/types/waap/domains/__init__.py +5 -0
  427. gcore/types/waap/domains/setting_update_params.py +41 -0
  428. gcore/types/waap/waap_api_urls.py +15 -0
  429. gcore/types/waap/waap_detailed_domain.py +37 -0
  430. gcore/types/waap/waap_domain_ddos_settings.py +31 -0
  431. gcore/types/waap/waap_domain_settings.py +15 -0
  432. gcore/types/waap/waap_domain_status.py +7 -0
  433. gcore/types/waap/waap_summary_domain.py +26 -0
  434. gcore-0.1.0.dist-info/METADATA +482 -0
  435. gcore-0.1.0.dist-info/RECORD +437 -0
  436. gcore-0.1.0.dist-info/WHEEL +4 -0
  437. gcore-0.1.0.dist-info/licenses/LICENSE +201 -0
@@ -0,0 +1,16 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import List
4
+
5
+ from ...._models import BaseModel
6
+ from .instance_flavor import InstanceFlavor
7
+
8
+ __all__ = ["InstanceFlavorList"]
9
+
10
+
11
+ class InstanceFlavorList(BaseModel):
12
+ count: int
13
+ """Number of objects"""
14
+
15
+ results: List[InstanceFlavor]
16
+ """Objects"""
@@ -0,0 +1,253 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Union, Iterable, Optional
6
+ from typing_extensions import Literal, Required, TypeAlias, TypedDict
7
+
8
+ __all__ = [
9
+ "InterfaceAttachParams",
10
+ "NewInterfaceExternalExtendSchemaWithDDOS",
11
+ "NewInterfaceExternalExtendSchemaWithDDOSDDOSProfile",
12
+ "NewInterfaceExternalExtendSchemaWithDdosddosProfileField",
13
+ "NewInterfaceExternalExtendSchemaWithDDOSSecurityGroup",
14
+ "NewInterfaceSpecificSubnetSchema",
15
+ "NewInterfaceSpecificSubnetSchemaDDOSProfile",
16
+ "NewInterfaceSpecificSubnetSchemaDDOSProfileField",
17
+ "NewInterfaceSpecificSubnetSchemaSecurityGroup",
18
+ "NewInterfaceAnySubnetSchema",
19
+ "NewInterfaceAnySubnetSchemaDDOSProfile",
20
+ "NewInterfaceAnySubnetSchemaDDOSProfileField",
21
+ "NewInterfaceAnySubnetSchemaSecurityGroup",
22
+ "NewInterfaceReservedFixedIPSchema",
23
+ "NewInterfaceReservedFixedIPSchemaDDOSProfile",
24
+ "NewInterfaceReservedFixedIPSchemaDDOSProfileField",
25
+ "NewInterfaceReservedFixedIPSchemaSecurityGroup",
26
+ ]
27
+
28
+
29
+ class NewInterfaceExternalExtendSchemaWithDDOS(TypedDict, total=False):
30
+ project_id: int
31
+
32
+ region_id: int
33
+
34
+ ddos_profile: NewInterfaceExternalExtendSchemaWithDDOSDDOSProfile
35
+ """Advanced DDoS protection."""
36
+
37
+ interface_name: str
38
+ """Interface name"""
39
+
40
+ ip_family: Literal["dual", "ipv4", "ipv6"]
41
+ """Which subnets should be selected: IPv4, IPv6 or use dual stack."""
42
+
43
+ port_group: int
44
+ """Each group will be added to the separate trunk."""
45
+
46
+ security_groups: Iterable[NewInterfaceExternalExtendSchemaWithDDOSSecurityGroup]
47
+ """List of security group IDs"""
48
+
49
+ type: str
50
+ """Must be 'external'. Union tag"""
51
+
52
+
53
+ class NewInterfaceExternalExtendSchemaWithDdosddosProfileField(TypedDict, total=False):
54
+ base_field: Optional[int]
55
+ """ID of DDoS profile field"""
56
+
57
+ field_name: Optional[str]
58
+ """Name of DDoS profile field"""
59
+
60
+ field_value: object
61
+ """Complex value. Only one of 'value' or 'field_value' must be specified."""
62
+
63
+ value: Optional[str]
64
+ """Basic type value. Only one of 'value' or 'field_value' must be specified."""
65
+
66
+
67
+ class NewInterfaceExternalExtendSchemaWithDDOSDDOSProfile(TypedDict, total=False):
68
+ profile_template: Required[int]
69
+ """DDoS profile template ID."""
70
+
71
+ fields: Iterable[NewInterfaceExternalExtendSchemaWithDdosddosProfileField]
72
+ """Protection parameters."""
73
+
74
+ profile_template_name: str
75
+ """DDoS profile template name."""
76
+
77
+
78
+ class NewInterfaceExternalExtendSchemaWithDDOSSecurityGroup(TypedDict, total=False):
79
+ id: Required[str]
80
+ """Resource ID"""
81
+
82
+
83
+ class NewInterfaceSpecificSubnetSchema(TypedDict, total=False):
84
+ project_id: int
85
+
86
+ region_id: int
87
+
88
+ subnet_id: Required[str]
89
+ """Port will get an IP address from this subnet"""
90
+
91
+ ddos_profile: NewInterfaceSpecificSubnetSchemaDDOSProfile
92
+ """Advanced DDoS protection."""
93
+
94
+ interface_name: str
95
+ """Interface name"""
96
+
97
+ port_group: int
98
+ """Each group will be added to the separate trunk."""
99
+
100
+ security_groups: Iterable[NewInterfaceSpecificSubnetSchemaSecurityGroup]
101
+ """List of security group IDs"""
102
+
103
+ type: str
104
+ """Must be 'subnet'"""
105
+
106
+
107
+ class NewInterfaceSpecificSubnetSchemaDDOSProfileField(TypedDict, total=False):
108
+ base_field: Optional[int]
109
+ """ID of DDoS profile field"""
110
+
111
+ field_name: Optional[str]
112
+ """Name of DDoS profile field"""
113
+
114
+ field_value: object
115
+ """Complex value. Only one of 'value' or 'field_value' must be specified."""
116
+
117
+ value: Optional[str]
118
+ """Basic type value. Only one of 'value' or 'field_value' must be specified."""
119
+
120
+
121
+ class NewInterfaceSpecificSubnetSchemaDDOSProfile(TypedDict, total=False):
122
+ profile_template: Required[int]
123
+ """DDoS profile template ID."""
124
+
125
+ fields: Iterable[NewInterfaceSpecificSubnetSchemaDDOSProfileField]
126
+ """Protection parameters."""
127
+
128
+ profile_template_name: str
129
+ """DDoS profile template name."""
130
+
131
+
132
+ class NewInterfaceSpecificSubnetSchemaSecurityGroup(TypedDict, total=False):
133
+ id: Required[str]
134
+ """Resource ID"""
135
+
136
+
137
+ class NewInterfaceAnySubnetSchema(TypedDict, total=False):
138
+ project_id: int
139
+
140
+ region_id: int
141
+
142
+ network_id: Required[str]
143
+ """Port will get an IP address in this network subnet"""
144
+
145
+ ddos_profile: NewInterfaceAnySubnetSchemaDDOSProfile
146
+ """Advanced DDoS protection."""
147
+
148
+ interface_name: str
149
+ """Interface name"""
150
+
151
+ ip_family: Literal["dual", "ipv4", "ipv6"]
152
+ """Which subnets should be selected: IPv4, IPv6 or use dual stack."""
153
+
154
+ port_group: int
155
+ """Each group will be added to the separate trunk."""
156
+
157
+ security_groups: Iterable[NewInterfaceAnySubnetSchemaSecurityGroup]
158
+ """List of security group IDs"""
159
+
160
+ type: str
161
+ """Must be 'any_subnet'"""
162
+
163
+
164
+ class NewInterfaceAnySubnetSchemaDDOSProfileField(TypedDict, total=False):
165
+ base_field: Optional[int]
166
+ """ID of DDoS profile field"""
167
+
168
+ field_name: Optional[str]
169
+ """Name of DDoS profile field"""
170
+
171
+ field_value: object
172
+ """Complex value. Only one of 'value' or 'field_value' must be specified."""
173
+
174
+ value: Optional[str]
175
+ """Basic type value. Only one of 'value' or 'field_value' must be specified."""
176
+
177
+
178
+ class NewInterfaceAnySubnetSchemaDDOSProfile(TypedDict, total=False):
179
+ profile_template: Required[int]
180
+ """DDoS profile template ID."""
181
+
182
+ fields: Iterable[NewInterfaceAnySubnetSchemaDDOSProfileField]
183
+ """Protection parameters."""
184
+
185
+ profile_template_name: str
186
+ """DDoS profile template name."""
187
+
188
+
189
+ class NewInterfaceAnySubnetSchemaSecurityGroup(TypedDict, total=False):
190
+ id: Required[str]
191
+ """Resource ID"""
192
+
193
+
194
+ class NewInterfaceReservedFixedIPSchema(TypedDict, total=False):
195
+ project_id: int
196
+
197
+ region_id: int
198
+
199
+ port_id: Required[str]
200
+ """Port ID"""
201
+
202
+ ddos_profile: NewInterfaceReservedFixedIPSchemaDDOSProfile
203
+ """Advanced DDoS protection."""
204
+
205
+ interface_name: str
206
+ """Interface name"""
207
+
208
+ port_group: int
209
+ """Each group will be added to the separate trunk."""
210
+
211
+ security_groups: Iterable[NewInterfaceReservedFixedIPSchemaSecurityGroup]
212
+ """List of security group IDs"""
213
+
214
+ type: str
215
+ """Must be 'reserved_fixed_ip'. Union tag"""
216
+
217
+
218
+ class NewInterfaceReservedFixedIPSchemaDDOSProfileField(TypedDict, total=False):
219
+ base_field: Optional[int]
220
+ """ID of DDoS profile field"""
221
+
222
+ field_name: Optional[str]
223
+ """Name of DDoS profile field"""
224
+
225
+ field_value: object
226
+ """Complex value. Only one of 'value' or 'field_value' must be specified."""
227
+
228
+ value: Optional[str]
229
+ """Basic type value. Only one of 'value' or 'field_value' must be specified."""
230
+
231
+
232
+ class NewInterfaceReservedFixedIPSchemaDDOSProfile(TypedDict, total=False):
233
+ profile_template: Required[int]
234
+ """DDoS profile template ID."""
235
+
236
+ fields: Iterable[NewInterfaceReservedFixedIPSchemaDDOSProfileField]
237
+ """Protection parameters."""
238
+
239
+ profile_template_name: str
240
+ """DDoS profile template name."""
241
+
242
+
243
+ class NewInterfaceReservedFixedIPSchemaSecurityGroup(TypedDict, total=False):
244
+ id: Required[str]
245
+ """Resource ID"""
246
+
247
+
248
+ InterfaceAttachParams: TypeAlias = Union[
249
+ NewInterfaceExternalExtendSchemaWithDDOS,
250
+ NewInterfaceSpecificSubnetSchema,
251
+ NewInterfaceAnySubnetSchema,
252
+ NewInterfaceReservedFixedIPSchema,
253
+ ]
@@ -0,0 +1,19 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing_extensions import Required, TypedDict
6
+
7
+ __all__ = ["InterfaceDetachParams"]
8
+
9
+
10
+ class InterfaceDetachParams(TypedDict, total=False):
11
+ project_id: int
12
+
13
+ region_id: int
14
+
15
+ ip_address: Required[str]
16
+ """IP address"""
17
+
18
+ port_id: Required[str]
19
+ """ID of the port"""
@@ -0,0 +1,23 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing_extensions import Required, TypedDict
6
+
7
+ from ..instance_metrics_time_unit import InstanceMetricsTimeUnit
8
+
9
+ __all__ = ["MetricListParams"]
10
+
11
+
12
+ class MetricListParams(TypedDict, total=False):
13
+ project_id: int
14
+ """Project ID"""
15
+
16
+ region_id: int
17
+ """Region ID"""
18
+
19
+ time_interval: Required[int]
20
+ """Time interval."""
21
+
22
+ time_unit: Required[InstanceMetricsTimeUnit]
23
+ """Time interval unit."""
@@ -0,0 +1,52 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import List, Optional
4
+
5
+ from pydantic import Field as FieldInfo
6
+
7
+ from ...._models import BaseModel
8
+
9
+ __all__ = ["Metrics", "Disk"]
10
+
11
+
12
+ class Disk(BaseModel):
13
+ disk_bps_read: Optional[float] = FieldInfo(alias="disk_Bps_read", default=None)
14
+ """Disk read, Bytes per second"""
15
+
16
+ disk_bps_write: Optional[float] = FieldInfo(alias="disk_Bps_write", default=None)
17
+ """Disk write, Bytes per second"""
18
+
19
+ disk_iops_read: Optional[float] = None
20
+ """Disk read, iops"""
21
+
22
+ disk_iops_write: Optional[float] = None
23
+ """Disk write, iops"""
24
+
25
+ disk_name: Optional[str] = None
26
+ """Disk attached slot name"""
27
+
28
+
29
+ class Metrics(BaseModel):
30
+ time: str
31
+ """Timestamp"""
32
+
33
+ cpu_util: Optional[float] = None
34
+ """CPU utilization, % (max 100% for multi-core)"""
35
+
36
+ disks: Optional[List[Disk]] = None
37
+ """Disks metrics for each of the disks attached"""
38
+
39
+ memory_util: Optional[float] = None
40
+ """RAM utilization, %"""
41
+
42
+ network_bps_egress: Optional[float] = FieldInfo(alias="network_Bps_egress", default=None)
43
+ """Network out, bytes per second"""
44
+
45
+ network_bps_ingress: Optional[float] = FieldInfo(alias="network_Bps_ingress", default=None)
46
+ """Network in, bytes per second"""
47
+
48
+ network_pps_egress: Optional[float] = None
49
+ """Network out, packets per second"""
50
+
51
+ network_pps_ingress: Optional[float] = None
52
+ """Network in, packets per second"""
@@ -0,0 +1,16 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import List
4
+
5
+ from .metrics import Metrics
6
+ from ...._models import BaseModel
7
+
8
+ __all__ = ["MetricsList"]
9
+
10
+
11
+ class MetricsList(BaseModel):
12
+ count: int
13
+ """Number of objects"""
14
+
15
+ results: List[Metrics]
16
+ """Objects"""
@@ -0,0 +1,7 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing_extensions import Literal, TypeAlias
4
+
5
+ __all__ = ["InterfaceIPFamily"]
6
+
7
+ InterfaceIPFamily: TypeAlias = Literal["dual", "ipv4", "ipv6"]
@@ -0,0 +1,13 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from ..._models import BaseModel
4
+
5
+ __all__ = ["IPAssignment"]
6
+
7
+
8
+ class IPAssignment(BaseModel):
9
+ ip_address: str
10
+ """IP address"""
11
+
12
+ subnet_id: str
13
+ """ID of the subnet that allocated the IP"""
@@ -0,0 +1,12 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import List
4
+
5
+ from ..._models import BaseModel
6
+
7
+ __all__ = ["IPRanges"]
8
+
9
+
10
+ class IPRanges(BaseModel):
11
+ ranges: List[str]
12
+ """IP ranges list"""
@@ -0,0 +1,7 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing_extensions import Literal, TypeAlias
4
+
5
+ __all__ = ["IPVersion"]
6
+
7
+ IPVersion: TypeAlias = Literal[4, 6]
@@ -0,0 +1,12 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Optional
4
+
5
+ from ..._models import BaseModel
6
+
7
+ __all__ = ["LaasIndexRetentionPolicy"]
8
+
9
+
10
+ class LaasIndexRetentionPolicy(BaseModel):
11
+ period: Optional[int] = None
12
+ """Duration of days for which logs must be kept."""
@@ -0,0 +1,13 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Optional
6
+ from typing_extensions import Required, TypedDict
7
+
8
+ __all__ = ["LaasIndexRetentionPolicyParam"]
9
+
10
+
11
+ class LaasIndexRetentionPolicyParam(TypedDict, total=False):
12
+ period: Required[Optional[int]]
13
+ """Duration of days for which logs must be kept."""
@@ -0,0 +1,7 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing_extensions import Literal, TypeAlias
4
+
5
+ __all__ = ["LbAlgorithm"]
6
+
7
+ LbAlgorithm: TypeAlias = Literal["LEAST_CONNECTIONS", "ROUND_ROBIN", "SOURCE_IP"]
@@ -0,0 +1,7 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing_extensions import Literal, TypeAlias
4
+
5
+ __all__ = ["LbHealthMonitorType"]
6
+
7
+ LbHealthMonitorType: TypeAlias = Literal["HTTP", "HTTPS", "K8S", "PING", "TCP", "TLS-HELLO", "UDP-CONNECT"]
@@ -0,0 +1,7 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing_extensions import Literal, TypeAlias
4
+
5
+ __all__ = ["LbListenerProtocol"]
6
+
7
+ LbListenerProtocol: TypeAlias = Literal["HTTP", "HTTPS", "PROMETHEUS", "TCP", "TERMINATED_HTTPS", "UDP"]
@@ -0,0 +1,7 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing_extensions import Literal, TypeAlias
4
+
5
+ __all__ = ["LbPoolProtocol"]
6
+
7
+ LbPoolProtocol: TypeAlias = Literal["HTTP", "HTTPS", "PROXY", "PROXYV2", "TCP", "UDP"]
@@ -0,0 +1,7 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing_extensions import Literal, TypeAlias
4
+
5
+ __all__ = ["LbSessionPersistenceType"]
6
+
7
+ LbSessionPersistenceType: TypeAlias = Literal["APP_COOKIE", "HTTP_COOKIE", "SOURCE_IP"]
@@ -0,0 +1,27 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import List
4
+
5
+ from ..._models import BaseModel
6
+ from .pool_status import PoolStatus
7
+ from .provisioning_status import ProvisioningStatus
8
+ from .load_balancer_operating_status import LoadBalancerOperatingStatus
9
+
10
+ __all__ = ["ListenerStatus"]
11
+
12
+
13
+ class ListenerStatus(BaseModel):
14
+ id: str
15
+ """UUID of the entity"""
16
+
17
+ name: str
18
+ """Name of the load balancer listener"""
19
+
20
+ operating_status: LoadBalancerOperatingStatus
21
+ """Operating status of the entity"""
22
+
23
+ pools: List[PoolStatus]
24
+ """Pools of the Listeners"""
25
+
26
+ provisioning_status: ProvisioningStatus
27
+ """Provisioning status of the entity"""
@@ -0,0 +1,144 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import List, Optional
4
+ from datetime import datetime
5
+
6
+ from .tag import Tag
7
+ from .logging import Logging
8
+ from ..._models import BaseModel
9
+ from .floating_ip import FloatingIP
10
+ from .ddos_profile import DDOSProfile
11
+ from .interface_ip_family import InterfaceIPFamily
12
+ from .provisioning_status import ProvisioningStatus
13
+ from .load_balancer_statistics import LoadBalancerStatistics
14
+ from .load_balancer_instance_role import LoadBalancerInstanceRole
15
+ from .load_balancer_operating_status import LoadBalancerOperatingStatus
16
+ from .load_balancer_member_connectivity import LoadBalancerMemberConnectivity
17
+
18
+ __all__ = ["LoadBalancer", "AdditionalVip", "Flavor", "Listener", "VrrpIP"]
19
+
20
+
21
+ class AdditionalVip(BaseModel):
22
+ ip_address: str
23
+ """IP address"""
24
+
25
+ subnet_id: str
26
+ """Subnet UUID"""
27
+
28
+
29
+ class Flavor(BaseModel):
30
+ flavor_id: str
31
+ """Flavor ID is the same as name"""
32
+
33
+ flavor_name: str
34
+ """Flavor name"""
35
+
36
+ ram: int
37
+ """RAM size in MiB"""
38
+
39
+ vcpus: int
40
+ """Virtual CPU count. For bare metal flavors, it's a physical CPU count"""
41
+
42
+
43
+ class Listener(BaseModel):
44
+ id: str
45
+ """Listener ID"""
46
+
47
+
48
+ class VrrpIP(BaseModel):
49
+ ip_address: str
50
+ """IP address"""
51
+
52
+ role: LoadBalancerInstanceRole
53
+ """LoadBalancer instance role to which VRRP IP belong"""
54
+
55
+ subnet_id: str
56
+ """Subnet UUID"""
57
+
58
+
59
+ class LoadBalancer(BaseModel):
60
+ id: str
61
+ """Load balancer ID"""
62
+
63
+ created_at: datetime
64
+ """Datetime when the load balancer was created"""
65
+
66
+ name: str
67
+ """Load balancer name"""
68
+
69
+ operating_status: LoadBalancerOperatingStatus
70
+ """Load balancer operating status"""
71
+
72
+ project_id: int
73
+ """Project ID"""
74
+
75
+ provisioning_status: ProvisioningStatus
76
+ """Load balancer lifecycle status"""
77
+
78
+ region: str
79
+ """Region name"""
80
+
81
+ region_id: int
82
+ """Region ID"""
83
+
84
+ tags_v2: List[Tag]
85
+ """List of key-value tags associated with the resource.
86
+
87
+ A tag is a key-value pair that can be associated with a resource, enabling
88
+ efficient filtering and grouping for better organization and management. Some
89
+ tags are read-only and cannot be modified by the user. Tags are also integrated
90
+ with cost reports, allowing cost data to be filtered based on tag keys or
91
+ values.
92
+ """
93
+
94
+ additional_vips: Optional[List[AdditionalVip]] = None
95
+ """List of additional IP addresses"""
96
+
97
+ creator_task_id: Optional[str] = None
98
+ """Task that created this entity"""
99
+
100
+ ddos_profile: Optional[DDOSProfile] = None
101
+ """Loadbalancer advanced DDoS protection profile."""
102
+
103
+ flavor: Optional[Flavor] = None
104
+ """Load balancer flavor (if not default)"""
105
+
106
+ floating_ips: Optional[List[FloatingIP]] = None
107
+ """List of assigned floating IPs"""
108
+
109
+ listeners: Optional[List[Listener]] = None
110
+ """Load balancer listeners"""
111
+
112
+ logging: Optional[Logging] = None
113
+ """Logging configuration"""
114
+
115
+ preferred_connectivity: Optional[LoadBalancerMemberConnectivity] = None
116
+ """
117
+ Preferred option to establish connectivity between load balancer and its pools
118
+ members
119
+ """
120
+
121
+ stats: Optional[LoadBalancerStatistics] = None
122
+ """Statistics of load balancer."""
123
+
124
+ task_id: Optional[str] = None
125
+ """The UUID of the active task that currently holds a lock on the resource.
126
+
127
+ This lock prevents concurrent modifications to ensure consistency. If `null`,
128
+ the resource is not locked.
129
+ """
130
+
131
+ updated_at: Optional[datetime] = None
132
+ """Datetime when the load balancer was last updated"""
133
+
134
+ vip_address: Optional[str] = None
135
+ """Load balancer IP address"""
136
+
137
+ vip_ip_family: Optional[InterfaceIPFamily] = None
138
+ """Load balancer IP family"""
139
+
140
+ vip_port_id: Optional[str] = None
141
+ """The ID of the Virtual IP (VIP) port."""
142
+
143
+ vrrp_ips: Optional[List[VrrpIP]] = None
144
+ """List of VRRP IP addresses"""