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,19 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from ...._models import BaseModel
4
+
5
+ __all__ = ["InferenceRegistryCredential"]
6
+
7
+
8
+ class InferenceRegistryCredential(BaseModel):
9
+ name: str
10
+ """Registry credential name."""
11
+
12
+ project_id: int
13
+ """Project ID to which the inference registry credentials belongs."""
14
+
15
+ registry_url: str
16
+ """Registry URL."""
17
+
18
+ username: str
19
+ """Registry username."""
@@ -0,0 +1,22 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from ...._models import BaseModel
4
+
5
+ __all__ = ["InferenceRegistryCredentialFull"]
6
+
7
+
8
+ class InferenceRegistryCredentialFull(BaseModel):
9
+ name: str
10
+ """Registry credential name."""
11
+
12
+ password: str
13
+ """Registry password."""
14
+
15
+ project_id: int
16
+ """Project ID to which the inference registry credentials belongs."""
17
+
18
+ registry_url: str
19
+ """Registry URL."""
20
+
21
+ username: str
22
+ """Registry username."""
@@ -0,0 +1,17 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from ...._models import BaseModel
4
+ from ..aws_iam_data import AwsIamData
5
+
6
+ __all__ = ["InferenceSecret"]
7
+
8
+
9
+ class InferenceSecret(BaseModel):
10
+ data: AwsIamData
11
+ """Secret data."""
12
+
13
+ name: str
14
+ """Secret name."""
15
+
16
+ type: str
17
+ """Secret type."""
@@ -0,0 +1,65 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Optional
4
+
5
+ from pydantic import Field as FieldInfo
6
+
7
+ from ...._models import BaseModel
8
+
9
+ __all__ = ["MlcatalogModelCard"]
10
+
11
+
12
+ class MlcatalogModelCard(BaseModel):
13
+ id: str
14
+ """Model ID."""
15
+
16
+ category: Optional[str] = None
17
+ """Category of the model."""
18
+
19
+ default_flavor_name: Optional[str] = None
20
+ """Default flavor for the model."""
21
+
22
+ description: str
23
+ """Description of the model."""
24
+
25
+ developer: Optional[str] = None
26
+ """Developer of the model."""
27
+
28
+ documentation_page: Optional[str] = None
29
+ """Path to the documentation page."""
30
+
31
+ eula_url: Optional[str] = None
32
+ """URL to the EULA text."""
33
+
34
+ example_curl_request: Optional[str] = None
35
+ """Example curl request to the model."""
36
+
37
+ has_eula: bool
38
+ """Whether the model has an EULA."""
39
+
40
+ image_registry_id: Optional[str] = None
41
+ """Image registry of the model."""
42
+
43
+ image_url: str
44
+ """Image URL of the model."""
45
+
46
+ inference_backend: Optional[str] = None
47
+ """Describing underlying inference engine."""
48
+
49
+ inference_frontend: Optional[str] = None
50
+ """Describing model frontend type."""
51
+
52
+ api_model_id: Optional[str] = FieldInfo(alias="model_id", default=None)
53
+ """Model name to perform inference call."""
54
+
55
+ name: str
56
+ """Name of the model."""
57
+
58
+ openai_compatibility: Optional[str] = None
59
+ """OpenAI compatibility level."""
60
+
61
+ port: int
62
+ """Port on which the model runs."""
63
+
64
+ version: Optional[str] = None
65
+ """Version of the model."""
@@ -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__ = ["MlcatalogOrderByChoices"]
6
+
7
+ MlcatalogOrderByChoices: TypeAlias = Literal["name.asc", "name.desc"]
@@ -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 TypedDict
6
+
7
+ from .mlcatalog_order_by_choices import MlcatalogOrderByChoices
8
+
9
+ __all__ = ["ModelListParams"]
10
+
11
+
12
+ class ModelListParams(TypedDict, total=False):
13
+ limit: int
14
+ """Optional. Limit the number of returned items"""
15
+
16
+ offset: int
17
+ """Optional.
18
+
19
+ Offset value is used to exclude the first set of records from the result
20
+ """
21
+
22
+ order_by: MlcatalogOrderByChoices
23
+ """Order instances by transmitted fields and directions"""
@@ -0,0 +1,24 @@
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__ = ["RegistryCredentialCreateParams"]
8
+
9
+
10
+ class RegistryCredentialCreateParams(TypedDict, total=False):
11
+ project_id: int
12
+ """Project ID"""
13
+
14
+ name: Required[str]
15
+ """Registry credential name."""
16
+
17
+ password: Required[str]
18
+ """Registry password."""
19
+
20
+ registry_url: Required[str]
21
+ """Registry URL."""
22
+
23
+ username: Required[str]
24
+ """Registry username."""
@@ -0,0 +1,21 @@
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 TypedDict
6
+
7
+ __all__ = ["RegistryCredentialListParams"]
8
+
9
+
10
+ class RegistryCredentialListParams(TypedDict, total=False):
11
+ project_id: int
12
+ """Project ID"""
13
+
14
+ limit: int
15
+ """Optional. Limit the number of returned items"""
16
+
17
+ offset: int
18
+ """Optional.
19
+
20
+ Offset value is used to exclude the first set of records from the result
21
+ """
@@ -0,0 +1,21 @@
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__ = ["RegistryCredentialReplaceParams"]
8
+
9
+
10
+ class RegistryCredentialReplaceParams(TypedDict, total=False):
11
+ project_id: int
12
+ """Project ID"""
13
+
14
+ password: Required[str]
15
+ """Registry password."""
16
+
17
+ registry_url: Required[str]
18
+ """Registry URL."""
19
+
20
+ username: Required[str]
21
+ """Registry username."""
@@ -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 ..aws_iam_data_param import AwsIamDataParam
8
+
9
+ __all__ = ["SecretCreateParams"]
10
+
11
+
12
+ class SecretCreateParams(TypedDict, total=False):
13
+ project_id: int
14
+ """Project ID"""
15
+
16
+ data: Required[AwsIamDataParam]
17
+ """Secret data."""
18
+
19
+ name: Required[str]
20
+ """Secret name."""
21
+
22
+ type: Required[str]
23
+ """Secret type. Currently only `aws-iam` is supported."""
@@ -0,0 +1,21 @@
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 TypedDict
6
+
7
+ __all__ = ["SecretListParams"]
8
+
9
+
10
+ class SecretListParams(TypedDict, total=False):
11
+ project_id: int
12
+ """Project ID"""
13
+
14
+ limit: int
15
+ """Optional. Limit the number of returned items"""
16
+
17
+ offset: int
18
+ """Optional.
19
+
20
+ Offset value is used to exclude the first set of records from the result
21
+ """
@@ -0,0 +1,20 @@
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 ..aws_iam_data_param import AwsIamDataParam
8
+
9
+ __all__ = ["SecretReplaceParams"]
10
+
11
+
12
+ class SecretReplaceParams(TypedDict, total=False):
13
+ project_id: int
14
+ """Project ID"""
15
+
16
+ data: Required[AwsIamDataParam]
17
+ """Secret data."""
18
+
19
+ type: Required[str]
20
+ """Secret type."""
@@ -0,0 +1,19 @@
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
+ from .container_probe_config import ContainerProbeConfig
7
+
8
+ __all__ = ["InferenceProbes"]
9
+
10
+
11
+ class InferenceProbes(BaseModel):
12
+ liveness_probe: Optional[ContainerProbeConfig] = None
13
+ """Liveness probe configuration"""
14
+
15
+ readiness_probe: Optional[ContainerProbeConfig] = None
16
+ """Readiness probe configuration"""
17
+
18
+ startup_probe: Optional[ContainerProbeConfig] = None
19
+ """Startup probe configuration"""
@@ -0,0 +1,16 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from ..._models import BaseModel
4
+
5
+ __all__ = ["IngressOptsOut"]
6
+
7
+
8
+ class IngressOptsOut(BaseModel):
9
+ disable_response_buffering: bool
10
+ """Disable response buffering if true.
11
+
12
+ A client usually has a much slower connection and can not consume the response
13
+ data as fast as it is produced by an upstream application. Ingress tries to
14
+ buffer the whole response in order to release the upstream application as soon
15
+ as possible.By default, the response buffering is enabled.
16
+ """
@@ -0,0 +1,18 @@
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 TypedDict
6
+
7
+ __all__ = ["IngressOptsParam"]
8
+
9
+
10
+ class IngressOptsParam(TypedDict, total=False):
11
+ disable_response_buffering: bool
12
+ """Disable response buffering if true.
13
+
14
+ A client usually has a much slower connection and can not consume the response
15
+ data as fast as it is produced by an upstream application. Ingress tries to
16
+ buffer the whole response in order to release the upstream application as soon
17
+ as possible.By default, the response buffering is enabled.
18
+ """
@@ -0,0 +1,296 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Dict, List, Union, Optional
4
+ from datetime import datetime
5
+ from typing_extensions import Literal, TypeAlias
6
+
7
+ from .tag import Tag
8
+ from ..._models import BaseModel
9
+ from .ddos_profile import DDOSProfile
10
+ from .fixed_address import FixedAddress
11
+ from .blackhole_port import BlackholePort
12
+ from .floating_address import FloatingAddress
13
+ from .instance_isolation import InstanceIsolation
14
+ from .fixed_address_short import FixedAddressShort
15
+
16
+ __all__ = [
17
+ "Instance",
18
+ "Address",
19
+ "FixedIPAssignment",
20
+ "Flavor",
21
+ "FlavorInstanceFlavorSerializer",
22
+ "FlavorInstanceFlavorSerializerHardwareDescription",
23
+ "FlavorBareMetalFlavorSerializer",
24
+ "FlavorBareMetalFlavorSerializerHardwareDescription",
25
+ "FlavorDeprecatedGPUClusterFlavorSerializer",
26
+ "FlavorDeprecatedGPUClusterFlavorSerializerHardwareDescription",
27
+ "SecurityGroup",
28
+ "Volume",
29
+ ]
30
+
31
+ Address: TypeAlias = Union[FloatingAddress, FixedAddressShort, FixedAddress]
32
+
33
+
34
+ class FixedIPAssignment(BaseModel):
35
+ external: bool
36
+ """Is network external"""
37
+
38
+ ip_address: str
39
+ """Ip address"""
40
+
41
+ subnet_id: str
42
+ """Interface subnet id"""
43
+
44
+
45
+ class FlavorInstanceFlavorSerializerHardwareDescription(BaseModel):
46
+ ram: str
47
+ """RAM description"""
48
+
49
+ vcpus: str
50
+ """CPU description"""
51
+
52
+
53
+ class FlavorInstanceFlavorSerializer(BaseModel):
54
+ architecture: str
55
+ """CPU architecture"""
56
+
57
+ flavor_id: str
58
+ """Flavor ID is the same as name"""
59
+
60
+ flavor_name: str
61
+ """Flavor name"""
62
+
63
+ hardware_description: FlavorInstanceFlavorSerializerHardwareDescription
64
+ """Additional hardware description"""
65
+
66
+ os_type: str
67
+ """Flavor operating system"""
68
+
69
+ ram: int
70
+ """RAM size in MiB"""
71
+
72
+ vcpus: int
73
+ """Virtual CPU count. For bare metal flavors, it's a physical CPU count"""
74
+
75
+
76
+ class FlavorBareMetalFlavorSerializerHardwareDescription(BaseModel):
77
+ cpu: str
78
+ """Human-readable CPU description"""
79
+
80
+ disk: str
81
+ """Human-readable disk description"""
82
+
83
+ license: str
84
+ """If the flavor is licensed, this field contains the license type"""
85
+
86
+ network: str
87
+ """Human-readable NIC description"""
88
+
89
+ ram: str
90
+ """Human-readable RAM description"""
91
+
92
+
93
+ class FlavorBareMetalFlavorSerializer(BaseModel):
94
+ architecture: str
95
+ """CPU architecture"""
96
+
97
+ flavor_id: str
98
+ """Flavor ID is the same as name"""
99
+
100
+ flavor_name: str
101
+ """Flavor name"""
102
+
103
+ hardware_description: FlavorBareMetalFlavorSerializerHardwareDescription
104
+ """Additional hardware description"""
105
+
106
+ os_type: str
107
+ """Operating system"""
108
+
109
+ ram: int
110
+ """RAM size in MiB"""
111
+
112
+ resource_class: str
113
+ """Flavor resource class for mapping to hardware capacity"""
114
+
115
+ vcpus: int
116
+ """Virtual CPU count. For bare metal flavors, it's a physical CPU count"""
117
+
118
+
119
+ class FlavorDeprecatedGPUClusterFlavorSerializerHardwareDescription(BaseModel):
120
+ cpu: str
121
+ """Human-readable CPU description"""
122
+
123
+ disk: str
124
+ """Human-readable disk description"""
125
+
126
+ gpu: str
127
+ """Human-readable GPU description"""
128
+
129
+ license: str
130
+ """If the flavor is licensed, this field contains the license type"""
131
+
132
+ network: str
133
+ """Human-readable NIC description"""
134
+
135
+ ram: str
136
+ """Human-readable RAM description"""
137
+
138
+
139
+ class FlavorDeprecatedGPUClusterFlavorSerializer(BaseModel):
140
+ architecture: str
141
+ """CPU architecture"""
142
+
143
+ flavor_id: str
144
+ """Flavor ID is the same as name"""
145
+
146
+ flavor_name: str
147
+ """Flavor name"""
148
+
149
+ hardware_description: FlavorDeprecatedGPUClusterFlavorSerializerHardwareDescription
150
+ """Additional hardware description"""
151
+
152
+ os_type: str
153
+ """Operating system"""
154
+
155
+ ram: int
156
+ """RAM size in MiB"""
157
+
158
+ resource_class: str
159
+ """Flavor resource class for mapping to hardware capacity"""
160
+
161
+ vcpus: int
162
+ """Virtual CPU count. For bare metal flavors, it's a physical CPU count"""
163
+
164
+
165
+ Flavor: TypeAlias = Union[
166
+ FlavorInstanceFlavorSerializer, FlavorBareMetalFlavorSerializer, FlavorDeprecatedGPUClusterFlavorSerializer
167
+ ]
168
+
169
+
170
+ class SecurityGroup(BaseModel):
171
+ name: str
172
+ """Name."""
173
+
174
+
175
+ class Volume(BaseModel):
176
+ id: str
177
+ """Volume ID"""
178
+
179
+ delete_on_termination: bool
180
+ """Whether the volume is deleted together with the VM"""
181
+
182
+
183
+ class Instance(BaseModel):
184
+ id: str
185
+ """Instance ID"""
186
+
187
+ addresses: Dict[str, List[Address]]
188
+ """Map of network_name to list of addresses in that network"""
189
+
190
+ blackhole_ports: List[BlackholePort]
191
+ """IP addresses of the instances that are blackholed by DDoS mitigation system"""
192
+
193
+ created_at: datetime
194
+ """Datetime when instance was created"""
195
+
196
+ creator_task_id: Optional[str] = None
197
+ """Task that created this entity"""
198
+
199
+ ddos_profile: Optional[DDOSProfile] = None
200
+ """Advanced DDoS protection profile.
201
+
202
+ It is always `null` if query parameter `with_ddos=true` is not set.
203
+ """
204
+
205
+ fixed_ip_assignments: Optional[List[FixedIPAssignment]] = None
206
+ """Fixed IP assigned to instance"""
207
+
208
+ flavor: Flavor
209
+ """Flavor"""
210
+
211
+ instance_description: Optional[str] = None
212
+ """Instance description"""
213
+
214
+ instance_isolation: Optional[InstanceIsolation] = None
215
+ """Instance isolation information"""
216
+
217
+ name: str
218
+ """Instance name"""
219
+
220
+ project_id: int
221
+ """Project ID"""
222
+
223
+ region: str
224
+ """Region name"""
225
+
226
+ region_id: int
227
+ """Region ID"""
228
+
229
+ security_groups: List[SecurityGroup]
230
+ """Security groups"""
231
+
232
+ ssh_key_name: Optional[str] = None
233
+ """SSH key assigned to instance"""
234
+
235
+ status: Literal[
236
+ "ACTIVE",
237
+ "BUILD",
238
+ "DELETED",
239
+ "ERROR",
240
+ "HARD_REBOOT",
241
+ "MIGRATING",
242
+ "PASSWORD",
243
+ "PAUSED",
244
+ "REBOOT",
245
+ "REBUILD",
246
+ "RESCUE",
247
+ "RESIZE",
248
+ "REVERT_RESIZE",
249
+ "SHELVED",
250
+ "SHELVED_OFFLOADED",
251
+ "SHUTOFF",
252
+ "SOFT_DELETED",
253
+ "SUSPENDED",
254
+ "UNKNOWN",
255
+ "VERIFY_RESIZE",
256
+ ]
257
+ """Instance status"""
258
+
259
+ tags: List[Tag]
260
+ """List of key-value tags associated with the resource.
261
+
262
+ A tag is a key-value pair that can be associated with a resource, enabling
263
+ efficient filtering and grouping for better organization and management. Some
264
+ tags are read-only and cannot be modified by the user. Tags are also integrated
265
+ with cost reports, allowing cost data to be filtered based on tag keys or
266
+ values.
267
+ """
268
+
269
+ task_id: Optional[str] = None
270
+ """The UUID of the active task that currently holds a lock on the resource.
271
+
272
+ This lock prevents concurrent modifications to ensure consistency. If `null`,
273
+ the resource is not locked.
274
+ """
275
+
276
+ task_state: Optional[str] = None
277
+ """Task state"""
278
+
279
+ vm_state: Literal[
280
+ "active",
281
+ "building",
282
+ "deleted",
283
+ "error",
284
+ "paused",
285
+ "rescued",
286
+ "resized",
287
+ "shelved",
288
+ "shelved_offloaded",
289
+ "soft-deleted",
290
+ "stopped",
291
+ "suspended",
292
+ ]
293
+ """Virtual machine state (active)"""
294
+
295
+ volumes: List[Volume]
296
+ """List of volumes"""
@@ -0,0 +1,32 @@
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, Optional
6
+ from typing_extensions import Literal, Required, TypeAlias, TypedDict
7
+
8
+ __all__ = ["InstanceActionParams", "StartActionInstanceSerializer", "BasicActionInstanceSerializer"]
9
+
10
+
11
+ class StartActionInstanceSerializer(TypedDict, total=False):
12
+ project_id: int
13
+
14
+ region_id: int
15
+
16
+ action: Required[Literal["start"]]
17
+ """Instance action name"""
18
+
19
+ activate_profile: Optional[bool]
20
+ """Used on start instance to activate Advanced DDoS profile"""
21
+
22
+
23
+ class BasicActionInstanceSerializer(TypedDict, total=False):
24
+ project_id: int
25
+
26
+ region_id: int
27
+
28
+ action: Required[Literal["reboot", "reboot_hard", "resume", "stop", "suspend"]]
29
+ """Instance action name"""
30
+
31
+
32
+ InstanceActionParams: TypeAlias = Union[StartActionInstanceSerializer, BasicActionInstanceSerializer]