gcore 0.1.0__py3-none-any.whl

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

Potentially problematic release.


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

Files changed (437) hide show
  1. gcore/__init__.py +89 -0
  2. gcore/_base_client.py +1943 -0
  3. gcore/_client.py +493 -0
  4. gcore/_compat.py +219 -0
  5. gcore/_constants.py +16 -0
  6. gcore/_exceptions.py +108 -0
  7. gcore/_files.py +123 -0
  8. gcore/_models.py +803 -0
  9. gcore/_qs.py +150 -0
  10. gcore/_resource.py +43 -0
  11. gcore/_response.py +830 -0
  12. gcore/_streaming.py +333 -0
  13. gcore/_types.py +217 -0
  14. gcore/_utils/__init__.py +57 -0
  15. gcore/_utils/_logs.py +25 -0
  16. gcore/_utils/_proxy.py +65 -0
  17. gcore/_utils/_reflection.py +42 -0
  18. gcore/_utils/_resources_proxy.py +24 -0
  19. gcore/_utils/_streams.py +12 -0
  20. gcore/_utils/_sync.py +86 -0
  21. gcore/_utils/_transform.py +447 -0
  22. gcore/_utils/_typing.py +151 -0
  23. gcore/_utils/_utils.py +422 -0
  24. gcore/_version.py +4 -0
  25. gcore/lib/.keep +4 -0
  26. gcore/lib/polling.py +19 -0
  27. gcore/pagination.py +70 -0
  28. gcore/py.typed +0 -0
  29. gcore/resources/__init__.py +33 -0
  30. gcore/resources/cloud/__init__.py +327 -0
  31. gcore/resources/cloud/baremetal/__init__.py +61 -0
  32. gcore/resources/cloud/baremetal/baremetal.py +166 -0
  33. gcore/resources/cloud/baremetal/flavors.py +371 -0
  34. gcore/resources/cloud/baremetal/images.py +238 -0
  35. gcore/resources/cloud/baremetal/servers.py +1042 -0
  36. gcore/resources/cloud/billing_reservations.py +386 -0
  37. gcore/resources/cloud/cloud.py +774 -0
  38. gcore/resources/cloud/file_shares/__init__.py +33 -0
  39. gcore/resources/cloud/file_shares/access_rules.py +434 -0
  40. gcore/resources/cloud/file_shares/file_shares.py +994 -0
  41. gcore/resources/cloud/floating_ips.py +765 -0
  42. gcore/resources/cloud/gpu_baremetal_clusters/__init__.py +75 -0
  43. gcore/resources/cloud/gpu_baremetal_clusters/flavors.py +211 -0
  44. gcore/resources/cloud/gpu_baremetal_clusters/gpu_baremetal_clusters.py +1493 -0
  45. gcore/resources/cloud/gpu_baremetal_clusters/images.py +785 -0
  46. gcore/resources/cloud/gpu_baremetal_clusters/interfaces.py +175 -0
  47. gcore/resources/cloud/gpu_baremetal_clusters/servers.py +1178 -0
  48. gcore/resources/cloud/inference/__init__.py +89 -0
  49. gcore/resources/cloud/inference/deployments/__init__.py +33 -0
  50. gcore/resources/cloud/inference/deployments/deployments.py +1493 -0
  51. gcore/resources/cloud/inference/deployments/logs.py +235 -0
  52. gcore/resources/cloud/inference/flavors.py +280 -0
  53. gcore/resources/cloud/inference/inference.py +295 -0
  54. gcore/resources/cloud/inference/models.py +289 -0
  55. gcore/resources/cloud/inference/registry_credentials.py +649 -0
  56. gcore/resources/cloud/inference/secrets.py +629 -0
  57. gcore/resources/cloud/instances/__init__.py +75 -0
  58. gcore/resources/cloud/instances/flavors.py +449 -0
  59. gcore/resources/cloud/instances/images.py +1297 -0
  60. gcore/resources/cloud/instances/instances.py +2821 -0
  61. gcore/resources/cloud/instances/interfaces.py +797 -0
  62. gcore/resources/cloud/instances/metrics.py +217 -0
  63. gcore/resources/cloud/ip_ranges.py +135 -0
  64. gcore/resources/cloud/load_balancers/__init__.py +103 -0
  65. gcore/resources/cloud/load_balancers/flavors.py +193 -0
  66. gcore/resources/cloud/load_balancers/l7_policies/__init__.py +33 -0
  67. gcore/resources/cloud/load_balancers/l7_policies/l7_policies.py +1020 -0
  68. gcore/resources/cloud/load_balancers/l7_policies/rules.py +1036 -0
  69. gcore/resources/cloud/load_balancers/listeners.py +1089 -0
  70. gcore/resources/cloud/load_balancers/load_balancers.py +1583 -0
  71. gcore/resources/cloud/load_balancers/metrics.py +205 -0
  72. gcore/resources/cloud/load_balancers/pools/__init__.py +47 -0
  73. gcore/resources/cloud/load_balancers/pools/health_monitors.py +352 -0
  74. gcore/resources/cloud/load_balancers/pools/members.py +353 -0
  75. gcore/resources/cloud/load_balancers/pools/pools.py +1190 -0
  76. gcore/resources/cloud/load_balancers/statuses.py +260 -0
  77. gcore/resources/cloud/networks/__init__.py +47 -0
  78. gcore/resources/cloud/networks/networks.py +771 -0
  79. gcore/resources/cloud/networks/routers.py +875 -0
  80. gcore/resources/cloud/networks/subnets.py +865 -0
  81. gcore/resources/cloud/placement_groups.py +465 -0
  82. gcore/resources/cloud/projects.py +608 -0
  83. gcore/resources/cloud/quotas/__init__.py +33 -0
  84. gcore/resources/cloud/quotas/quotas.py +335 -0
  85. gcore/resources/cloud/quotas/requests.py +482 -0
  86. gcore/resources/cloud/regions.py +328 -0
  87. gcore/resources/cloud/registries/__init__.py +75 -0
  88. gcore/resources/cloud/registries/artifacts.py +277 -0
  89. gcore/resources/cloud/registries/registries.py +688 -0
  90. gcore/resources/cloud/registries/repositories.py +265 -0
  91. gcore/resources/cloud/registries/tags.py +190 -0
  92. gcore/resources/cloud/registries/users.py +701 -0
  93. gcore/resources/cloud/reserved_fixed_ips/__init__.py +33 -0
  94. gcore/resources/cloud/reserved_fixed_ips/reserved_fixed_ips.py +965 -0
  95. gcore/resources/cloud/reserved_fixed_ips/vip.py +577 -0
  96. gcore/resources/cloud/secrets.py +797 -0
  97. gcore/resources/cloud/security_groups/__init__.py +33 -0
  98. gcore/resources/cloud/security_groups/rules.py +626 -0
  99. gcore/resources/cloud/security_groups/security_groups.py +863 -0
  100. gcore/resources/cloud/ssh_keys.py +635 -0
  101. gcore/resources/cloud/tasks.py +700 -0
  102. gcore/resources/cloud/users/__init__.py +33 -0
  103. gcore/resources/cloud/users/role_assignments.py +533 -0
  104. gcore/resources/cloud/users/users.py +102 -0
  105. gcore/resources/cloud/volumes.py +1710 -0
  106. gcore/resources/waap/__init__.py +33 -0
  107. gcore/resources/waap/domains/__init__.py +33 -0
  108. gcore/resources/waap/domains/domains.py +515 -0
  109. gcore/resources/waap/domains/settings.py +271 -0
  110. gcore/resources/waap/waap.py +102 -0
  111. gcore/types/__init__.py +3 -0
  112. gcore/types/cloud/__init__.py +199 -0
  113. gcore/types/cloud/allowed_address_pairs.py +15 -0
  114. gcore/types/cloud/aws_iam_data.py +13 -0
  115. gcore/types/cloud/aws_iam_data_param.py +15 -0
  116. gcore/types/cloud/baremetal/__init__.py +13 -0
  117. gcore/types/cloud/baremetal/baremetal_fixed_address.py +30 -0
  118. gcore/types/cloud/baremetal/baremetal_floating_address.py +15 -0
  119. gcore/types/cloud/baremetal/baremetal_server.py +178 -0
  120. gcore/types/cloud/baremetal/flavor_list_params.py +35 -0
  121. gcore/types/cloud/baremetal/flavor_list_suitable_params.py +22 -0
  122. gcore/types/cloud/baremetal/image_list_params.py +33 -0
  123. gcore/types/cloud/baremetal/server_create_params.py +370 -0
  124. gcore/types/cloud/baremetal/server_list_params.py +114 -0
  125. gcore/types/cloud/baremetal/server_rebuild_params.py +23 -0
  126. gcore/types/cloud/baremetal_flavor.py +58 -0
  127. gcore/types/cloud/baremetal_flavor_list.py +16 -0
  128. gcore/types/cloud/billing_reservation.py +153 -0
  129. gcore/types/cloud/billing_reservation_list_params.py +59 -0
  130. gcore/types/cloud/blackhole_port.py +66 -0
  131. gcore/types/cloud/capacity.py +13 -0
  132. gcore/types/cloud/console.py +18 -0
  133. gcore/types/cloud/container_probe.py +36 -0
  134. gcore/types/cloud/container_probe_config.py +16 -0
  135. gcore/types/cloud/container_probe_config_create_param.py +18 -0
  136. gcore/types/cloud/container_probe_create_param.py +38 -0
  137. gcore/types/cloud/container_probe_exec.py +12 -0
  138. gcore/types/cloud/container_probe_exec_create_param.py +13 -0
  139. gcore/types/cloud/container_probe_http_get.py +26 -0
  140. gcore/types/cloud/container_probe_http_get_create_param.py +25 -0
  141. gcore/types/cloud/container_probe_tcp_socket.py +10 -0
  142. gcore/types/cloud/container_probe_tcp_socket_create_param.py +12 -0
  143. gcore/types/cloud/container_scale.py +25 -0
  144. gcore/types/cloud/container_scale_trigger_rate.py +13 -0
  145. gcore/types/cloud/container_scale_trigger_sqs.py +33 -0
  146. gcore/types/cloud/container_scale_trigger_threshold.py +10 -0
  147. gcore/types/cloud/container_scale_triggers.py +36 -0
  148. gcore/types/cloud/ddos_profile.py +33 -0
  149. gcore/types/cloud/ddos_profile_field.py +31 -0
  150. gcore/types/cloud/ddos_profile_option_list.py +15 -0
  151. gcore/types/cloud/ddos_profile_status.py +13 -0
  152. gcore/types/cloud/ddos_profile_template.py +18 -0
  153. gcore/types/cloud/ddos_profile_template_field.py +23 -0
  154. gcore/types/cloud/deploy_status.py +13 -0
  155. gcore/types/cloud/file_share.py +111 -0
  156. gcore/types/cloud/file_share_create_params.py +104 -0
  157. gcore/types/cloud/file_share_list_params.py +24 -0
  158. gcore/types/cloud/file_share_resize_params.py +18 -0
  159. gcore/types/cloud/file_share_update_params.py +18 -0
  160. gcore/types/cloud/file_shares/__init__.py +7 -0
  161. gcore/types/cloud/file_shares/access_rule.py +21 -0
  162. gcore/types/cloud/file_shares/access_rule_create_params.py +21 -0
  163. gcore/types/cloud/file_shares/access_rule_list.py +16 -0
  164. gcore/types/cloud/fixed_address.py +38 -0
  165. gcore/types/cloud/fixed_address_short.py +24 -0
  166. gcore/types/cloud/flavor_hardware_description.py +27 -0
  167. gcore/types/cloud/floating_address.py +15 -0
  168. gcore/types/cloud/floating_ip.py +77 -0
  169. gcore/types/cloud/floating_ip_assign_params.py +20 -0
  170. gcore/types/cloud/floating_ip_create_params.py +40 -0
  171. gcore/types/cloud/floating_ip_detailed.py +222 -0
  172. gcore/types/cloud/floating_ip_list_params.py +35 -0
  173. gcore/types/cloud/floating_ip_status.py +7 -0
  174. gcore/types/cloud/gpu_baremetal_cluster.py +116 -0
  175. gcore/types/cloud/gpu_baremetal_cluster_create_params.py +155 -0
  176. gcore/types/cloud/gpu_baremetal_cluster_delete_params.py +28 -0
  177. gcore/types/cloud/gpu_baremetal_cluster_list_params.py +19 -0
  178. gcore/types/cloud/gpu_baremetal_cluster_rebuild_params.py +26 -0
  179. gcore/types/cloud/gpu_baremetal_cluster_resize_params.py +16 -0
  180. gcore/types/cloud/gpu_baremetal_cluster_server.py +200 -0
  181. gcore/types/cloud/gpu_baremetal_cluster_server_list.py +16 -0
  182. gcore/types/cloud/gpu_baremetal_clusters/__init__.py +9 -0
  183. gcore/types/cloud/gpu_baremetal_clusters/flavor_list_params.py +21 -0
  184. gcore/types/cloud/gpu_baremetal_clusters/image_upload_params.py +58 -0
  185. gcore/types/cloud/gpu_baremetal_clusters/server_attach_interface_params.py +253 -0
  186. gcore/types/cloud/gpu_baremetal_clusters/server_delete_params.py +21 -0
  187. gcore/types/cloud/gpu_baremetal_clusters/server_detach_interface_params.py +19 -0
  188. gcore/types/cloud/gpu_baremetal_flavor.py +133 -0
  189. gcore/types/cloud/gpu_baremetal_flavor_list.py +16 -0
  190. gcore/types/cloud/gpu_image.py +70 -0
  191. gcore/types/cloud/gpu_image_list.py +16 -0
  192. gcore/types/cloud/health_monitor.py +48 -0
  193. gcore/types/cloud/health_monitor_status.py +22 -0
  194. gcore/types/cloud/http_method.py +7 -0
  195. gcore/types/cloud/image.py +100 -0
  196. gcore/types/cloud/image_list.py +16 -0
  197. gcore/types/cloud/inference/__init__.py +25 -0
  198. gcore/types/cloud/inference/container.py +26 -0
  199. gcore/types/cloud/inference/deployment_create_params.py +222 -0
  200. gcore/types/cloud/inference/deployment_list_params.py +21 -0
  201. gcore/types/cloud/inference/deployment_update_params.py +215 -0
  202. gcore/types/cloud/inference/deployments/__init__.py +5 -0
  203. gcore/types/cloud/inference/deployments/log_list_params.py +28 -0
  204. gcore/types/cloud/inference/flavor_list_params.py +18 -0
  205. gcore/types/cloud/inference/inference.py +95 -0
  206. gcore/types/cloud/inference/inference_apikey_secret.py +15 -0
  207. gcore/types/cloud/inference/inference_flavor.py +34 -0
  208. gcore/types/cloud/inference/inference_log.py +21 -0
  209. gcore/types/cloud/inference/inference_registry_credential.py +19 -0
  210. gcore/types/cloud/inference/inference_registry_credential_full.py +22 -0
  211. gcore/types/cloud/inference/inference_secret.py +17 -0
  212. gcore/types/cloud/inference/mlcatalog_model_card.py +65 -0
  213. gcore/types/cloud/inference/mlcatalog_order_by_choices.py +7 -0
  214. gcore/types/cloud/inference/model_list_params.py +23 -0
  215. gcore/types/cloud/inference/registry_credential_create_params.py +24 -0
  216. gcore/types/cloud/inference/registry_credential_list_params.py +21 -0
  217. gcore/types/cloud/inference/registry_credential_replace_params.py +21 -0
  218. gcore/types/cloud/inference/secret_create_params.py +23 -0
  219. gcore/types/cloud/inference/secret_list_params.py +21 -0
  220. gcore/types/cloud/inference/secret_replace_params.py +20 -0
  221. gcore/types/cloud/inference_probes.py +19 -0
  222. gcore/types/cloud/ingress_opts_out.py +16 -0
  223. gcore/types/cloud/ingress_opts_param.py +18 -0
  224. gcore/types/cloud/instance.py +296 -0
  225. gcore/types/cloud/instance_action_params.py +32 -0
  226. gcore/types/cloud/instance_add_to_placement_group_params.py +16 -0
  227. gcore/types/cloud/instance_assign_security_group_params.py +28 -0
  228. gcore/types/cloud/instance_create_params.py +622 -0
  229. gcore/types/cloud/instance_delete_params.py +33 -0
  230. gcore/types/cloud/instance_get_console_params.py +16 -0
  231. gcore/types/cloud/instance_interface.py +40 -0
  232. gcore/types/cloud/instance_isolation.py +12 -0
  233. gcore/types/cloud/instance_list.py +16 -0
  234. gcore/types/cloud/instance_list_params.py +146 -0
  235. gcore/types/cloud/instance_metrics_time_unit.py +7 -0
  236. gcore/types/cloud/instance_resize_params.py +16 -0
  237. gcore/types/cloud/instance_unassign_security_group_params.py +28 -0
  238. gcore/types/cloud/instance_update_params.py +18 -0
  239. gcore/types/cloud/instances/__init__.py +19 -0
  240. gcore/types/cloud/instances/flavor_list_for_resize_params.py +16 -0
  241. gcore/types/cloud/instances/flavor_list_params.py +25 -0
  242. gcore/types/cloud/instances/flavor_list_suitable_params.py +56 -0
  243. gcore/types/cloud/instances/image_create_from_volume_params.py +53 -0
  244. gcore/types/cloud/instances/image_get_params.py +16 -0
  245. gcore/types/cloud/instances/image_list_params.py +33 -0
  246. gcore/types/cloud/instances/image_update_params.py +43 -0
  247. gcore/types/cloud/instances/image_upload_params.py +62 -0
  248. gcore/types/cloud/instances/instance_flavor.py +49 -0
  249. gcore/types/cloud/instances/instance_flavor_list.py +16 -0
  250. gcore/types/cloud/instances/interface_attach_params.py +253 -0
  251. gcore/types/cloud/instances/interface_detach_params.py +19 -0
  252. gcore/types/cloud/instances/metric_list_params.py +23 -0
  253. gcore/types/cloud/instances/metrics.py +52 -0
  254. gcore/types/cloud/instances/metrics_list.py +16 -0
  255. gcore/types/cloud/interface_ip_family.py +7 -0
  256. gcore/types/cloud/ip_assignment.py +13 -0
  257. gcore/types/cloud/ip_ranges.py +12 -0
  258. gcore/types/cloud/ip_version.py +7 -0
  259. gcore/types/cloud/laas_index_retention_policy.py +12 -0
  260. gcore/types/cloud/laas_index_retention_policy_param.py +13 -0
  261. gcore/types/cloud/lb_algorithm.py +7 -0
  262. gcore/types/cloud/lb_health_monitor_type.py +7 -0
  263. gcore/types/cloud/lb_listener_protocol.py +7 -0
  264. gcore/types/cloud/lb_pool_protocol.py +7 -0
  265. gcore/types/cloud/lb_session_persistence_type.py +7 -0
  266. gcore/types/cloud/listener_status.py +27 -0
  267. gcore/types/cloud/load_balancer.py +144 -0
  268. gcore/types/cloud/load_balancer_create_params.py +327 -0
  269. gcore/types/cloud/load_balancer_failover_params.py +16 -0
  270. gcore/types/cloud/load_balancer_flavor_detail.py +40 -0
  271. gcore/types/cloud/load_balancer_flavor_list.py +16 -0
  272. gcore/types/cloud/load_balancer_get_params.py +19 -0
  273. gcore/types/cloud/load_balancer_instance_role.py +7 -0
  274. gcore/types/cloud/load_balancer_l7_policy.py +86 -0
  275. gcore/types/cloud/load_balancer_l7_policy_list.py +16 -0
  276. gcore/types/cloud/load_balancer_l7_rule.py +72 -0
  277. gcore/types/cloud/load_balancer_l7_rule_list.py +16 -0
  278. gcore/types/cloud/load_balancer_list_params.py +53 -0
  279. gcore/types/cloud/load_balancer_listener_detail.py +97 -0
  280. gcore/types/cloud/load_balancer_listener_list.py +16 -0
  281. gcore/types/cloud/load_balancer_member_connectivity.py +7 -0
  282. gcore/types/cloud/load_balancer_metrics.py +32 -0
  283. gcore/types/cloud/load_balancer_metrics_list.py +16 -0
  284. gcore/types/cloud/load_balancer_operating_status.py +7 -0
  285. gcore/types/cloud/load_balancer_pool.py +87 -0
  286. gcore/types/cloud/load_balancer_pool_list.py +16 -0
  287. gcore/types/cloud/load_balancer_resize_params.py +16 -0
  288. gcore/types/cloud/load_balancer_statistics.py +22 -0
  289. gcore/types/cloud/load_balancer_status.py +38 -0
  290. gcore/types/cloud/load_balancer_status_list.py +16 -0
  291. gcore/types/cloud/load_balancer_update_params.py +43 -0
  292. gcore/types/cloud/load_balancers/__init__.py +15 -0
  293. gcore/types/cloud/load_balancers/flavor_list_params.py +16 -0
  294. gcore/types/cloud/load_balancers/l7_policies/__init__.py +6 -0
  295. gcore/types/cloud/load_balancers/l7_policies/rule_create_params.py +50 -0
  296. gcore/types/cloud/load_balancers/l7_policies/rule_replace_params.py +43 -0
  297. gcore/types/cloud/load_balancers/l7_policy_create_params.py +54 -0
  298. gcore/types/cloud/load_balancers/l7_policy_replace_params.py +51 -0
  299. gcore/types/cloud/load_balancers/listener_create_params.py +72 -0
  300. gcore/types/cloud/load_balancers/listener_get_params.py +16 -0
  301. gcore/types/cloud/load_balancers/listener_list_params.py +19 -0
  302. gcore/types/cloud/load_balancers/listener_update_params.py +55 -0
  303. gcore/types/cloud/load_balancers/metric_list_params.py +21 -0
  304. gcore/types/cloud/load_balancers/pool_create_params.py +141 -0
  305. gcore/types/cloud/load_balancers/pool_list_params.py +25 -0
  306. gcore/types/cloud/load_balancers/pool_update_params.py +139 -0
  307. gcore/types/cloud/load_balancers/pools/__init__.py +6 -0
  308. gcore/types/cloud/load_balancers/pools/health_monitor_create_params.py +49 -0
  309. gcore/types/cloud/load_balancers/pools/member_add_params.py +44 -0
  310. gcore/types/cloud/logging.py +22 -0
  311. gcore/types/cloud/member.py +47 -0
  312. gcore/types/cloud/member_status.py +24 -0
  313. gcore/types/cloud/network.py +79 -0
  314. gcore/types/cloud/network_create_params.py +36 -0
  315. gcore/types/cloud/network_details.py +80 -0
  316. gcore/types/cloud/network_interface.py +78 -0
  317. gcore/types/cloud/network_interface_list.py +16 -0
  318. gcore/types/cloud/network_list_params.py +41 -0
  319. gcore/types/cloud/network_update_params.py +18 -0
  320. gcore/types/cloud/networks/__init__.py +14 -0
  321. gcore/types/cloud/networks/router.py +83 -0
  322. gcore/types/cloud/networks/router_attach_subnet_params.py +24 -0
  323. gcore/types/cloud/networks/router_create_params.py +75 -0
  324. gcore/types/cloud/networks/router_detach_subnet_params.py +16 -0
  325. gcore/types/cloud/networks/router_list.py +16 -0
  326. gcore/types/cloud/networks/router_list_params.py +19 -0
  327. gcore/types/cloud/networks/router_update_params.py +45 -0
  328. gcore/types/cloud/networks/subnet_create_params.py +82 -0
  329. gcore/types/cloud/networks/subnet_list_params.py +58 -0
  330. gcore/types/cloud/networks/subnet_update_params.py +47 -0
  331. gcore/types/cloud/placement_group.py +41 -0
  332. gcore/types/cloud/placement_group_create_params.py +19 -0
  333. gcore/types/cloud/placement_group_list.py +16 -0
  334. gcore/types/cloud/pool_status.py +31 -0
  335. gcore/types/cloud/project.py +47 -0
  336. gcore/types/cloud/project_create_params.py +22 -0
  337. gcore/types/cloud/project_list_params.py +27 -0
  338. gcore/types/cloud/project_replace_params.py +18 -0
  339. gcore/types/cloud/provisioning_status.py +9 -0
  340. gcore/types/cloud/quota_get_all_response.py +340 -0
  341. gcore/types/cloud/quota_get_by_region_response.py +288 -0
  342. gcore/types/cloud/quota_get_global_response.py +51 -0
  343. gcore/types/cloud/quotas/__init__.py +8 -0
  344. gcore/types/cloud/quotas/request_create_params.py +193 -0
  345. gcore/types/cloud/quotas/request_get_response.py +205 -0
  346. gcore/types/cloud/quotas/request_list_params.py +22 -0
  347. gcore/types/cloud/quotas/request_list_response.py +205 -0
  348. gcore/types/cloud/region.py +101 -0
  349. gcore/types/cloud/region_capacity.py +16 -0
  350. gcore/types/cloud/region_capacity_list.py +16 -0
  351. gcore/types/cloud/region_get_params.py +18 -0
  352. gcore/types/cloud/region_list_params.py +31 -0
  353. gcore/types/cloud/registries/__init__.py +14 -0
  354. gcore/types/cloud/registries/registry_artifact.py +35 -0
  355. gcore/types/cloud/registries/registry_artifact_list.py +16 -0
  356. gcore/types/cloud/registries/registry_repository.py +30 -0
  357. gcore/types/cloud/registries/registry_repository_list.py +16 -0
  358. gcore/types/cloud/registries/registry_user.py +28 -0
  359. gcore/types/cloud/registries/registry_user_created.py +31 -0
  360. gcore/types/cloud/registries/registry_user_list.py +16 -0
  361. gcore/types/cloud/registries/user_create_multiple_params.py +36 -0
  362. gcore/types/cloud/registries/user_create_params.py +30 -0
  363. gcore/types/cloud/registries/user_update_params.py +21 -0
  364. gcore/types/cloud/registry.py +33 -0
  365. gcore/types/cloud/registry_create_params.py +24 -0
  366. gcore/types/cloud/registry_list.py +16 -0
  367. gcore/types/cloud/registry_resize_params.py +16 -0
  368. gcore/types/cloud/registry_tag.py +27 -0
  369. gcore/types/cloud/reserved_fixed_ip.py +98 -0
  370. gcore/types/cloud/reserved_fixed_ip_create_params.py +107 -0
  371. gcore/types/cloud/reserved_fixed_ip_list_params.py +47 -0
  372. gcore/types/cloud/reserved_fixed_ips/__init__.py +12 -0
  373. gcore/types/cloud/reserved_fixed_ips/candidate_port.py +26 -0
  374. gcore/types/cloud/reserved_fixed_ips/candidate_port_list.py +16 -0
  375. gcore/types/cloud/reserved_fixed_ips/connected_port.py +26 -0
  376. gcore/types/cloud/reserved_fixed_ips/connected_port_list.py +16 -0
  377. gcore/types/cloud/reserved_fixed_ips/ip_with_subnet.py +17 -0
  378. gcore/types/cloud/reserved_fixed_ips/vip_replace_connected_ports_params.py +17 -0
  379. gcore/types/cloud/reserved_fixed_ips/vip_toggle_params.py +16 -0
  380. gcore/types/cloud/reserved_fixed_ips/vip_update_connected_ports_params.py +17 -0
  381. gcore/types/cloud/route.py +16 -0
  382. gcore/types/cloud/secret.py +64 -0
  383. gcore/types/cloud/secret_create_params.py +66 -0
  384. gcore/types/cloud/secret_list_response.py +16 -0
  385. gcore/types/cloud/secret_upload_tls_certificate_params.py +39 -0
  386. gcore/types/cloud/security_group.py +45 -0
  387. gcore/types/cloud/security_group_copy_params.py +16 -0
  388. gcore/types/cloud/security_group_create_params.py +94 -0
  389. gcore/types/cloud/security_group_list_params.py +30 -0
  390. gcore/types/cloud/security_group_rule.py +83 -0
  391. gcore/types/cloud/security_group_update_params.py +83 -0
  392. gcore/types/cloud/security_groups/__init__.py +6 -0
  393. gcore/types/cloud/security_groups/rule_create_params.py +65 -0
  394. gcore/types/cloud/security_groups/rule_replace_params.py +72 -0
  395. gcore/types/cloud/session_persistence.py +22 -0
  396. gcore/types/cloud/ssh_key.py +39 -0
  397. gcore/types/cloud/ssh_key_create_params.py +31 -0
  398. gcore/types/cloud/ssh_key_created.py +53 -0
  399. gcore/types/cloud/ssh_key_list_params.py +21 -0
  400. gcore/types/cloud/ssh_key_update_params.py +15 -0
  401. gcore/types/cloud/subnet.py +87 -0
  402. gcore/types/cloud/tag.py +16 -0
  403. gcore/types/cloud/tag_update_map_param.py +10 -0
  404. gcore/types/cloud/task.py +191 -0
  405. gcore/types/cloud/task_acknowledge_all_params.py +16 -0
  406. gcore/types/cloud/task_id_list.py +12 -0
  407. gcore/types/cloud/task_list_params.py +104 -0
  408. gcore/types/cloud/users/__init__.py +9 -0
  409. gcore/types/cloud/users/role_assignment.py +33 -0
  410. gcore/types/cloud/users/role_assignment_create_params.py +22 -0
  411. gcore/types/cloud/users/role_assignment_list_params.py +25 -0
  412. gcore/types/cloud/users/role_assignment_update_delete.py +10 -0
  413. gcore/types/cloud/users/role_assignment_update_params.py +22 -0
  414. gcore/types/cloud/volume.py +141 -0
  415. gcore/types/cloud/volume_attach_to_instance_params.py +21 -0
  416. gcore/types/cloud/volume_change_type_params.py +18 -0
  417. gcore/types/cloud/volume_create_params.py +176 -0
  418. gcore/types/cloud/volume_delete_params.py +18 -0
  419. gcore/types/cloud/volume_detach_from_instance_params.py +18 -0
  420. gcore/types/cloud/volume_list_params.py +56 -0
  421. gcore/types/cloud/volume_resize_params.py +18 -0
  422. gcore/types/cloud/volume_update_params.py +18 -0
  423. gcore/types/waap/__init__.py +12 -0
  424. gcore/types/waap/domain_list_params.py +30 -0
  425. gcore/types/waap/domain_update_params.py +12 -0
  426. gcore/types/waap/domains/__init__.py +5 -0
  427. gcore/types/waap/domains/setting_update_params.py +41 -0
  428. gcore/types/waap/waap_api_urls.py +15 -0
  429. gcore/types/waap/waap_detailed_domain.py +37 -0
  430. gcore/types/waap/waap_domain_ddos_settings.py +31 -0
  431. gcore/types/waap/waap_domain_settings.py +15 -0
  432. gcore/types/waap/waap_domain_status.py +7 -0
  433. gcore/types/waap/waap_summary_domain.py +26 -0
  434. gcore-0.1.0.dist-info/METADATA +482 -0
  435. gcore-0.1.0.dist-info/RECORD +437 -0
  436. gcore-0.1.0.dist-info/WHEEL +4 -0
  437. gcore-0.1.0.dist-info/licenses/LICENSE +201 -0
@@ -0,0 +1,155 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Union, Iterable, Optional
6
+ from typing_extensions import Literal, Required, TypeAlias, TypedDict
7
+
8
+ from .interface_ip_family import InterfaceIPFamily
9
+ from .tag_update_map_param import TagUpdateMapParam
10
+
11
+ __all__ = [
12
+ "GPUBaremetalClusterCreateParams",
13
+ "Interface",
14
+ "InterfaceCreateGPUClusterExternalInterfaceSerializer",
15
+ "InterfaceCreateGPUClusterSubnetInterfaceSerializer",
16
+ "InterfaceCreateGPUClusterSubnetInterfaceSerializerFloatingIP",
17
+ "InterfaceCreateGPUClusterAnySubnetInterfaceSerializer",
18
+ "InterfaceCreateGPUClusterAnySubnetInterfaceSerializerFloatingIP",
19
+ ]
20
+
21
+
22
+ class GPUBaremetalClusterCreateParams(TypedDict, total=False):
23
+ project_id: int
24
+
25
+ region_id: int
26
+
27
+ flavor: Required[str]
28
+ """Flavor name"""
29
+
30
+ image_id: Required[str]
31
+ """Image ID"""
32
+
33
+ interfaces: Required[Iterable[Interface]]
34
+ """A list of network interfaces for the server.
35
+
36
+ You can create one or more interfaces - private, public, or both.
37
+ """
38
+
39
+ name: Required[str]
40
+ """GPU Cluster name"""
41
+
42
+ instances_count: int
43
+ """Number of servers to create"""
44
+
45
+ password: str
46
+ """A password for a bare metal server.
47
+
48
+ This parameter is used to set a password for the "Admin" user on a Windows
49
+ instance, a default user or a new user on a Linux instance
50
+ """
51
+
52
+ ssh_key_name: str
53
+ """
54
+ Specifies the name of the SSH keypair, created via the
55
+ <a href="#operation/SSHKeyCollectionViewSet.post">/v1/ssh_keys endpoint</a>.
56
+ """
57
+
58
+ tags: TagUpdateMapParam
59
+ """Key-value tags to associate with the resource.
60
+
61
+ A tag is a key-value pair that can be associated with a resource, enabling
62
+ efficient filtering and grouping for better organization and management. Some
63
+ tags are read-only and cannot be modified by the user. Tags are also integrated
64
+ with cost reports, allowing cost data to be filtered based on tag keys or
65
+ values.
66
+ """
67
+
68
+ user_data: str
69
+ """String in base64 format.
70
+
71
+ Must not be passed together with 'username' or 'password'. Examples of the
72
+ user_data: https://cloudinit.readthedocs.io/en/latest/topics/examples.html
73
+ """
74
+
75
+ username: str
76
+ """A name of a new user in the Linux instance.
77
+
78
+ It may be passed with a 'password' parameter
79
+ """
80
+
81
+
82
+ class InterfaceCreateGPUClusterExternalInterfaceSerializer(TypedDict, total=False):
83
+ type: Required[Literal["external"]]
84
+ """A public IP address will be assigned to the server."""
85
+
86
+ interface_name: str
87
+ """Interface name.
88
+
89
+ Defaults to `null` and is returned as `null` in the API response if not set.
90
+ """
91
+
92
+ ip_family: Optional[InterfaceIPFamily]
93
+ """Specify `ipv4`, `ipv6`, or `dual` to enable both."""
94
+
95
+
96
+ class InterfaceCreateGPUClusterSubnetInterfaceSerializerFloatingIP(TypedDict, total=False):
97
+ source: Required[Literal["new"]]
98
+
99
+
100
+ class InterfaceCreateGPUClusterSubnetInterfaceSerializer(TypedDict, total=False):
101
+ network_id: Required[str]
102
+ """The network where the server will be connected."""
103
+
104
+ subnet_id: Required[str]
105
+ """The server will get an IP address from this subnet."""
106
+
107
+ type: Required[Literal["subnet"]]
108
+ """The instance will get an IP address from the selected network.
109
+
110
+ If you choose to add a floating IP, the instance will be reachable from the
111
+ internet. Otherwise, it will only have a private IP within the network.
112
+ """
113
+
114
+ floating_ip: InterfaceCreateGPUClusterSubnetInterfaceSerializerFloatingIP
115
+ """Floating IP config for this subnet attachment"""
116
+
117
+ interface_name: str
118
+ """Interface name.
119
+
120
+ Defaults to `null` and is returned as `null` in the API response if not set.
121
+ """
122
+
123
+
124
+ class InterfaceCreateGPUClusterAnySubnetInterfaceSerializerFloatingIP(TypedDict, total=False):
125
+ source: Required[Literal["new"]]
126
+
127
+
128
+ class InterfaceCreateGPUClusterAnySubnetInterfaceSerializer(TypedDict, total=False):
129
+ network_id: Required[str]
130
+ """The network where the server will be connected."""
131
+
132
+ type: Required[Literal["any_subnet"]]
133
+ """Server will be attached to a subnet with the largest count of free IPs."""
134
+
135
+ floating_ip: InterfaceCreateGPUClusterAnySubnetInterfaceSerializerFloatingIP
136
+ """Allows the server to have a public IP that can be reached from the internet."""
137
+
138
+ interface_name: str
139
+ """Interface name.
140
+
141
+ Defaults to `null` and is returned as `null` in the API response if not set.
142
+ """
143
+
144
+ ip_address: str
145
+ """You can specify a specific IP address from your subnet."""
146
+
147
+ ip_family: InterfaceIPFamily
148
+ """Specify `ipv4`, `ipv6`, or `dual` to enable both."""
149
+
150
+
151
+ Interface: TypeAlias = Union[
152
+ InterfaceCreateGPUClusterExternalInterfaceSerializer,
153
+ InterfaceCreateGPUClusterSubnetInterfaceSerializer,
154
+ InterfaceCreateGPUClusterAnySubnetInterfaceSerializer,
155
+ ]
@@ -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_extensions import TypedDict
6
+
7
+ __all__ = ["GPUBaremetalClusterDeleteParams"]
8
+
9
+
10
+ class GPUBaremetalClusterDeleteParams(TypedDict, total=False):
11
+ project_id: int
12
+
13
+ region_id: int
14
+
15
+ delete_floatings: bool
16
+ """True if it is required to delete floating IPs assigned to the servers.
17
+
18
+ Can't be used with floatings.
19
+ """
20
+
21
+ floatings: str
22
+ """Comma separated list of floating ids that should be deleted.
23
+
24
+ Can't be used with delete_floatings.
25
+ """
26
+
27
+ reserved_fixed_ips: str
28
+ """Comma separated list of port IDs to be deleted with the servers"""
@@ -0,0 +1,19 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing_extensions import TypedDict
6
+
7
+ __all__ = ["GPUBaremetalClusterListParams"]
8
+
9
+
10
+ class GPUBaremetalClusterListParams(TypedDict, total=False):
11
+ project_id: int
12
+
13
+ region_id: int
14
+
15
+ limit: int
16
+ """Limit the number of returned clusters"""
17
+
18
+ offset: int
19
+ """Offset value is used to exclude the first set of records from the result"""
@@ -0,0 +1,26 @@
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, Optional
6
+ from typing_extensions import Required, TypedDict
7
+
8
+ __all__ = ["GPUBaremetalClusterRebuildParams"]
9
+
10
+
11
+ class GPUBaremetalClusterRebuildParams(TypedDict, total=False):
12
+ project_id: int
13
+
14
+ region_id: int
15
+
16
+ nodes: Required[List[str]]
17
+ """List of nodes uuids to be rebuild"""
18
+
19
+ image_id: Optional[str]
20
+ """AI GPU image ID"""
21
+
22
+ user_data: Optional[str]
23
+ """
24
+ String in base64 format.Examples of the user_data:
25
+ https://cloudinit.readthedocs.io/en/latest/topics/examples.html
26
+ """
@@ -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__ = ["GPUBaremetalClusterResizeParams"]
8
+
9
+
10
+ class GPUBaremetalClusterResizeParams(TypedDict, total=False):
11
+ project_id: int
12
+
13
+ region_id: int
14
+
15
+ instances_count: Required[int]
16
+ """Resized (total) number of instances"""
@@ -0,0 +1,200 @@
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
+ "GPUBaremetalClusterServer",
18
+ "Address",
19
+ "FixedIPAssignment",
20
+ "Flavor",
21
+ "FlavorHardwareDescription",
22
+ "SecurityGroup",
23
+ ]
24
+
25
+ Address: TypeAlias = Union[FloatingAddress, FixedAddressShort, FixedAddress]
26
+
27
+
28
+ class FixedIPAssignment(BaseModel):
29
+ external: bool
30
+ """Is network external"""
31
+
32
+ ip_address: str
33
+ """Ip address"""
34
+
35
+ subnet_id: str
36
+ """Interface subnet id"""
37
+
38
+
39
+ class FlavorHardwareDescription(BaseModel):
40
+ cpu: str
41
+ """Human-readable CPU description"""
42
+
43
+ disk: str
44
+ """Human-readable disk description"""
45
+
46
+ gpu: str
47
+ """Human-readable GPU description"""
48
+
49
+ license: str
50
+ """If the flavor is licensed, this field contains the license type"""
51
+
52
+ network: str
53
+ """Human-readable NIC description"""
54
+
55
+ ram: str
56
+ """Human-readable RAM description"""
57
+
58
+
59
+ class Flavor(BaseModel):
60
+ architecture: str
61
+ """CPU architecture"""
62
+
63
+ flavor_id: str
64
+ """Flavor ID is the same as name"""
65
+
66
+ flavor_name: str
67
+ """Flavor name"""
68
+
69
+ hardware_description: FlavorHardwareDescription
70
+ """Additional hardware description"""
71
+
72
+ os_type: str
73
+ """Operating system"""
74
+
75
+ ram: int
76
+ """RAM size in MiB"""
77
+
78
+ resource_class: str
79
+ """Flavor resource class for mapping to hardware capacity"""
80
+
81
+ vcpus: int
82
+ """Virtual CPU count. For bare metal flavors, it's a physical CPU count"""
83
+
84
+
85
+ class SecurityGroup(BaseModel):
86
+ name: str
87
+ """Name."""
88
+
89
+
90
+ class GPUBaremetalClusterServer(BaseModel):
91
+ id: str
92
+ """GPU server ID"""
93
+
94
+ addresses: Dict[str, List[Address]]
95
+ """Map of network_name to list of addresses in that network"""
96
+
97
+ blackhole_ports: List[BlackholePort]
98
+ """IP addresses of the instances that are blackholed by DDoS mitigation system"""
99
+
100
+ created_at: datetime
101
+ """Datetime when GPU server was created"""
102
+
103
+ creator_task_id: Optional[str] = None
104
+ """Task that created this entity"""
105
+
106
+ ddos_profile: Optional[DDOSProfile] = None
107
+ """Advanced DDoS protection profile.
108
+
109
+ It is always `null` if query parameter `with_ddos=true` is not set.
110
+ """
111
+
112
+ fixed_ip_assignments: Optional[List[FixedIPAssignment]] = None
113
+ """Fixed IP assigned to instance"""
114
+
115
+ flavor: Flavor
116
+ """Flavor"""
117
+
118
+ instance_description: Optional[str] = None
119
+ """Instance description"""
120
+
121
+ instance_isolation: Optional[InstanceIsolation] = None
122
+ """Instance isolation information"""
123
+
124
+ name: str
125
+ """GPU server name"""
126
+
127
+ project_id: int
128
+ """Project ID"""
129
+
130
+ region: str
131
+ """Region name"""
132
+
133
+ region_id: int
134
+ """Region ID"""
135
+
136
+ security_groups: List[SecurityGroup]
137
+ """Security groups"""
138
+
139
+ ssh_key_name: Optional[str] = None
140
+ """SSH key name assigned to instance"""
141
+
142
+ status: Literal[
143
+ "ACTIVE",
144
+ "BUILD",
145
+ "DELETED",
146
+ "ERROR",
147
+ "HARD_REBOOT",
148
+ "MIGRATING",
149
+ "PASSWORD",
150
+ "PAUSED",
151
+ "REBOOT",
152
+ "REBUILD",
153
+ "RESCUE",
154
+ "RESIZE",
155
+ "REVERT_RESIZE",
156
+ "SHELVED",
157
+ "SHELVED_OFFLOADED",
158
+ "SHUTOFF",
159
+ "SOFT_DELETED",
160
+ "SUSPENDED",
161
+ "UNKNOWN",
162
+ "VERIFY_RESIZE",
163
+ ]
164
+ """Instance status"""
165
+
166
+ tags: List[Tag]
167
+ """List of key-value tags associated with the resource.
168
+
169
+ A tag is a key-value pair that can be associated with a resource, enabling
170
+ efficient filtering and grouping for better organization and management. Some
171
+ tags are read-only and cannot be modified by the user. Tags are also integrated
172
+ with cost reports, allowing cost data to be filtered based on tag keys or
173
+ values.
174
+ """
175
+
176
+ task_id: Optional[str] = None
177
+ """The UUID of the active task that currently holds a lock on the resource.
178
+
179
+ This lock prevents concurrent modifications to ensure consistency. If `null`,
180
+ the resource is not locked.
181
+ """
182
+
183
+ task_state: Optional[str] = None
184
+ """Task state"""
185
+
186
+ vm_state: Literal[
187
+ "active",
188
+ "building",
189
+ "deleted",
190
+ "error",
191
+ "paused",
192
+ "rescued",
193
+ "resized",
194
+ "shelved",
195
+ "shelved_offloaded",
196
+ "soft-deleted",
197
+ "stopped",
198
+ "suspended",
199
+ ]
200
+ """Virtual machine state (active)"""
@@ -0,0 +1,16 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import List
4
+
5
+ from ..._models import BaseModel
6
+ from .gpu_baremetal_cluster_server import GPUBaremetalClusterServer
7
+
8
+ __all__ = ["GPUBaremetalClusterServerList"]
9
+
10
+
11
+ class GPUBaremetalClusterServerList(BaseModel):
12
+ count: int
13
+ """Number of objects"""
14
+
15
+ results: List[GPUBaremetalClusterServer]
16
+ """Objects"""
@@ -0,0 +1,9 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from .flavor_list_params import FlavorListParams as FlavorListParams
6
+ from .image_upload_params import ImageUploadParams as ImageUploadParams
7
+ from .server_delete_params import ServerDeleteParams as ServerDeleteParams
8
+ from .server_attach_interface_params import ServerAttachInterfaceParams as ServerAttachInterfaceParams
9
+ from .server_detach_interface_params import ServerDetachInterfaceParams as ServerDetachInterfaceParams
@@ -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__ = ["FlavorListParams"]
8
+
9
+
10
+ class FlavorListParams(TypedDict, total=False):
11
+ project_id: int
12
+ """Project ID"""
13
+
14
+ region_id: int
15
+ """Region ID"""
16
+
17
+ hide_disabled: bool
18
+ """Set to `true` to remove the disabled flavors from the response."""
19
+
20
+ include_prices: bool
21
+ """Set to `true` if the response should include flavor prices."""
@@ -0,0 +1,58 @@
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
+ """Project ID"""
16
+
17
+ region_id: int
18
+ """Region ID"""
19
+
20
+ name: Required[str]
21
+ """Image name"""
22
+
23
+ url: Required[str]
24
+ """Image URL"""
25
+
26
+ architecture: Optional[Literal["aarch64", "x86_64"]]
27
+ """Image architecture type: aarch64, x86_64"""
28
+
29
+ cow_format: bool
30
+ """
31
+ When True, image cannot be deleted unless all volumes, created from it, are
32
+ deleted.
33
+ """
34
+
35
+ hw_firmware_type: Optional[Literal["bios", "uefi"]]
36
+ """Specifies the type of firmware with which to boot the guest."""
37
+
38
+ os_distro: Optional[str]
39
+ """OS Distribution, i.e. Debian, CentOS, Ubuntu, CoreOS etc."""
40
+
41
+ os_type: Optional[Literal["linux", "windows"]]
42
+ """The operating system installed on the image. Linux by default"""
43
+
44
+ os_version: Optional[str]
45
+ """OS version, i.e. 19.04 (for Ubuntu) or 9.4 for Debian"""
46
+
47
+ ssh_key: Literal["allow", "deny", "required"]
48
+ """Permission to use a ssh key in instances"""
49
+
50
+ tags: TagUpdateMapParam
51
+ """Key-value tags to associate with the resource.
52
+
53
+ A tag is a key-value pair that can be associated with a resource, enabling
54
+ efficient filtering and grouping for better organization and management. Some
55
+ tags are read-only and cannot be modified by the user. Tags are also integrated
56
+ with cost reports, allowing cost data to be filtered based on tag keys or
57
+ values.
58
+ """