gcore 0.1.0a1__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 (420) hide show
  1. gcore/__init__.py +84 -0
  2. gcore/_base_client.py +1943 -0
  3. gcore/_client.py +484 -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 +62 -0
  17. gcore/_utils/_reflection.py +42 -0
  18. gcore/_utils/_streams.py +12 -0
  19. gcore/_utils/_sync.py +86 -0
  20. gcore/_utils/_transform.py +447 -0
  21. gcore/_utils/_typing.py +151 -0
  22. gcore/_utils/_utils.py +422 -0
  23. gcore/_version.py +4 -0
  24. gcore/lib/.keep +4 -0
  25. gcore/lib/polling.py +19 -0
  26. gcore/pagination.py +70 -0
  27. gcore/py.typed +0 -0
  28. gcore/resources/__init__.py +19 -0
  29. gcore/resources/cloud/__init__.py +327 -0
  30. gcore/resources/cloud/baremetal/__init__.py +61 -0
  31. gcore/resources/cloud/baremetal/baremetal.py +166 -0
  32. gcore/resources/cloud/baremetal/flavors.py +371 -0
  33. gcore/resources/cloud/baremetal/images.py +238 -0
  34. gcore/resources/cloud/baremetal/servers.py +808 -0
  35. gcore/resources/cloud/billing_reservations.py +362 -0
  36. gcore/resources/cloud/cloud.py +774 -0
  37. gcore/resources/cloud/file_shares/__init__.py +33 -0
  38. gcore/resources/cloud/file_shares/access_rules.py +434 -0
  39. gcore/resources/cloud/file_shares/file_shares.py +994 -0
  40. gcore/resources/cloud/floating_ips.py +765 -0
  41. gcore/resources/cloud/gpu_baremetal_clusters/__init__.py +75 -0
  42. gcore/resources/cloud/gpu_baremetal_clusters/flavors.py +211 -0
  43. gcore/resources/cloud/gpu_baremetal_clusters/gpu_baremetal_clusters.py +1143 -0
  44. gcore/resources/cloud/gpu_baremetal_clusters/images.py +581 -0
  45. gcore/resources/cloud/gpu_baremetal_clusters/interfaces.py +175 -0
  46. gcore/resources/cloud/gpu_baremetal_clusters/servers.py +1098 -0
  47. gcore/resources/cloud/inference/__init__.py +89 -0
  48. gcore/resources/cloud/inference/deployments/__init__.py +33 -0
  49. gcore/resources/cloud/inference/deployments/deployments.py +1187 -0
  50. gcore/resources/cloud/inference/deployments/logs.py +235 -0
  51. gcore/resources/cloud/inference/flavors.py +280 -0
  52. gcore/resources/cloud/inference/inference.py +295 -0
  53. gcore/resources/cloud/inference/models.py +289 -0
  54. gcore/resources/cloud/inference/registry_credentials.py +649 -0
  55. gcore/resources/cloud/inference/secrets.py +629 -0
  56. gcore/resources/cloud/instances/__init__.py +75 -0
  57. gcore/resources/cloud/instances/flavors.py +449 -0
  58. gcore/resources/cloud/instances/images.py +987 -0
  59. gcore/resources/cloud/instances/instances.py +2349 -0
  60. gcore/resources/cloud/instances/interfaces.py +797 -0
  61. gcore/resources/cloud/instances/metrics.py +217 -0
  62. gcore/resources/cloud/ip_ranges.py +135 -0
  63. gcore/resources/cloud/load_balancers/__init__.py +103 -0
  64. gcore/resources/cloud/load_balancers/flavors.py +193 -0
  65. gcore/resources/cloud/load_balancers/l7_policies/__init__.py +33 -0
  66. gcore/resources/cloud/load_balancers/l7_policies/l7_policies.py +738 -0
  67. gcore/resources/cloud/load_balancers/l7_policies/rules.py +722 -0
  68. gcore/resources/cloud/load_balancers/listeners.py +788 -0
  69. gcore/resources/cloud/load_balancers/load_balancers.py +1237 -0
  70. gcore/resources/cloud/load_balancers/metrics.py +205 -0
  71. gcore/resources/cloud/load_balancers/pools/__init__.py +47 -0
  72. gcore/resources/cloud/load_balancers/pools/health_monitors.py +352 -0
  73. gcore/resources/cloud/load_balancers/pools/members.py +353 -0
  74. gcore/resources/cloud/load_balancers/pools/pools.py +872 -0
  75. gcore/resources/cloud/load_balancers/statuses.py +260 -0
  76. gcore/resources/cloud/networks/__init__.py +47 -0
  77. gcore/resources/cloud/networks/networks.py +715 -0
  78. gcore/resources/cloud/networks/routers.py +875 -0
  79. gcore/resources/cloud/networks/subnets.py +865 -0
  80. gcore/resources/cloud/placement_groups.py +465 -0
  81. gcore/resources/cloud/projects.py +608 -0
  82. gcore/resources/cloud/quotas/__init__.py +33 -0
  83. gcore/resources/cloud/quotas/quotas.py +335 -0
  84. gcore/resources/cloud/quotas/requests.py +482 -0
  85. gcore/resources/cloud/regions.py +328 -0
  86. gcore/resources/cloud/registries/__init__.py +75 -0
  87. gcore/resources/cloud/registries/artifacts.py +277 -0
  88. gcore/resources/cloud/registries/registries.py +688 -0
  89. gcore/resources/cloud/registries/repositories.py +265 -0
  90. gcore/resources/cloud/registries/tags.py +190 -0
  91. gcore/resources/cloud/registries/users.py +701 -0
  92. gcore/resources/cloud/reserved_fixed_ips/__init__.py +33 -0
  93. gcore/resources/cloud/reserved_fixed_ips/reserved_fixed_ips.py +965 -0
  94. gcore/resources/cloud/reserved_fixed_ips/vip.py +577 -0
  95. gcore/resources/cloud/secrets.py +797 -0
  96. gcore/resources/cloud/security_groups/__init__.py +33 -0
  97. gcore/resources/cloud/security_groups/rules.py +626 -0
  98. gcore/resources/cloud/security_groups/security_groups.py +863 -0
  99. gcore/resources/cloud/ssh_keys.py +635 -0
  100. gcore/resources/cloud/tasks.py +699 -0
  101. gcore/resources/cloud/users/__init__.py +33 -0
  102. gcore/resources/cloud/users/role_assignments.py +533 -0
  103. gcore/resources/cloud/users/users.py +102 -0
  104. gcore/resources/cloud/volumes.py +1710 -0
  105. gcore/types/__init__.py +3 -0
  106. gcore/types/cloud/__init__.py +199 -0
  107. gcore/types/cloud/allowed_address_pairs.py +15 -0
  108. gcore/types/cloud/aws_iam_data.py +13 -0
  109. gcore/types/cloud/aws_iam_data_param.py +15 -0
  110. gcore/types/cloud/baremetal/__init__.py +13 -0
  111. gcore/types/cloud/baremetal/baremetal_fixed_address.py +30 -0
  112. gcore/types/cloud/baremetal/baremetal_floating_address.py +15 -0
  113. gcore/types/cloud/baremetal/baremetal_server.py +178 -0
  114. gcore/types/cloud/baremetal/flavor_list_params.py +35 -0
  115. gcore/types/cloud/baremetal/flavor_list_suitable_params.py +22 -0
  116. gcore/types/cloud/baremetal/image_list_params.py +33 -0
  117. gcore/types/cloud/baremetal/server_create_params.py +370 -0
  118. gcore/types/cloud/baremetal/server_list_params.py +114 -0
  119. gcore/types/cloud/baremetal/server_rebuild_params.py +23 -0
  120. gcore/types/cloud/baremetal_flavor.py +58 -0
  121. gcore/types/cloud/baremetal_flavor_list.py +16 -0
  122. gcore/types/cloud/billing_reservation.py +153 -0
  123. gcore/types/cloud/billing_reservation_list_params.py +54 -0
  124. gcore/types/cloud/blackhole_port.py +66 -0
  125. gcore/types/cloud/capacity.py +13 -0
  126. gcore/types/cloud/console.py +18 -0
  127. gcore/types/cloud/container_probe.py +36 -0
  128. gcore/types/cloud/container_probe_config.py +16 -0
  129. gcore/types/cloud/container_probe_config_create_param.py +18 -0
  130. gcore/types/cloud/container_probe_create_param.py +38 -0
  131. gcore/types/cloud/container_probe_exec.py +12 -0
  132. gcore/types/cloud/container_probe_exec_create_param.py +13 -0
  133. gcore/types/cloud/container_probe_http_get.py +26 -0
  134. gcore/types/cloud/container_probe_http_get_create_param.py +25 -0
  135. gcore/types/cloud/container_probe_tcp_socket.py +10 -0
  136. gcore/types/cloud/container_probe_tcp_socket_create_param.py +12 -0
  137. gcore/types/cloud/container_scale.py +25 -0
  138. gcore/types/cloud/container_scale_trigger_rate.py +13 -0
  139. gcore/types/cloud/container_scale_trigger_sqs.py +33 -0
  140. gcore/types/cloud/container_scale_trigger_threshold.py +10 -0
  141. gcore/types/cloud/container_scale_triggers.py +36 -0
  142. gcore/types/cloud/ddos_profile.py +33 -0
  143. gcore/types/cloud/ddos_profile_field.py +31 -0
  144. gcore/types/cloud/ddos_profile_option_list.py +15 -0
  145. gcore/types/cloud/ddos_profile_status.py +13 -0
  146. gcore/types/cloud/ddos_profile_template.py +18 -0
  147. gcore/types/cloud/ddos_profile_template_field.py +23 -0
  148. gcore/types/cloud/deploy_status.py +13 -0
  149. gcore/types/cloud/file_share.py +111 -0
  150. gcore/types/cloud/file_share_create_params.py +104 -0
  151. gcore/types/cloud/file_share_list_params.py +24 -0
  152. gcore/types/cloud/file_share_resize_params.py +18 -0
  153. gcore/types/cloud/file_share_update_params.py +18 -0
  154. gcore/types/cloud/file_shares/__init__.py +7 -0
  155. gcore/types/cloud/file_shares/access_rule.py +21 -0
  156. gcore/types/cloud/file_shares/access_rule_create_params.py +21 -0
  157. gcore/types/cloud/file_shares/access_rule_list.py +16 -0
  158. gcore/types/cloud/fixed_address.py +38 -0
  159. gcore/types/cloud/fixed_address_short.py +24 -0
  160. gcore/types/cloud/flavor_hardware_description.py +27 -0
  161. gcore/types/cloud/floating_address.py +15 -0
  162. gcore/types/cloud/floating_ip.py +77 -0
  163. gcore/types/cloud/floating_ip_assign_params.py +20 -0
  164. gcore/types/cloud/floating_ip_create_params.py +40 -0
  165. gcore/types/cloud/floating_ip_detailed.py +222 -0
  166. gcore/types/cloud/floating_ip_list_params.py +35 -0
  167. gcore/types/cloud/floating_ip_status.py +7 -0
  168. gcore/types/cloud/gpu_baremetal_cluster.py +116 -0
  169. gcore/types/cloud/gpu_baremetal_cluster_create_params.py +135 -0
  170. gcore/types/cloud/gpu_baremetal_cluster_delete_params.py +28 -0
  171. gcore/types/cloud/gpu_baremetal_cluster_list_params.py +19 -0
  172. gcore/types/cloud/gpu_baremetal_cluster_rebuild_params.py +26 -0
  173. gcore/types/cloud/gpu_baremetal_cluster_resize_params.py +16 -0
  174. gcore/types/cloud/gpu_baremetal_cluster_server.py +200 -0
  175. gcore/types/cloud/gpu_baremetal_cluster_server_list.py +16 -0
  176. gcore/types/cloud/gpu_baremetal_clusters/__init__.py +9 -0
  177. gcore/types/cloud/gpu_baremetal_clusters/flavor_list_params.py +21 -0
  178. gcore/types/cloud/gpu_baremetal_clusters/image_upload_params.py +58 -0
  179. gcore/types/cloud/gpu_baremetal_clusters/server_attach_interface_params.py +253 -0
  180. gcore/types/cloud/gpu_baremetal_clusters/server_delete_params.py +21 -0
  181. gcore/types/cloud/gpu_baremetal_clusters/server_detach_interface_params.py +19 -0
  182. gcore/types/cloud/gpu_baremetal_flavor.py +133 -0
  183. gcore/types/cloud/gpu_baremetal_flavor_list.py +16 -0
  184. gcore/types/cloud/gpu_image.py +70 -0
  185. gcore/types/cloud/gpu_image_list.py +16 -0
  186. gcore/types/cloud/health_monitor.py +48 -0
  187. gcore/types/cloud/health_monitor_status.py +22 -0
  188. gcore/types/cloud/http_method.py +7 -0
  189. gcore/types/cloud/image.py +100 -0
  190. gcore/types/cloud/image_list.py +16 -0
  191. gcore/types/cloud/inference/__init__.py +25 -0
  192. gcore/types/cloud/inference/container.py +26 -0
  193. gcore/types/cloud/inference/deployment_create_params.py +222 -0
  194. gcore/types/cloud/inference/deployment_list_params.py +21 -0
  195. gcore/types/cloud/inference/deployment_update_params.py +215 -0
  196. gcore/types/cloud/inference/deployments/__init__.py +5 -0
  197. gcore/types/cloud/inference/deployments/log_list_params.py +28 -0
  198. gcore/types/cloud/inference/flavor_list_params.py +18 -0
  199. gcore/types/cloud/inference/inference.py +95 -0
  200. gcore/types/cloud/inference/inference_apikey_secret.py +15 -0
  201. gcore/types/cloud/inference/inference_flavor.py +34 -0
  202. gcore/types/cloud/inference/inference_log.py +21 -0
  203. gcore/types/cloud/inference/inference_registry_credential.py +19 -0
  204. gcore/types/cloud/inference/inference_registry_credential_full.py +22 -0
  205. gcore/types/cloud/inference/inference_secret.py +17 -0
  206. gcore/types/cloud/inference/mlcatalog_model_card.py +65 -0
  207. gcore/types/cloud/inference/mlcatalog_order_by_choices.py +7 -0
  208. gcore/types/cloud/inference/model_list_params.py +23 -0
  209. gcore/types/cloud/inference/registry_credential_create_params.py +24 -0
  210. gcore/types/cloud/inference/registry_credential_list_params.py +21 -0
  211. gcore/types/cloud/inference/registry_credential_replace_params.py +21 -0
  212. gcore/types/cloud/inference/secret_create_params.py +23 -0
  213. gcore/types/cloud/inference/secret_list_params.py +21 -0
  214. gcore/types/cloud/inference/secret_replace_params.py +20 -0
  215. gcore/types/cloud/inference_probes.py +19 -0
  216. gcore/types/cloud/ingress_opts_out.py +16 -0
  217. gcore/types/cloud/ingress_opts_param.py +18 -0
  218. gcore/types/cloud/instance.py +296 -0
  219. gcore/types/cloud/instance_action_params.py +32 -0
  220. gcore/types/cloud/instance_add_to_placement_group_params.py +16 -0
  221. gcore/types/cloud/instance_assign_security_group_params.py +28 -0
  222. gcore/types/cloud/instance_create_params.py +622 -0
  223. gcore/types/cloud/instance_delete_params.py +33 -0
  224. gcore/types/cloud/instance_get_console_params.py +16 -0
  225. gcore/types/cloud/instance_interface.py +40 -0
  226. gcore/types/cloud/instance_isolation.py +12 -0
  227. gcore/types/cloud/instance_list.py +16 -0
  228. gcore/types/cloud/instance_list_params.py +146 -0
  229. gcore/types/cloud/instance_metrics_time_unit.py +7 -0
  230. gcore/types/cloud/instance_resize_params.py +16 -0
  231. gcore/types/cloud/instance_unassign_security_group_params.py +28 -0
  232. gcore/types/cloud/instance_update_params.py +18 -0
  233. gcore/types/cloud/instances/__init__.py +19 -0
  234. gcore/types/cloud/instances/flavor_list_for_resize_params.py +16 -0
  235. gcore/types/cloud/instances/flavor_list_params.py +25 -0
  236. gcore/types/cloud/instances/flavor_list_suitable_params.py +56 -0
  237. gcore/types/cloud/instances/image_create_from_volume_params.py +53 -0
  238. gcore/types/cloud/instances/image_get_params.py +16 -0
  239. gcore/types/cloud/instances/image_list_params.py +33 -0
  240. gcore/types/cloud/instances/image_update_params.py +43 -0
  241. gcore/types/cloud/instances/image_upload_params.py +62 -0
  242. gcore/types/cloud/instances/instance_flavor.py +49 -0
  243. gcore/types/cloud/instances/instance_flavor_list.py +16 -0
  244. gcore/types/cloud/instances/interface_attach_params.py +253 -0
  245. gcore/types/cloud/instances/interface_detach_params.py +19 -0
  246. gcore/types/cloud/instances/metric_list_params.py +23 -0
  247. gcore/types/cloud/instances/metrics.py +52 -0
  248. gcore/types/cloud/instances/metrics_list.py +16 -0
  249. gcore/types/cloud/interface_ip_family.py +7 -0
  250. gcore/types/cloud/ip_assignment.py +13 -0
  251. gcore/types/cloud/ip_ranges.py +12 -0
  252. gcore/types/cloud/ip_version.py +7 -0
  253. gcore/types/cloud/laas_index_retention_policy.py +12 -0
  254. gcore/types/cloud/laas_index_retention_policy_param.py +13 -0
  255. gcore/types/cloud/lb_algorithm.py +7 -0
  256. gcore/types/cloud/lb_health_monitor_type.py +7 -0
  257. gcore/types/cloud/lb_listener_protocol.py +7 -0
  258. gcore/types/cloud/lb_pool_protocol.py +7 -0
  259. gcore/types/cloud/lb_session_persistence_type.py +7 -0
  260. gcore/types/cloud/listener_status.py +27 -0
  261. gcore/types/cloud/load_balancer.py +144 -0
  262. gcore/types/cloud/load_balancer_create_params.py +327 -0
  263. gcore/types/cloud/load_balancer_failover_params.py +16 -0
  264. gcore/types/cloud/load_balancer_flavor_detail.py +40 -0
  265. gcore/types/cloud/load_balancer_flavor_list.py +16 -0
  266. gcore/types/cloud/load_balancer_get_params.py +19 -0
  267. gcore/types/cloud/load_balancer_instance_role.py +7 -0
  268. gcore/types/cloud/load_balancer_l7_policy.py +86 -0
  269. gcore/types/cloud/load_balancer_l7_policy_list.py +16 -0
  270. gcore/types/cloud/load_balancer_l7_rule.py +72 -0
  271. gcore/types/cloud/load_balancer_l7_rule_list.py +16 -0
  272. gcore/types/cloud/load_balancer_list_params.py +53 -0
  273. gcore/types/cloud/load_balancer_listener_detail.py +97 -0
  274. gcore/types/cloud/load_balancer_listener_list.py +16 -0
  275. gcore/types/cloud/load_balancer_member_connectivity.py +7 -0
  276. gcore/types/cloud/load_balancer_metrics.py +32 -0
  277. gcore/types/cloud/load_balancer_metrics_list.py +16 -0
  278. gcore/types/cloud/load_balancer_operating_status.py +7 -0
  279. gcore/types/cloud/load_balancer_pool.py +87 -0
  280. gcore/types/cloud/load_balancer_pool_list.py +16 -0
  281. gcore/types/cloud/load_balancer_resize_params.py +16 -0
  282. gcore/types/cloud/load_balancer_statistics.py +22 -0
  283. gcore/types/cloud/load_balancer_status.py +38 -0
  284. gcore/types/cloud/load_balancer_status_list.py +16 -0
  285. gcore/types/cloud/load_balancer_update_params.py +43 -0
  286. gcore/types/cloud/load_balancers/__init__.py +15 -0
  287. gcore/types/cloud/load_balancers/flavor_list_params.py +16 -0
  288. gcore/types/cloud/load_balancers/l7_policies/__init__.py +6 -0
  289. gcore/types/cloud/load_balancers/l7_policies/rule_create_params.py +50 -0
  290. gcore/types/cloud/load_balancers/l7_policies/rule_replace_params.py +43 -0
  291. gcore/types/cloud/load_balancers/l7_policy_create_params.py +54 -0
  292. gcore/types/cloud/load_balancers/l7_policy_replace_params.py +51 -0
  293. gcore/types/cloud/load_balancers/listener_create_params.py +72 -0
  294. gcore/types/cloud/load_balancers/listener_get_params.py +16 -0
  295. gcore/types/cloud/load_balancers/listener_list_params.py +19 -0
  296. gcore/types/cloud/load_balancers/listener_update_params.py +55 -0
  297. gcore/types/cloud/load_balancers/metric_list_params.py +21 -0
  298. gcore/types/cloud/load_balancers/pool_create_params.py +141 -0
  299. gcore/types/cloud/load_balancers/pool_list_params.py +25 -0
  300. gcore/types/cloud/load_balancers/pool_update_params.py +139 -0
  301. gcore/types/cloud/load_balancers/pools/__init__.py +6 -0
  302. gcore/types/cloud/load_balancers/pools/health_monitor_create_params.py +49 -0
  303. gcore/types/cloud/load_balancers/pools/member_add_params.py +44 -0
  304. gcore/types/cloud/logging.py +22 -0
  305. gcore/types/cloud/member.py +47 -0
  306. gcore/types/cloud/member_status.py +24 -0
  307. gcore/types/cloud/network.py +79 -0
  308. gcore/types/cloud/network_create_params.py +34 -0
  309. gcore/types/cloud/network_details.py +79 -0
  310. gcore/types/cloud/network_interface.py +78 -0
  311. gcore/types/cloud/network_interface_list.py +16 -0
  312. gcore/types/cloud/network_list_params.py +36 -0
  313. gcore/types/cloud/network_update_params.py +16 -0
  314. gcore/types/cloud/networks/__init__.py +14 -0
  315. gcore/types/cloud/networks/router.py +83 -0
  316. gcore/types/cloud/networks/router_attach_subnet_params.py +24 -0
  317. gcore/types/cloud/networks/router_create_params.py +75 -0
  318. gcore/types/cloud/networks/router_detach_subnet_params.py +16 -0
  319. gcore/types/cloud/networks/router_list.py +16 -0
  320. gcore/types/cloud/networks/router_list_params.py +19 -0
  321. gcore/types/cloud/networks/router_update_params.py +45 -0
  322. gcore/types/cloud/networks/subnet_create_params.py +82 -0
  323. gcore/types/cloud/networks/subnet_list_params.py +58 -0
  324. gcore/types/cloud/networks/subnet_update_params.py +47 -0
  325. gcore/types/cloud/placement_group.py +41 -0
  326. gcore/types/cloud/placement_group_create_params.py +19 -0
  327. gcore/types/cloud/placement_group_list.py +16 -0
  328. gcore/types/cloud/pool_status.py +31 -0
  329. gcore/types/cloud/project.py +47 -0
  330. gcore/types/cloud/project_create_params.py +22 -0
  331. gcore/types/cloud/project_list_params.py +27 -0
  332. gcore/types/cloud/project_replace_params.py +18 -0
  333. gcore/types/cloud/provisioning_status.py +9 -0
  334. gcore/types/cloud/quota_get_all_response.py +340 -0
  335. gcore/types/cloud/quota_get_by_region_response.py +288 -0
  336. gcore/types/cloud/quota_get_global_response.py +51 -0
  337. gcore/types/cloud/quotas/__init__.py +8 -0
  338. gcore/types/cloud/quotas/request_create_params.py +193 -0
  339. gcore/types/cloud/quotas/request_get_response.py +205 -0
  340. gcore/types/cloud/quotas/request_list_params.py +22 -0
  341. gcore/types/cloud/quotas/request_list_response.py +205 -0
  342. gcore/types/cloud/region.py +101 -0
  343. gcore/types/cloud/region_capacity.py +16 -0
  344. gcore/types/cloud/region_capacity_list.py +16 -0
  345. gcore/types/cloud/region_get_params.py +18 -0
  346. gcore/types/cloud/region_list_params.py +31 -0
  347. gcore/types/cloud/registries/__init__.py +14 -0
  348. gcore/types/cloud/registries/registry_artifact.py +35 -0
  349. gcore/types/cloud/registries/registry_artifact_list.py +16 -0
  350. gcore/types/cloud/registries/registry_repository.py +30 -0
  351. gcore/types/cloud/registries/registry_repository_list.py +16 -0
  352. gcore/types/cloud/registries/registry_user.py +28 -0
  353. gcore/types/cloud/registries/registry_user_created.py +31 -0
  354. gcore/types/cloud/registries/registry_user_list.py +16 -0
  355. gcore/types/cloud/registries/user_create_multiple_params.py +36 -0
  356. gcore/types/cloud/registries/user_create_params.py +30 -0
  357. gcore/types/cloud/registries/user_update_params.py +21 -0
  358. gcore/types/cloud/registry.py +33 -0
  359. gcore/types/cloud/registry_create_params.py +24 -0
  360. gcore/types/cloud/registry_list.py +16 -0
  361. gcore/types/cloud/registry_resize_params.py +16 -0
  362. gcore/types/cloud/registry_tag.py +27 -0
  363. gcore/types/cloud/reserved_fixed_ip.py +98 -0
  364. gcore/types/cloud/reserved_fixed_ip_create_params.py +107 -0
  365. gcore/types/cloud/reserved_fixed_ip_list_params.py +47 -0
  366. gcore/types/cloud/reserved_fixed_ips/__init__.py +12 -0
  367. gcore/types/cloud/reserved_fixed_ips/candidate_port.py +26 -0
  368. gcore/types/cloud/reserved_fixed_ips/candidate_port_list.py +16 -0
  369. gcore/types/cloud/reserved_fixed_ips/connected_port.py +26 -0
  370. gcore/types/cloud/reserved_fixed_ips/connected_port_list.py +16 -0
  371. gcore/types/cloud/reserved_fixed_ips/ip_with_subnet.py +17 -0
  372. gcore/types/cloud/reserved_fixed_ips/vip_replace_connected_ports_params.py +17 -0
  373. gcore/types/cloud/reserved_fixed_ips/vip_toggle_params.py +16 -0
  374. gcore/types/cloud/reserved_fixed_ips/vip_update_connected_ports_params.py +17 -0
  375. gcore/types/cloud/route.py +16 -0
  376. gcore/types/cloud/secret.py +64 -0
  377. gcore/types/cloud/secret_create_params.py +66 -0
  378. gcore/types/cloud/secret_list_response.py +16 -0
  379. gcore/types/cloud/secret_upload_tls_certificate_params.py +39 -0
  380. gcore/types/cloud/security_group.py +45 -0
  381. gcore/types/cloud/security_group_copy_params.py +16 -0
  382. gcore/types/cloud/security_group_create_params.py +94 -0
  383. gcore/types/cloud/security_group_list_params.py +30 -0
  384. gcore/types/cloud/security_group_rule.py +83 -0
  385. gcore/types/cloud/security_group_update_params.py +83 -0
  386. gcore/types/cloud/security_groups/__init__.py +6 -0
  387. gcore/types/cloud/security_groups/rule_create_params.py +65 -0
  388. gcore/types/cloud/security_groups/rule_replace_params.py +72 -0
  389. gcore/types/cloud/session_persistence.py +22 -0
  390. gcore/types/cloud/ssh_key.py +39 -0
  391. gcore/types/cloud/ssh_key_create_params.py +31 -0
  392. gcore/types/cloud/ssh_key_created.py +53 -0
  393. gcore/types/cloud/ssh_key_list_params.py +21 -0
  394. gcore/types/cloud/ssh_key_update_params.py +15 -0
  395. gcore/types/cloud/subnet.py +87 -0
  396. gcore/types/cloud/tag.py +16 -0
  397. gcore/types/cloud/tag_update_map_param.py +10 -0
  398. gcore/types/cloud/task.py +191 -0
  399. gcore/types/cloud/task_acknowledge_all_params.py +16 -0
  400. gcore/types/cloud/task_id_list.py +12 -0
  401. gcore/types/cloud/task_list_params.py +104 -0
  402. gcore/types/cloud/users/__init__.py +9 -0
  403. gcore/types/cloud/users/role_assignment.py +33 -0
  404. gcore/types/cloud/users/role_assignment_create_params.py +22 -0
  405. gcore/types/cloud/users/role_assignment_list_params.py +25 -0
  406. gcore/types/cloud/users/role_assignment_update_delete.py +10 -0
  407. gcore/types/cloud/users/role_assignment_update_params.py +22 -0
  408. gcore/types/cloud/volume.py +141 -0
  409. gcore/types/cloud/volume_attach_to_instance_params.py +21 -0
  410. gcore/types/cloud/volume_change_type_params.py +18 -0
  411. gcore/types/cloud/volume_create_params.py +176 -0
  412. gcore/types/cloud/volume_delete_params.py +18 -0
  413. gcore/types/cloud/volume_detach_from_instance_params.py +18 -0
  414. gcore/types/cloud/volume_list_params.py +56 -0
  415. gcore/types/cloud/volume_resize_params.py +18 -0
  416. gcore/types/cloud/volume_update_params.py +18 -0
  417. gcore-0.1.0a1.dist-info/METADATA +485 -0
  418. gcore-0.1.0a1.dist-info/RECORD +420 -0
  419. gcore-0.1.0a1.dist-info/WHEEL +4 -0
  420. gcore-0.1.0a1.dist-info/licenses/LICENSE +201 -0
@@ -0,0 +1,217 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ import httpx
6
+
7
+ from ...._types import NOT_GIVEN, Body, Query, Headers, NotGiven
8
+ from ...._utils import maybe_transform, async_maybe_transform
9
+ from ...._compat import cached_property
10
+ from ...._resource import SyncAPIResource, AsyncAPIResource
11
+ from ...._response import (
12
+ to_raw_response_wrapper,
13
+ to_streamed_response_wrapper,
14
+ async_to_raw_response_wrapper,
15
+ async_to_streamed_response_wrapper,
16
+ )
17
+ from ....types.cloud import InstanceMetricsTimeUnit
18
+ from ...._base_client import make_request_options
19
+ from ....types.cloud.instances import metric_list_params
20
+ from ....types.cloud.instances.metrics_list import MetricsList
21
+ from ....types.cloud.instance_metrics_time_unit import InstanceMetricsTimeUnit
22
+
23
+ __all__ = ["MetricsResource", "AsyncMetricsResource"]
24
+
25
+
26
+ class MetricsResource(SyncAPIResource):
27
+ @cached_property
28
+ def with_raw_response(self) -> MetricsResourceWithRawResponse:
29
+ """
30
+ This property can be used as a prefix for any HTTP method call to return
31
+ the raw response object instead of the parsed content.
32
+
33
+ For more information, see https://www.github.com/G-Core/gcore-python#accessing-raw-response-data-eg-headers
34
+ """
35
+ return MetricsResourceWithRawResponse(self)
36
+
37
+ @cached_property
38
+ def with_streaming_response(self) -> MetricsResourceWithStreamingResponse:
39
+ """
40
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
41
+
42
+ For more information, see https://www.github.com/G-Core/gcore-python#with_streaming_response
43
+ """
44
+ return MetricsResourceWithStreamingResponse(self)
45
+
46
+ def list(
47
+ self,
48
+ instance_id: str,
49
+ *,
50
+ project_id: int | None = None,
51
+ region_id: int | None = None,
52
+ time_interval: int,
53
+ time_unit: InstanceMetricsTimeUnit,
54
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
55
+ # The extra values given here take precedence over values defined on the client or passed to this method.
56
+ extra_headers: Headers | None = None,
57
+ extra_query: Query | None = None,
58
+ extra_body: Body | None = None,
59
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
60
+ ) -> MetricsList:
61
+ """
62
+ Get instance metrics, including cpu, memory, network and disk metrics
63
+
64
+ Args:
65
+ project_id: Project ID
66
+
67
+ region_id: Region ID
68
+
69
+ instance_id: Instance ID
70
+
71
+ time_interval: Time interval.
72
+
73
+ time_unit: Time interval unit.
74
+
75
+ extra_headers: Send extra headers
76
+
77
+ extra_query: Add additional query parameters to the request
78
+
79
+ extra_body: Add additional JSON properties to the request
80
+
81
+ timeout: Override the client-level default timeout for this request, in seconds
82
+ """
83
+ if project_id is None:
84
+ project_id = self._client._get_cloud_project_id_path_param()
85
+ if region_id is None:
86
+ region_id = self._client._get_cloud_region_id_path_param()
87
+ if not instance_id:
88
+ raise ValueError(f"Expected a non-empty value for `instance_id` but received {instance_id!r}")
89
+ return self._post(
90
+ f"/cloud/v1/instances/{project_id}/{region_id}/{instance_id}/metrics",
91
+ body=maybe_transform(
92
+ {
93
+ "time_interval": time_interval,
94
+ "time_unit": time_unit,
95
+ },
96
+ metric_list_params.MetricListParams,
97
+ ),
98
+ options=make_request_options(
99
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
100
+ ),
101
+ cast_to=MetricsList,
102
+ )
103
+
104
+
105
+ class AsyncMetricsResource(AsyncAPIResource):
106
+ @cached_property
107
+ def with_raw_response(self) -> AsyncMetricsResourceWithRawResponse:
108
+ """
109
+ This property can be used as a prefix for any HTTP method call to return
110
+ the raw response object instead of the parsed content.
111
+
112
+ For more information, see https://www.github.com/G-Core/gcore-python#accessing-raw-response-data-eg-headers
113
+ """
114
+ return AsyncMetricsResourceWithRawResponse(self)
115
+
116
+ @cached_property
117
+ def with_streaming_response(self) -> AsyncMetricsResourceWithStreamingResponse:
118
+ """
119
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
120
+
121
+ For more information, see https://www.github.com/G-Core/gcore-python#with_streaming_response
122
+ """
123
+ return AsyncMetricsResourceWithStreamingResponse(self)
124
+
125
+ async def list(
126
+ self,
127
+ instance_id: str,
128
+ *,
129
+ project_id: int | None = None,
130
+ region_id: int | None = None,
131
+ time_interval: int,
132
+ time_unit: InstanceMetricsTimeUnit,
133
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
134
+ # The extra values given here take precedence over values defined on the client or passed to this method.
135
+ extra_headers: Headers | None = None,
136
+ extra_query: Query | None = None,
137
+ extra_body: Body | None = None,
138
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
139
+ ) -> MetricsList:
140
+ """
141
+ Get instance metrics, including cpu, memory, network and disk metrics
142
+
143
+ Args:
144
+ project_id: Project ID
145
+
146
+ region_id: Region ID
147
+
148
+ instance_id: Instance ID
149
+
150
+ time_interval: Time interval.
151
+
152
+ time_unit: Time interval unit.
153
+
154
+ extra_headers: Send extra headers
155
+
156
+ extra_query: Add additional query parameters to the request
157
+
158
+ extra_body: Add additional JSON properties to the request
159
+
160
+ timeout: Override the client-level default timeout for this request, in seconds
161
+ """
162
+ if project_id is None:
163
+ project_id = self._client._get_cloud_project_id_path_param()
164
+ if region_id is None:
165
+ region_id = self._client._get_cloud_region_id_path_param()
166
+ if not instance_id:
167
+ raise ValueError(f"Expected a non-empty value for `instance_id` but received {instance_id!r}")
168
+ return await self._post(
169
+ f"/cloud/v1/instances/{project_id}/{region_id}/{instance_id}/metrics",
170
+ body=await async_maybe_transform(
171
+ {
172
+ "time_interval": time_interval,
173
+ "time_unit": time_unit,
174
+ },
175
+ metric_list_params.MetricListParams,
176
+ ),
177
+ options=make_request_options(
178
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
179
+ ),
180
+ cast_to=MetricsList,
181
+ )
182
+
183
+
184
+ class MetricsResourceWithRawResponse:
185
+ def __init__(self, metrics: MetricsResource) -> None:
186
+ self._metrics = metrics
187
+
188
+ self.list = to_raw_response_wrapper(
189
+ metrics.list,
190
+ )
191
+
192
+
193
+ class AsyncMetricsResourceWithRawResponse:
194
+ def __init__(self, metrics: AsyncMetricsResource) -> None:
195
+ self._metrics = metrics
196
+
197
+ self.list = async_to_raw_response_wrapper(
198
+ metrics.list,
199
+ )
200
+
201
+
202
+ class MetricsResourceWithStreamingResponse:
203
+ def __init__(self, metrics: MetricsResource) -> None:
204
+ self._metrics = metrics
205
+
206
+ self.list = to_streamed_response_wrapper(
207
+ metrics.list,
208
+ )
209
+
210
+
211
+ class AsyncMetricsResourceWithStreamingResponse:
212
+ def __init__(self, metrics: AsyncMetricsResource) -> None:
213
+ self._metrics = metrics
214
+
215
+ self.list = async_to_streamed_response_wrapper(
216
+ metrics.list,
217
+ )
@@ -0,0 +1,135 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ import httpx
6
+
7
+ from ..._types import NOT_GIVEN, Body, Query, Headers, NotGiven
8
+ from ..._compat import cached_property
9
+ from ..._resource import SyncAPIResource, AsyncAPIResource
10
+ from ..._response import (
11
+ to_raw_response_wrapper,
12
+ to_streamed_response_wrapper,
13
+ async_to_raw_response_wrapper,
14
+ async_to_streamed_response_wrapper,
15
+ )
16
+ from ..._base_client import make_request_options
17
+ from ...types.cloud.ip_ranges import IPRanges
18
+
19
+ __all__ = ["IPRangesResource", "AsyncIPRangesResource"]
20
+
21
+
22
+ class IPRangesResource(SyncAPIResource):
23
+ @cached_property
24
+ def with_raw_response(self) -> IPRangesResourceWithRawResponse:
25
+ """
26
+ This property can be used as a prefix for any HTTP method call to return
27
+ the raw response object instead of the parsed content.
28
+
29
+ For more information, see https://www.github.com/G-Core/gcore-python#accessing-raw-response-data-eg-headers
30
+ """
31
+ return IPRangesResourceWithRawResponse(self)
32
+
33
+ @cached_property
34
+ def with_streaming_response(self) -> IPRangesResourceWithStreamingResponse:
35
+ """
36
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
37
+
38
+ For more information, see https://www.github.com/G-Core/gcore-python#with_streaming_response
39
+ """
40
+ return IPRangesResourceWithStreamingResponse(self)
41
+
42
+ def list(
43
+ self,
44
+ *,
45
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
46
+ # The extra values given here take precedence over values defined on the client or passed to this method.
47
+ extra_headers: Headers | None = None,
48
+ extra_query: Query | None = None,
49
+ extra_body: Body | None = None,
50
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
51
+ ) -> IPRanges:
52
+ """List of all Edge Cloud Egress Public IPs."""
53
+ return self._get(
54
+ "/cloud/public/v1/ipranges/egress",
55
+ options=make_request_options(
56
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
57
+ ),
58
+ cast_to=IPRanges,
59
+ )
60
+
61
+
62
+ class AsyncIPRangesResource(AsyncAPIResource):
63
+ @cached_property
64
+ def with_raw_response(self) -> AsyncIPRangesResourceWithRawResponse:
65
+ """
66
+ This property can be used as a prefix for any HTTP method call to return
67
+ the raw response object instead of the parsed content.
68
+
69
+ For more information, see https://www.github.com/G-Core/gcore-python#accessing-raw-response-data-eg-headers
70
+ """
71
+ return AsyncIPRangesResourceWithRawResponse(self)
72
+
73
+ @cached_property
74
+ def with_streaming_response(self) -> AsyncIPRangesResourceWithStreamingResponse:
75
+ """
76
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
77
+
78
+ For more information, see https://www.github.com/G-Core/gcore-python#with_streaming_response
79
+ """
80
+ return AsyncIPRangesResourceWithStreamingResponse(self)
81
+
82
+ async def list(
83
+ self,
84
+ *,
85
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
86
+ # The extra values given here take precedence over values defined on the client or passed to this method.
87
+ extra_headers: Headers | None = None,
88
+ extra_query: Query | None = None,
89
+ extra_body: Body | None = None,
90
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
91
+ ) -> IPRanges:
92
+ """List of all Edge Cloud Egress Public IPs."""
93
+ return await self._get(
94
+ "/cloud/public/v1/ipranges/egress",
95
+ options=make_request_options(
96
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
97
+ ),
98
+ cast_to=IPRanges,
99
+ )
100
+
101
+
102
+ class IPRangesResourceWithRawResponse:
103
+ def __init__(self, ip_ranges: IPRangesResource) -> None:
104
+ self._ip_ranges = ip_ranges
105
+
106
+ self.list = to_raw_response_wrapper(
107
+ ip_ranges.list,
108
+ )
109
+
110
+
111
+ class AsyncIPRangesResourceWithRawResponse:
112
+ def __init__(self, ip_ranges: AsyncIPRangesResource) -> None:
113
+ self._ip_ranges = ip_ranges
114
+
115
+ self.list = async_to_raw_response_wrapper(
116
+ ip_ranges.list,
117
+ )
118
+
119
+
120
+ class IPRangesResourceWithStreamingResponse:
121
+ def __init__(self, ip_ranges: IPRangesResource) -> None:
122
+ self._ip_ranges = ip_ranges
123
+
124
+ self.list = to_streamed_response_wrapper(
125
+ ip_ranges.list,
126
+ )
127
+
128
+
129
+ class AsyncIPRangesResourceWithStreamingResponse:
130
+ def __init__(self, ip_ranges: AsyncIPRangesResource) -> None:
131
+ self._ip_ranges = ip_ranges
132
+
133
+ self.list = async_to_streamed_response_wrapper(
134
+ ip_ranges.list,
135
+ )
@@ -0,0 +1,103 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from .pools import (
4
+ PoolsResource,
5
+ AsyncPoolsResource,
6
+ PoolsResourceWithRawResponse,
7
+ AsyncPoolsResourceWithRawResponse,
8
+ PoolsResourceWithStreamingResponse,
9
+ AsyncPoolsResourceWithStreamingResponse,
10
+ )
11
+ from .flavors import (
12
+ FlavorsResource,
13
+ AsyncFlavorsResource,
14
+ FlavorsResourceWithRawResponse,
15
+ AsyncFlavorsResourceWithRawResponse,
16
+ FlavorsResourceWithStreamingResponse,
17
+ AsyncFlavorsResourceWithStreamingResponse,
18
+ )
19
+ from .metrics import (
20
+ MetricsResource,
21
+ AsyncMetricsResource,
22
+ MetricsResourceWithRawResponse,
23
+ AsyncMetricsResourceWithRawResponse,
24
+ MetricsResourceWithStreamingResponse,
25
+ AsyncMetricsResourceWithStreamingResponse,
26
+ )
27
+ from .statuses import (
28
+ StatusesResource,
29
+ AsyncStatusesResource,
30
+ StatusesResourceWithRawResponse,
31
+ AsyncStatusesResourceWithRawResponse,
32
+ StatusesResourceWithStreamingResponse,
33
+ AsyncStatusesResourceWithStreamingResponse,
34
+ )
35
+ from .listeners import (
36
+ ListenersResource,
37
+ AsyncListenersResource,
38
+ ListenersResourceWithRawResponse,
39
+ AsyncListenersResourceWithRawResponse,
40
+ ListenersResourceWithStreamingResponse,
41
+ AsyncListenersResourceWithStreamingResponse,
42
+ )
43
+ from .l7_policies import (
44
+ L7PoliciesResource,
45
+ AsyncL7PoliciesResource,
46
+ L7PoliciesResourceWithRawResponse,
47
+ AsyncL7PoliciesResourceWithRawResponse,
48
+ L7PoliciesResourceWithStreamingResponse,
49
+ AsyncL7PoliciesResourceWithStreamingResponse,
50
+ )
51
+ from .load_balancers import (
52
+ LoadBalancersResource,
53
+ AsyncLoadBalancersResource,
54
+ LoadBalancersResourceWithRawResponse,
55
+ AsyncLoadBalancersResourceWithRawResponse,
56
+ LoadBalancersResourceWithStreamingResponse,
57
+ AsyncLoadBalancersResourceWithStreamingResponse,
58
+ )
59
+
60
+ __all__ = [
61
+ "L7PoliciesResource",
62
+ "AsyncL7PoliciesResource",
63
+ "L7PoliciesResourceWithRawResponse",
64
+ "AsyncL7PoliciesResourceWithRawResponse",
65
+ "L7PoliciesResourceWithStreamingResponse",
66
+ "AsyncL7PoliciesResourceWithStreamingResponse",
67
+ "FlavorsResource",
68
+ "AsyncFlavorsResource",
69
+ "FlavorsResourceWithRawResponse",
70
+ "AsyncFlavorsResourceWithRawResponse",
71
+ "FlavorsResourceWithStreamingResponse",
72
+ "AsyncFlavorsResourceWithStreamingResponse",
73
+ "ListenersResource",
74
+ "AsyncListenersResource",
75
+ "ListenersResourceWithRawResponse",
76
+ "AsyncListenersResourceWithRawResponse",
77
+ "ListenersResourceWithStreamingResponse",
78
+ "AsyncListenersResourceWithStreamingResponse",
79
+ "PoolsResource",
80
+ "AsyncPoolsResource",
81
+ "PoolsResourceWithRawResponse",
82
+ "AsyncPoolsResourceWithRawResponse",
83
+ "PoolsResourceWithStreamingResponse",
84
+ "AsyncPoolsResourceWithStreamingResponse",
85
+ "MetricsResource",
86
+ "AsyncMetricsResource",
87
+ "MetricsResourceWithRawResponse",
88
+ "AsyncMetricsResourceWithRawResponse",
89
+ "MetricsResourceWithStreamingResponse",
90
+ "AsyncMetricsResourceWithStreamingResponse",
91
+ "StatusesResource",
92
+ "AsyncStatusesResource",
93
+ "StatusesResourceWithRawResponse",
94
+ "AsyncStatusesResourceWithRawResponse",
95
+ "StatusesResourceWithStreamingResponse",
96
+ "AsyncStatusesResourceWithStreamingResponse",
97
+ "LoadBalancersResource",
98
+ "AsyncLoadBalancersResource",
99
+ "LoadBalancersResourceWithRawResponse",
100
+ "AsyncLoadBalancersResourceWithRawResponse",
101
+ "LoadBalancersResourceWithStreamingResponse",
102
+ "AsyncLoadBalancersResourceWithStreamingResponse",
103
+ ]
@@ -0,0 +1,193 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ import httpx
6
+
7
+ from ...._types import NOT_GIVEN, Body, Query, Headers, NotGiven
8
+ from ...._utils import maybe_transform, async_maybe_transform
9
+ from ...._compat import cached_property
10
+ from ...._resource import SyncAPIResource, AsyncAPIResource
11
+ from ...._response import (
12
+ to_raw_response_wrapper,
13
+ to_streamed_response_wrapper,
14
+ async_to_raw_response_wrapper,
15
+ async_to_streamed_response_wrapper,
16
+ )
17
+ from ...._base_client import make_request_options
18
+ from ....types.cloud.load_balancers import flavor_list_params
19
+ from ....types.cloud.load_balancer_flavor_list import LoadBalancerFlavorList
20
+
21
+ __all__ = ["FlavorsResource", "AsyncFlavorsResource"]
22
+
23
+
24
+ class FlavorsResource(SyncAPIResource):
25
+ @cached_property
26
+ def with_raw_response(self) -> FlavorsResourceWithRawResponse:
27
+ """
28
+ This property can be used as a prefix for any HTTP method call to return
29
+ the raw response object instead of the parsed content.
30
+
31
+ For more information, see https://www.github.com/G-Core/gcore-python#accessing-raw-response-data-eg-headers
32
+ """
33
+ return FlavorsResourceWithRawResponse(self)
34
+
35
+ @cached_property
36
+ def with_streaming_response(self) -> FlavorsResourceWithStreamingResponse:
37
+ """
38
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
39
+
40
+ For more information, see https://www.github.com/G-Core/gcore-python#with_streaming_response
41
+ """
42
+ return FlavorsResourceWithStreamingResponse(self)
43
+
44
+ def list(
45
+ self,
46
+ *,
47
+ project_id: int | None = None,
48
+ region_id: int | None = None,
49
+ include_prices: bool | NotGiven = NOT_GIVEN,
50
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
51
+ # The extra values given here take precedence over values defined on the client or passed to this method.
52
+ extra_headers: Headers | None = None,
53
+ extra_query: Query | None = None,
54
+ extra_body: Body | None = None,
55
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
56
+ ) -> LoadBalancerFlavorList:
57
+ """Retrieve a list of load balancer flavors.
58
+
59
+ When the include_prices query
60
+ parameter is specified, the list shows prices. A client in trial mode gets all
61
+ price values as 0. If you get Pricing Error contact the support
62
+
63
+ Args:
64
+ include_prices: Set to true if the response should include flavor prices
65
+
66
+ extra_headers: Send extra headers
67
+
68
+ extra_query: Add additional query parameters to the request
69
+
70
+ extra_body: Add additional JSON properties to the request
71
+
72
+ timeout: Override the client-level default timeout for this request, in seconds
73
+ """
74
+ if project_id is None:
75
+ project_id = self._client._get_cloud_project_id_path_param()
76
+ if region_id is None:
77
+ region_id = self._client._get_cloud_region_id_path_param()
78
+ return self._get(
79
+ f"/cloud/v1/lbflavors/{project_id}/{region_id}",
80
+ options=make_request_options(
81
+ extra_headers=extra_headers,
82
+ extra_query=extra_query,
83
+ extra_body=extra_body,
84
+ timeout=timeout,
85
+ query=maybe_transform({"include_prices": include_prices}, flavor_list_params.FlavorListParams),
86
+ ),
87
+ cast_to=LoadBalancerFlavorList,
88
+ )
89
+
90
+
91
+ class AsyncFlavorsResource(AsyncAPIResource):
92
+ @cached_property
93
+ def with_raw_response(self) -> AsyncFlavorsResourceWithRawResponse:
94
+ """
95
+ This property can be used as a prefix for any HTTP method call to return
96
+ the raw response object instead of the parsed content.
97
+
98
+ For more information, see https://www.github.com/G-Core/gcore-python#accessing-raw-response-data-eg-headers
99
+ """
100
+ return AsyncFlavorsResourceWithRawResponse(self)
101
+
102
+ @cached_property
103
+ def with_streaming_response(self) -> AsyncFlavorsResourceWithStreamingResponse:
104
+ """
105
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
106
+
107
+ For more information, see https://www.github.com/G-Core/gcore-python#with_streaming_response
108
+ """
109
+ return AsyncFlavorsResourceWithStreamingResponse(self)
110
+
111
+ async def list(
112
+ self,
113
+ *,
114
+ project_id: int | None = None,
115
+ region_id: int | None = None,
116
+ include_prices: bool | NotGiven = NOT_GIVEN,
117
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
118
+ # The extra values given here take precedence over values defined on the client or passed to this method.
119
+ extra_headers: Headers | None = None,
120
+ extra_query: Query | None = None,
121
+ extra_body: Body | None = None,
122
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
123
+ ) -> LoadBalancerFlavorList:
124
+ """Retrieve a list of load balancer flavors.
125
+
126
+ When the include_prices query
127
+ parameter is specified, the list shows prices. A client in trial mode gets all
128
+ price values as 0. If you get Pricing Error contact the support
129
+
130
+ Args:
131
+ include_prices: Set to true if the response should include flavor prices
132
+
133
+ extra_headers: Send extra headers
134
+
135
+ extra_query: Add additional query parameters to the request
136
+
137
+ extra_body: Add additional JSON properties to the request
138
+
139
+ timeout: Override the client-level default timeout for this request, in seconds
140
+ """
141
+ if project_id is None:
142
+ project_id = self._client._get_cloud_project_id_path_param()
143
+ if region_id is None:
144
+ region_id = self._client._get_cloud_region_id_path_param()
145
+ return await self._get(
146
+ f"/cloud/v1/lbflavors/{project_id}/{region_id}",
147
+ options=make_request_options(
148
+ extra_headers=extra_headers,
149
+ extra_query=extra_query,
150
+ extra_body=extra_body,
151
+ timeout=timeout,
152
+ query=await async_maybe_transform(
153
+ {"include_prices": include_prices}, flavor_list_params.FlavorListParams
154
+ ),
155
+ ),
156
+ cast_to=LoadBalancerFlavorList,
157
+ )
158
+
159
+
160
+ class FlavorsResourceWithRawResponse:
161
+ def __init__(self, flavors: FlavorsResource) -> None:
162
+ self._flavors = flavors
163
+
164
+ self.list = to_raw_response_wrapper(
165
+ flavors.list,
166
+ )
167
+
168
+
169
+ class AsyncFlavorsResourceWithRawResponse:
170
+ def __init__(self, flavors: AsyncFlavorsResource) -> None:
171
+ self._flavors = flavors
172
+
173
+ self.list = async_to_raw_response_wrapper(
174
+ flavors.list,
175
+ )
176
+
177
+
178
+ class FlavorsResourceWithStreamingResponse:
179
+ def __init__(self, flavors: FlavorsResource) -> None:
180
+ self._flavors = flavors
181
+
182
+ self.list = to_streamed_response_wrapper(
183
+ flavors.list,
184
+ )
185
+
186
+
187
+ class AsyncFlavorsResourceWithStreamingResponse:
188
+ def __init__(self, flavors: AsyncFlavorsResource) -> None:
189
+ self._flavors = flavors
190
+
191
+ self.list = async_to_streamed_response_wrapper(
192
+ flavors.list,
193
+ )
@@ -0,0 +1,33 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from .rules import (
4
+ RulesResource,
5
+ AsyncRulesResource,
6
+ RulesResourceWithRawResponse,
7
+ AsyncRulesResourceWithRawResponse,
8
+ RulesResourceWithStreamingResponse,
9
+ AsyncRulesResourceWithStreamingResponse,
10
+ )
11
+ from .l7_policies import (
12
+ L7PoliciesResource,
13
+ AsyncL7PoliciesResource,
14
+ L7PoliciesResourceWithRawResponse,
15
+ AsyncL7PoliciesResourceWithRawResponse,
16
+ L7PoliciesResourceWithStreamingResponse,
17
+ AsyncL7PoliciesResourceWithStreamingResponse,
18
+ )
19
+
20
+ __all__ = [
21
+ "RulesResource",
22
+ "AsyncRulesResource",
23
+ "RulesResourceWithRawResponse",
24
+ "AsyncRulesResourceWithRawResponse",
25
+ "RulesResourceWithStreamingResponse",
26
+ "AsyncRulesResourceWithStreamingResponse",
27
+ "L7PoliciesResource",
28
+ "AsyncL7PoliciesResource",
29
+ "L7PoliciesResourceWithRawResponse",
30
+ "AsyncL7PoliciesResourceWithRawResponse",
31
+ "L7PoliciesResourceWithStreamingResponse",
32
+ "AsyncL7PoliciesResourceWithStreamingResponse",
33
+ ]