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,33 @@
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__ = ["InstanceDeleteParams"]
8
+
9
+
10
+ class InstanceDeleteParams(TypedDict, total=False):
11
+ project_id: int
12
+ """Project ID"""
13
+
14
+ region_id: int
15
+ """Region ID"""
16
+
17
+ delete_floatings: bool
18
+ """True if it is required to delete floating IPs assigned to the instance.
19
+
20
+ Can't be used with `floatings`.
21
+ """
22
+
23
+ floatings: str
24
+ """Comma separated list of floating ids that should be deleted.
25
+
26
+ Can't be used with `delete_floatings`.
27
+ """
28
+
29
+ reserved_fixed_ips: str
30
+ """Comma separated list of port IDs to be deleted with the instance"""
31
+
32
+ volumes: str
33
+ """Comma separated list of volume IDs to be deleted with the instance"""
@@ -0,0 +1,16 @@
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__ = ["InstanceGetConsoleParams"]
8
+
9
+
10
+ class InstanceGetConsoleParams(TypedDict, total=False):
11
+ project_id: int
12
+
13
+ region_id: int
14
+
15
+ console_type: str
16
+ """Console type"""
@@ -0,0 +1,40 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import List, Optional
4
+
5
+ from ..._models import BaseModel
6
+ from .floating_ip import FloatingIP
7
+ from .ip_assignment import IPAssignment
8
+ from .network_details import NetworkDetails
9
+ from .allowed_address_pairs import AllowedAddressPairs
10
+
11
+ __all__ = ["InstanceInterface"]
12
+
13
+
14
+ class InstanceInterface(BaseModel):
15
+ allowed_address_pairs: List[AllowedAddressPairs]
16
+ """Group of subnet masks and/or IP addresses that share the current IP as VIP"""
17
+
18
+ floatingip_details: List[FloatingIP]
19
+ """Bodies of floating IPs that are NAT-ing IPs of this port"""
20
+
21
+ ip_assignments: List[IPAssignment]
22
+ """IP addresses assigned to this port"""
23
+
24
+ network_details: NetworkDetails
25
+ """Body of the network this port is attached to"""
26
+
27
+ network_id: str
28
+ """ID of the network the port is attached to"""
29
+
30
+ port_id: str
31
+ """ID of virtual ethernet port object"""
32
+
33
+ port_security_enabled: bool
34
+ """Port security status"""
35
+
36
+ interface_name: Optional[str] = None
37
+ """Interface name"""
38
+
39
+ mac_address: Optional[str] = None
40
+ """MAC address of the virtual port"""
@@ -0,0 +1,12 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Optional
4
+
5
+ from ..._models import BaseModel
6
+
7
+ __all__ = ["InstanceIsolation"]
8
+
9
+
10
+ class InstanceIsolation(BaseModel):
11
+ reason: Optional[str] = None
12
+ """The reason of instance isolation if it is isolated from external internet."""
@@ -0,0 +1,16 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import List
4
+
5
+ from .instance import Instance
6
+ from ..._models import BaseModel
7
+
8
+ __all__ = ["InstanceList"]
9
+
10
+
11
+ class InstanceList(BaseModel):
12
+ count: int
13
+ """Number of objects"""
14
+
15
+ results: List[Instance]
16
+ """Objects"""
@@ -0,0 +1,146 @@
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 List, Union
6
+ from datetime import datetime
7
+ from typing_extensions import Literal, Annotated, TypedDict
8
+
9
+ from ..._utils import PropertyInfo
10
+
11
+ __all__ = ["InstanceListParams"]
12
+
13
+
14
+ class InstanceListParams(TypedDict, total=False):
15
+ project_id: int
16
+ """Project ID"""
17
+
18
+ region_id: int
19
+ """Region ID"""
20
+
21
+ available_floating: bool
22
+ """Only show instances which are able to handle floating address"""
23
+
24
+ changes_before: Annotated[Union[str, datetime], PropertyInfo(alias="changes-before", format="iso8601")]
25
+ """Filters the instances by a date and time stamp when the instances last changed."""
26
+
27
+ changes_since: Annotated[Union[str, datetime], PropertyInfo(alias="changes-since", format="iso8601")]
28
+ """
29
+ Filters the instances by a date and time stamp when the instances last changed
30
+ status.
31
+ """
32
+
33
+ exclude_flavor_prefix: str
34
+ """Exclude instances with specified flavor prefix"""
35
+
36
+ exclude_secgroup: str
37
+ """Exclude instances with specified security group name"""
38
+
39
+ flavor_id: str
40
+ """Filter out instances by flavor_id. Flavor id must match exactly."""
41
+
42
+ flavor_prefix: str
43
+ """Filter out instances by flavor_prefix."""
44
+
45
+ include_ai: bool
46
+ """Include GPU clusters' servers"""
47
+
48
+ include_baremetal: bool
49
+ """Include bare metal servers. Please, use `GET /v1/bminstances/` instead"""
50
+
51
+ include_k8s: bool
52
+ """Include managed k8s worker nodes"""
53
+
54
+ ip: str
55
+ """An IPv4 address to filter results by.
56
+
57
+ Note: partial matches are allowed. For example, searching for 192.168.0.1 will
58
+ return 192.168.0.1, 192.168.0.10, 192.168.0.110, and so on.
59
+ """
60
+
61
+ limit: int
62
+ """Optional. Limit the number of returned items"""
63
+
64
+ name: str
65
+ """Filter instances by name.
66
+
67
+ You can provide a full or partial name, instances with matching names will be
68
+ returned. For example, entering 'test' will return all instances that contain
69
+ 'test' in their name.
70
+ """
71
+
72
+ offset: int
73
+ """Optional.
74
+
75
+ Offset value is used to exclude the first set of records from the result
76
+ """
77
+
78
+ only_isolated: bool
79
+ """Include only isolated instances"""
80
+
81
+ only_with_fixed_external_ip: bool
82
+ """Return bare metals only with external fixed IP addresses."""
83
+
84
+ order_by: Literal["created.asc", "created.desc", "name.asc", "name.desc"]
85
+ """Order by field and direction."""
86
+
87
+ profile_name: str
88
+ """Filter result by ddos protection profile name.
89
+
90
+ Effective only with with_ddos set to true.
91
+ """
92
+
93
+ protection_status: Literal["Active", "Queued", "Error"]
94
+ """Filter result by DDoS protection_status.
95
+
96
+ if parameter is provided. Effective only with with_ddos set to true. (Active,
97
+ Queued or Error)
98
+ """
99
+
100
+ status: Literal[
101
+ "ACTIVE",
102
+ "BUILD",
103
+ "ERROR",
104
+ "HARD_REBOOT",
105
+ "MIGRATING",
106
+ "PAUSED",
107
+ "REBOOT",
108
+ "REBUILD",
109
+ "RESIZE",
110
+ "REVERT_RESIZE",
111
+ "SHELVED",
112
+ "SHELVED_OFFLOADED",
113
+ "SHUTOFF",
114
+ "SOFT_DELETED",
115
+ "SUSPENDED",
116
+ "VERIFY_RESIZE",
117
+ ]
118
+ """Filters instances by status."""
119
+
120
+ tag_key_value: str
121
+ """Optional.
122
+
123
+ Filter by tag key-value pairs. curl -G --data-urlencode "tag_key_value={"key":
124
+ "value"}" --url "https://example.com/cloud/v1/resource/1/1"
125
+ """
126
+
127
+ tag_value: List[str]
128
+ """Optional. Filter by tag values. ?tag_value=value1&tag_value=value2"""
129
+
130
+ type_ddos_profile: Literal["basic", "advanced"]
131
+ """Return bare metals either only with advanced or only basic DDoS protection.
132
+
133
+ Effective only with with_ddos set to true. (advanced or basic)
134
+ """
135
+
136
+ uuid: str
137
+ """Filter the server list result by the UUID of the server. Allowed UUID part"""
138
+
139
+ with_ddos: bool
140
+ """Include DDoS profile information in the response when set to `true`.
141
+
142
+ Otherwise, the `ddos_profile` field in the response is `null` by default.
143
+ """
144
+
145
+ with_interfaces_name: bool
146
+ """Include `interface_name` in the addresses"""
@@ -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__ = ["InstanceMetricsTimeUnit"]
6
+
7
+ InstanceMetricsTimeUnit: TypeAlias = Literal["day", "hour"]
@@ -0,0 +1,16 @@
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__ = ["InstanceResizeParams"]
8
+
9
+
10
+ class InstanceResizeParams(TypedDict, total=False):
11
+ project_id: int
12
+
13
+ region_id: int
14
+
15
+ flavor_id: Required[str]
16
+ """Flavor ID"""
@@ -0,0 +1,28 @@
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 List, Iterable, Optional
6
+ from typing_extensions import Required, TypedDict
7
+
8
+ __all__ = ["InstanceUnassignSecurityGroupParams", "PortsSecurityGroupName"]
9
+
10
+
11
+ class InstanceUnassignSecurityGroupParams(TypedDict, total=False):
12
+ project_id: int
13
+
14
+ region_id: int
15
+
16
+ name: str
17
+ """Security group name, applies to all ports"""
18
+
19
+ ports_security_group_names: Iterable[PortsSecurityGroupName]
20
+ """Port security groups mapping"""
21
+
22
+
23
+ class PortsSecurityGroupName(TypedDict, total=False):
24
+ port_id: Required[Optional[str]]
25
+ """Port ID. If None, security groups will be applied to all ports"""
26
+
27
+ security_group_names: Required[List[str]]
28
+ """List of security group names"""
@@ -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 Required, TypedDict
6
+
7
+ __all__ = ["InstanceUpdateParams"]
8
+
9
+
10
+ class InstanceUpdateParams(TypedDict, total=False):
11
+ project_id: int
12
+ """Project ID"""
13
+
14
+ region_id: int
15
+ """Region ID"""
16
+
17
+ name: Required[str]
18
+ """Name."""
@@ -0,0 +1,19 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from .metrics import Metrics as Metrics
6
+ from .metrics_list import MetricsList as MetricsList
7
+ from .instance_flavor import InstanceFlavor as InstanceFlavor
8
+ from .image_get_params import ImageGetParams as ImageGetParams
9
+ from .image_list_params import ImageListParams as ImageListParams
10
+ from .flavor_list_params import FlavorListParams as FlavorListParams
11
+ from .metric_list_params import MetricListParams as MetricListParams
12
+ from .image_update_params import ImageUpdateParams as ImageUpdateParams
13
+ from .image_upload_params import ImageUploadParams as ImageUploadParams
14
+ from .instance_flavor_list import InstanceFlavorList as InstanceFlavorList
15
+ from .interface_attach_params import InterfaceAttachParams as InterfaceAttachParams
16
+ from .interface_detach_params import InterfaceDetachParams as InterfaceDetachParams
17
+ from .flavor_list_suitable_params import FlavorListSuitableParams as FlavorListSuitableParams
18
+ from .flavor_list_for_resize_params import FlavorListForResizeParams as FlavorListForResizeParams
19
+ from .image_create_from_volume_params import ImageCreateFromVolumeParams as ImageCreateFromVolumeParams
@@ -0,0 +1,16 @@
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__ = ["FlavorListForResizeParams"]
8
+
9
+
10
+ class FlavorListForResizeParams(TypedDict, total=False):
11
+ project_id: int
12
+
13
+ region_id: int
14
+
15
+ include_prices: bool
16
+ """Set to true if flavor listing should include flavor prices"""
@@ -0,0 +1,25 @@
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__ = ["FlavorListParams"]
8
+
9
+
10
+ class FlavorListParams(TypedDict, total=False):
11
+ project_id: int
12
+
13
+ region_id: int
14
+
15
+ disabled: bool
16
+ """Flag for filtering disabled flavors in the region. Defaults to true"""
17
+
18
+ exclude_linux: bool
19
+ """Set to true to exclude flavors dedicated to linux images. Default False"""
20
+
21
+ exclude_windows: bool
22
+ """Set to true to exclude flavors dedicated to windows images. Default False"""
23
+
24
+ include_prices: bool
25
+ """Set to true if the response should include flavor prices"""
@@ -0,0 +1,56 @@
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 Iterable, Optional
6
+ from typing_extensions import Literal, Required, TypedDict
7
+
8
+ __all__ = ["FlavorListSuitableParams", "Volume"]
9
+
10
+
11
+ class FlavorListSuitableParams(TypedDict, total=False):
12
+ project_id: int
13
+
14
+ region_id: int
15
+
16
+ volumes: Required[Iterable[Volume]]
17
+ """Volumes details. Non-important info such as names may be omitted."""
18
+
19
+ include_prices: bool
20
+ """Set to true if flavor listing should include flavor prices"""
21
+
22
+
23
+ class Volume(TypedDict, total=False):
24
+ source: Required[Literal["apptemplate", "existing-volume", "image", "new-volume", "snapshot"]]
25
+ """Volume source"""
26
+
27
+ apptemplate_id: str
28
+ """App template ID. Mandatory if volume is created from marketplace template"""
29
+
30
+ boot_index: int
31
+ """
32
+ 0 should be set for primary boot device Unique positive values for other
33
+ bootable devices.Negative - boot prohibited
34
+ """
35
+
36
+ image_id: str
37
+ """Image ID. Mandatory if volume is created from image"""
38
+
39
+ name: Optional[str]
40
+
41
+ size: int
42
+ """Volume size.
43
+
44
+ Must be specified when source is 'new-volume' or 'image'. If specified for
45
+ source 'snapshot' or 'existing-volume', value must be equal to respective
46
+ snapshot or volume size
47
+ """
48
+
49
+ snapshot_id: str
50
+ """Volume snapshot ID. Mandatory if volume is created from a snapshot"""
51
+
52
+ type_name: Literal["cold", "ssd_hiiops", "ssd_local", "ssd_lowlatency", "standard", "ultra"]
53
+ """One of 'standard', 'ssd_hiiops', 'ssd_local', 'ssd_lowlatency', 'cold', 'ultra'"""
54
+
55
+ volume_id: str
56
+ """Volume ID. Mandatory if volume is pre-existing volume"""
@@ -0,0 +1,53 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Optional
6
+ from typing_extensions import Literal, Required, TypedDict
7
+
8
+ from ..tag_update_map_param import TagUpdateMapParam
9
+
10
+ __all__ = ["ImageCreateFromVolumeParams"]
11
+
12
+
13
+ class ImageCreateFromVolumeParams(TypedDict, total=False):
14
+ project_id: int
15
+
16
+ region_id: int
17
+
18
+ name: Required[str]
19
+ """Image name"""
20
+
21
+ volume_id: Required[str]
22
+ """Required if source is volume. Volume id"""
23
+
24
+ architecture: Literal["aarch64", "x86_64"]
25
+ """Image CPU architecture type: `aarch64`, `x86_64`"""
26
+
27
+ hw_firmware_type: Optional[Literal["bios", "uefi"]]
28
+ """Specifies the type of firmware with which to boot the guest."""
29
+
30
+ hw_machine_type: Optional[Literal["pc", "q35"]]
31
+ """A virtual chipset type."""
32
+
33
+ is_baremetal: bool
34
+ """Set to true if the image will be used by bare metal servers. Defaults to false."""
35
+
36
+ os_type: Literal["linux", "windows"]
37
+ """The operating system installed on the image."""
38
+
39
+ source: Literal["volume"]
40
+ """Image source"""
41
+
42
+ ssh_key: Literal["allow", "deny", "required"]
43
+ """Whether the image supports SSH key or not"""
44
+
45
+ tags: TagUpdateMapParam
46
+ """Key-value tags to associate with the resource.
47
+
48
+ A tag is a key-value pair that can be associated with a resource, enabling
49
+ efficient filtering and grouping for better organization and management. Some
50
+ tags are read-only and cannot be modified by the user. Tags are also integrated
51
+ with cost reports, allowing cost data to be filtered based on tag keys or
52
+ values.
53
+ """
@@ -0,0 +1,16 @@
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__ = ["ImageGetParams"]
8
+
9
+
10
+ class ImageGetParams(TypedDict, total=False):
11
+ project_id: int
12
+
13
+ region_id: int
14
+
15
+ include_prices: bool
16
+ """Show price"""
@@ -0,0 +1,33 @@
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 List
6
+ from typing_extensions import Literal, TypedDict
7
+
8
+ __all__ = ["ImageListParams"]
9
+
10
+
11
+ class ImageListParams(TypedDict, total=False):
12
+ project_id: int
13
+
14
+ region_id: int
15
+
16
+ include_prices: bool
17
+ """Show price"""
18
+
19
+ private: str
20
+ """Any value to show private images"""
21
+
22
+ tag_key: List[str]
23
+ """Filter by tag keys."""
24
+
25
+ tag_key_value: str
26
+ """Filter by tag key-value pairs.
27
+
28
+ Must be a valid JSON string. 'curl -G --data-urlencode 'tag_key_value={"key":
29
+ "value"}' --url 'http://localhost:1111/v1/images/1/1'"
30
+ """
31
+
32
+ visibility: Literal["private", "public", "shared"]
33
+ """Image visibility. Globally visible images are public"""
@@ -0,0 +1,43 @@
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 Literal, TypedDict
6
+
7
+ from ..tag_update_map_param import TagUpdateMapParam
8
+
9
+ __all__ = ["ImageUpdateParams"]
10
+
11
+
12
+ class ImageUpdateParams(TypedDict, total=False):
13
+ project_id: int
14
+
15
+ region_id: int
16
+
17
+ hw_firmware_type: Literal["bios", "uefi"]
18
+ """Specifies the type of firmware with which to boot the guest."""
19
+
20
+ hw_machine_type: Literal["pc", "q35"]
21
+ """A virtual chipset type."""
22
+
23
+ is_baremetal: bool
24
+ """Set to true if the image will be used by bare metal servers."""
25
+
26
+ name: str
27
+ """Image display name"""
28
+
29
+ os_type: Literal["linux", "windows"]
30
+ """The operating system installed on the image."""
31
+
32
+ ssh_key: Literal["allow", "deny", "required"]
33
+ """Whether the image supports SSH key or not"""
34
+
35
+ tags: TagUpdateMapParam
36
+ """Key-value tags to associate with the resource.
37
+
38
+ A tag is a key-value pair that can be associated with a resource, enabling
39
+ efficient filtering and grouping for better organization and management. Some
40
+ tags are read-only and cannot be modified by the user. Tags are also integrated
41
+ with cost reports, allowing cost data to be filtered based on tag keys or
42
+ values.
43
+ """
@@ -0,0 +1,62 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Optional
6
+ from typing_extensions import Literal, Required, TypedDict
7
+
8
+ from ..tag_update_map_param import TagUpdateMapParam
9
+
10
+ __all__ = ["ImageUploadParams"]
11
+
12
+
13
+ class ImageUploadParams(TypedDict, total=False):
14
+ project_id: int
15
+
16
+ region_id: int
17
+
18
+ name: Required[str]
19
+ """Image name"""
20
+
21
+ url: Required[str]
22
+ """URL"""
23
+
24
+ architecture: Literal["aarch64", "x86_64"]
25
+ """Image CPU architecture type: `aarch64`, `x86_64`"""
26
+
27
+ cow_format: bool
28
+ """
29
+ When True, image cannot be deleted unless all volumes, created from it, are
30
+ deleted.
31
+ """
32
+
33
+ hw_firmware_type: Optional[Literal["bios", "uefi"]]
34
+ """Specifies the type of firmware with which to boot the guest."""
35
+
36
+ hw_machine_type: Optional[Literal["pc", "q35"]]
37
+ """A virtual chipset type."""
38
+
39
+ is_baremetal: bool
40
+ """Set to true if the image will be used by bare metal servers. Defaults to false."""
41
+
42
+ os_distro: Optional[str]
43
+ """OS Distribution, i.e. Debian, CentOS, Ubuntu, CoreOS etc."""
44
+
45
+ os_type: Literal["linux", "windows"]
46
+ """The operating system installed on the image."""
47
+
48
+ os_version: Optional[str]
49
+ """OS version, i.e. 22.04 (for Ubuntu) or 9.4 for Debian"""
50
+
51
+ ssh_key: Literal["allow", "deny", "required"]
52
+ """Whether the image supports SSH key or not"""
53
+
54
+ tags: TagUpdateMapParam
55
+ """Key-value tags to associate with the resource.
56
+
57
+ A tag is a key-value pair that can be associated with a resource, enabling
58
+ efficient filtering and grouping for better organization and management. Some
59
+ tags are read-only and cannot be modified by the user. Tags are also integrated
60
+ with cost reports, allowing cost data to be filtered based on tag keys or
61
+ values.
62
+ """