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,370 @@
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
+ "ServerCreateParams",
13
+ "Interface",
14
+ "InterfaceCreateBareMetalExternalInterfaceSerializer",
15
+ "InterfaceCreateBareMetalSubnetInterfaceSerializer",
16
+ "InterfaceCreateBareMetalSubnetInterfaceSerializerFloatingIP",
17
+ "InterfaceCreateBareMetalSubnetInterfaceSerializerFloatingIPNewInstanceFloatingIPInterfaceSerializer",
18
+ "InterfaceCreateBareMetalSubnetInterfaceSerializerFloatingIPExistingInstanceFloatingIPInterfaceSerializer",
19
+ "InterfaceCreateBareMetalAnySubnetInterfaceSerializer",
20
+ "InterfaceCreateBareMetalAnySubnetInterfaceSerializerFloatingIP",
21
+ "InterfaceCreateBareMetalAnySubnetInterfaceSerializerFloatingIPNewInstanceFloatingIPInterfaceSerializer",
22
+ "InterfaceCreateBareMetalAnySubnetInterfaceSerializerFloatingIPExistingInstanceFloatingIPInterfaceSerializer",
23
+ "InterfaceCreateBareMetalReservedFixedIPInterfaceSerializer",
24
+ "InterfaceCreateBareMetalReservedFixedIPInterfaceSerializerFloatingIP",
25
+ "InterfaceCreateBareMetalReservedFixedIPInterfaceSerializerFloatingIPNewInstanceFloatingIPInterfaceSerializer",
26
+ "InterfaceCreateBareMetalReservedFixedIPInterfaceSerializerFloatingIPExistingInstanceFloatingIPInterfaceSerializer",
27
+ "DDOSProfile",
28
+ "DDOSProfileField",
29
+ ]
30
+
31
+
32
+ class ServerCreateParams(TypedDict, total=False):
33
+ project_id: int
34
+ """Project ID"""
35
+
36
+ region_id: int
37
+ """Region ID"""
38
+
39
+ flavor: Required[str]
40
+ """The flavor of the instance."""
41
+
42
+ interfaces: Required[Iterable[Interface]]
43
+ """A list of network interfaces for the server.
44
+
45
+ You can create one or more interfaces - private, public, or both.
46
+ """
47
+
48
+ app_config: Optional[object]
49
+ """
50
+ Parameters for the application template if creating the instance from an
51
+ `apptemplate`.
52
+ """
53
+
54
+ apptemplate_id: str
55
+ """Apptemplate ID. Either `image_id` or `apptemplate_id` is required."""
56
+
57
+ ddos_profile: DDOSProfile
58
+ """Enable advanced DDoS protection for the server"""
59
+
60
+ image_id: str
61
+ """Image ID. Either `image_id` or `apptemplate_id` is required."""
62
+
63
+ name: str
64
+ """Server name."""
65
+
66
+ name_template: str
67
+ """
68
+ If you want server names to be automatically generated based on IP addresses,
69
+ you can provide a name template instead of specifying the name manually. The
70
+ template should include a placeholder that will be replaced during provisioning.
71
+ Supported placeholders are: `{ip_octets}` (last 3 octets of the IP),
72
+ `{two_ip_octets}`, and `{one_ip_octet}`.
73
+ """
74
+
75
+ password: str
76
+ """For Linux instances, 'username' and 'password' are used to create a new user.
77
+
78
+ When only 'password' is provided, it is set as the password for the default user
79
+ of the image. For Windows instances, 'username' cannot be specified. Use the
80
+ 'password' field to set the password for the 'Admin' user on Windows. Use the
81
+ 'user_data' field to provide a script to create new users on Windows. The
82
+ password of the Admin user cannot be updated via 'user_data'.
83
+ """
84
+
85
+ ssh_key_name: Optional[str]
86
+ """
87
+ Specifies the name of the SSH keypair, created via the
88
+ <a href="#operation/SSHKeyCollectionViewSet.post">/v1/ssh_keys endpoint</a>.
89
+ """
90
+
91
+ tags: TagUpdateMapParam
92
+ """Key-value tags to associate with the resource.
93
+
94
+ A tag is a key-value pair that can be associated with a resource, enabling
95
+ efficient filtering and grouping for better organization and management. Some
96
+ tags are read-only and cannot be modified by the user. Tags are also integrated
97
+ with cost reports, allowing cost data to be filtered based on tag keys or
98
+ values.
99
+ """
100
+
101
+ user_data: str
102
+ """String in base64 format.
103
+
104
+ For Linux instances, 'user_data' is ignored when 'password' field is provided.
105
+ For Windows instances, Admin user password is set by 'password' field and cannot
106
+ be updated via 'user_data'. Examples of the user_data:
107
+ https://cloudinit.readthedocs.io/en/latest/topics/examples.html
108
+ """
109
+
110
+ username: str
111
+ """For Linux instances, 'username' and 'password' are used to create a new user.
112
+
113
+ For Windows instances, 'username' cannot be specified. Use 'password' field to
114
+ set the password for the 'Admin' user on Windows.
115
+ """
116
+
117
+
118
+ class InterfaceCreateBareMetalExternalInterfaceSerializer(TypedDict, total=False):
119
+ type: Required[Literal["external"]]
120
+ """A public IP address will be assigned to the instance."""
121
+
122
+ interface_name: str
123
+ """Interface name.
124
+
125
+ Defaults to `null` and is returned as `null` in the API response if not set.
126
+ """
127
+
128
+ ip_family: Optional[InterfaceIPFamily]
129
+ """Specify `ipv4`, `ipv6`, or `dual` to enable both."""
130
+
131
+ port_group: int
132
+ """Specifies the trunk group to which this interface belongs.
133
+
134
+ Applicable only for bare metal servers. Each unique port group is mapped to a
135
+ separate trunk port. Use this to control how interfaces are grouped across
136
+ trunks.
137
+ """
138
+
139
+
140
+ class InterfaceCreateBareMetalSubnetInterfaceSerializerFloatingIPNewInstanceFloatingIPInterfaceSerializer(
141
+ TypedDict, total=False
142
+ ):
143
+ source: Required[Literal["new"]]
144
+ """A new floating IP will be created and attached to the instance.
145
+
146
+ A floating IP is a public IP that makes the instance accessible from the
147
+ internet, even if it only has a private IP. It works like SNAT, allowing
148
+ outgoing and incoming traffic.
149
+ """
150
+
151
+
152
+ class InterfaceCreateBareMetalSubnetInterfaceSerializerFloatingIPExistingInstanceFloatingIPInterfaceSerializer(
153
+ TypedDict, total=False
154
+ ):
155
+ existing_floating_id: Required[str]
156
+ """
157
+ An existing available floating IP id must be specified if the source is set to
158
+ `existing`
159
+ """
160
+
161
+ source: Required[Literal["existing"]]
162
+ """An existing available floating IP will be attached to the instance.
163
+
164
+ A floating IP is a public IP that makes the instance accessible from the
165
+ internet, even if it only has a private IP. It works like SNAT, allowing
166
+ outgoing and incoming traffic.
167
+ """
168
+
169
+
170
+ InterfaceCreateBareMetalSubnetInterfaceSerializerFloatingIP: TypeAlias = Union[
171
+ InterfaceCreateBareMetalSubnetInterfaceSerializerFloatingIPNewInstanceFloatingIPInterfaceSerializer,
172
+ InterfaceCreateBareMetalSubnetInterfaceSerializerFloatingIPExistingInstanceFloatingIPInterfaceSerializer,
173
+ ]
174
+
175
+
176
+ class InterfaceCreateBareMetalSubnetInterfaceSerializer(TypedDict, total=False):
177
+ network_id: Required[str]
178
+ """The network where the instance will be connected."""
179
+
180
+ subnet_id: Required[str]
181
+ """The instance will get an IP address from this subnet."""
182
+
183
+ type: Required[Literal["subnet"]]
184
+ """The instance will get an IP address from the selected network.
185
+
186
+ If you choose to add a floating IP, the instance will be reachable from the
187
+ internet. Otherwise, it will only have a private IP within the network.
188
+ """
189
+
190
+ floating_ip: InterfaceCreateBareMetalSubnetInterfaceSerializerFloatingIP
191
+ """Allows the instance to have a public IP that can be reached from the internet."""
192
+
193
+ interface_name: str
194
+ """Interface name.
195
+
196
+ Defaults to `null` and is returned as `null` in the API response if not set.
197
+ """
198
+
199
+ port_group: int
200
+ """Specifies the trunk group to which this interface belongs.
201
+
202
+ Applicable only for bare metal servers. Each unique port group is mapped to a
203
+ separate trunk port. Use this to control how interfaces are grouped across
204
+ trunks.
205
+ """
206
+
207
+
208
+ class InterfaceCreateBareMetalAnySubnetInterfaceSerializerFloatingIPNewInstanceFloatingIPInterfaceSerializer(
209
+ TypedDict, total=False
210
+ ):
211
+ source: Required[Literal["new"]]
212
+ """A new floating IP will be created and attached to the instance.
213
+
214
+ A floating IP is a public IP that makes the instance accessible from the
215
+ internet, even if it only has a private IP. It works like SNAT, allowing
216
+ outgoing and incoming traffic.
217
+ """
218
+
219
+
220
+ class InterfaceCreateBareMetalAnySubnetInterfaceSerializerFloatingIPExistingInstanceFloatingIPInterfaceSerializer(
221
+ TypedDict, total=False
222
+ ):
223
+ existing_floating_id: Required[str]
224
+ """
225
+ An existing available floating IP id must be specified if the source is set to
226
+ `existing`
227
+ """
228
+
229
+ source: Required[Literal["existing"]]
230
+ """An existing available floating IP will be attached to the instance.
231
+
232
+ A floating IP is a public IP that makes the instance accessible from the
233
+ internet, even if it only has a private IP. It works like SNAT, allowing
234
+ outgoing and incoming traffic.
235
+ """
236
+
237
+
238
+ InterfaceCreateBareMetalAnySubnetInterfaceSerializerFloatingIP: TypeAlias = Union[
239
+ InterfaceCreateBareMetalAnySubnetInterfaceSerializerFloatingIPNewInstanceFloatingIPInterfaceSerializer,
240
+ InterfaceCreateBareMetalAnySubnetInterfaceSerializerFloatingIPExistingInstanceFloatingIPInterfaceSerializer,
241
+ ]
242
+
243
+
244
+ class InterfaceCreateBareMetalAnySubnetInterfaceSerializer(TypedDict, total=False):
245
+ network_id: Required[str]
246
+ """The network where the instance will be connected."""
247
+
248
+ type: Required[Literal["any_subnet"]]
249
+ """Instance will be attached to a subnet with the largest count of free IPs."""
250
+
251
+ floating_ip: InterfaceCreateBareMetalAnySubnetInterfaceSerializerFloatingIP
252
+ """Allows the instance to have a public IP that can be reached from the internet."""
253
+
254
+ interface_name: str
255
+ """Interface name.
256
+
257
+ Defaults to `null` and is returned as `null` in the API response if not set.
258
+ """
259
+
260
+ ip_address: str
261
+ """You can specify a specific IP address from your subnet."""
262
+
263
+ ip_family: Optional[InterfaceIPFamily]
264
+ """Specify `ipv4`, `ipv6`, or `dual` to enable both."""
265
+
266
+ port_group: int
267
+ """Specifies the trunk group to which this interface belongs.
268
+
269
+ Applicable only for bare metal servers. Each unique port group is mapped to a
270
+ separate trunk port. Use this to control how interfaces are grouped across
271
+ trunks.
272
+ """
273
+
274
+
275
+ class InterfaceCreateBareMetalReservedFixedIPInterfaceSerializerFloatingIPNewInstanceFloatingIPInterfaceSerializer(
276
+ TypedDict, total=False
277
+ ):
278
+ source: Required[Literal["new"]]
279
+ """A new floating IP will be created and attached to the instance.
280
+
281
+ A floating IP is a public IP that makes the instance accessible from the
282
+ internet, even if it only has a private IP. It works like SNAT, allowing
283
+ outgoing and incoming traffic.
284
+ """
285
+
286
+
287
+ class InterfaceCreateBareMetalReservedFixedIPInterfaceSerializerFloatingIPExistingInstanceFloatingIPInterfaceSerializer(
288
+ TypedDict, total=False
289
+ ):
290
+ existing_floating_id: Required[str]
291
+ """
292
+ An existing available floating IP id must be specified if the source is set to
293
+ `existing`
294
+ """
295
+
296
+ source: Required[Literal["existing"]]
297
+ """An existing available floating IP will be attached to the instance.
298
+
299
+ A floating IP is a public IP that makes the instance accessible from the
300
+ internet, even if it only has a private IP. It works like SNAT, allowing
301
+ outgoing and incoming traffic.
302
+ """
303
+
304
+
305
+ InterfaceCreateBareMetalReservedFixedIPInterfaceSerializerFloatingIP: TypeAlias = Union[
306
+ InterfaceCreateBareMetalReservedFixedIPInterfaceSerializerFloatingIPNewInstanceFloatingIPInterfaceSerializer,
307
+ InterfaceCreateBareMetalReservedFixedIPInterfaceSerializerFloatingIPExistingInstanceFloatingIPInterfaceSerializer,
308
+ ]
309
+
310
+
311
+ class InterfaceCreateBareMetalReservedFixedIPInterfaceSerializer(TypedDict, total=False):
312
+ port_id: Required[str]
313
+ """Network ID the subnet belongs to. Port will be plugged in this network."""
314
+
315
+ type: Required[Literal["reserved_fixed_ip"]]
316
+ """An existing available reserved fixed IP will be attached to the instance.
317
+
318
+ If the reserved IP is not public and you choose to add a floating IP, the
319
+ instance will be accessible from the internet.
320
+ """
321
+
322
+ floating_ip: InterfaceCreateBareMetalReservedFixedIPInterfaceSerializerFloatingIP
323
+ """Allows the instance to have a public IP that can be reached from the internet."""
324
+
325
+ interface_name: str
326
+ """Interface name.
327
+
328
+ Defaults to `null` and is returned as `null` in the API response if not set.
329
+ """
330
+
331
+ port_group: int
332
+ """Specifies the trunk group to which this interface belongs.
333
+
334
+ Applicable only for bare metal servers. Each unique port group is mapped to a
335
+ separate trunk port. Use this to control how interfaces are grouped across
336
+ trunks.
337
+ """
338
+
339
+
340
+ Interface: TypeAlias = Union[
341
+ InterfaceCreateBareMetalExternalInterfaceSerializer,
342
+ InterfaceCreateBareMetalSubnetInterfaceSerializer,
343
+ InterfaceCreateBareMetalAnySubnetInterfaceSerializer,
344
+ InterfaceCreateBareMetalReservedFixedIPInterfaceSerializer,
345
+ ]
346
+
347
+
348
+ class DDOSProfileField(TypedDict, total=False):
349
+ base_field: Optional[int]
350
+ """ID of DDoS profile field"""
351
+
352
+ field_name: Optional[str]
353
+ """Name of DDoS profile field"""
354
+
355
+ field_value: Union[Iterable[object], int, str, None]
356
+ """Complex value. Only one of 'value' or 'field_value' must be specified."""
357
+
358
+ value: Optional[str]
359
+ """Basic type value. Only one of 'value' or 'field_value' must be specified."""
360
+
361
+
362
+ class DDOSProfile(TypedDict, total=False):
363
+ profile_template: Required[int]
364
+ """DDoS profile template ID"""
365
+
366
+ fields: Optional[Iterable[DDOSProfileField]]
367
+ """DDoS profile parameters"""
368
+
369
+ profile_template_name: Optional[str]
370
+ """DDoS profile template name"""
@@ -0,0 +1,114 @@
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__ = ["ServerListParams"]
12
+
13
+
14
+ class ServerListParams(TypedDict, total=False):
15
+ project_id: int
16
+ """Project ID"""
17
+
18
+ region_id: int
19
+ """Region ID"""
20
+
21
+ changes_before: Annotated[Union[str, datetime], PropertyInfo(alias="changes-before", format="iso8601")]
22
+ """Filters the instances by a date and time stamp when the instances last changed."""
23
+
24
+ changes_since: Annotated[Union[str, datetime], PropertyInfo(alias="changes-since", format="iso8601")]
25
+ """
26
+ Filters the instances by a date and time stamp when the instances last changed
27
+ status.
28
+ """
29
+
30
+ flavor_id: str
31
+ """Filter out instances by flavor_id. Flavor id must match exactly."""
32
+
33
+ flavor_prefix: str
34
+ """Filter out instances by flavor_prefix."""
35
+
36
+ include_k8s: bool
37
+ """Include managed k8s worker nodes"""
38
+
39
+ ip: str
40
+ """An IPv4 address to filter results by.
41
+
42
+ Note: partial matches are allowed. For example, searching for 192.168.0.1 will
43
+ return 192.168.0.1, 192.168.0.10, 192.168.0.110, and so on.
44
+ """
45
+
46
+ limit: int
47
+ """Optional. Limit the number of returned items"""
48
+
49
+ name: str
50
+ """Filter instances by name.
51
+
52
+ You can provide a full or partial name, instances with matching names will be
53
+ returned. For example, entering 'test' will return all instances that contain
54
+ 'test' in their name.
55
+ """
56
+
57
+ offset: int
58
+ """Optional.
59
+
60
+ Offset value is used to exclude the first set of records from the result
61
+ """
62
+
63
+ only_isolated: bool
64
+ """Include only isolated instances"""
65
+
66
+ only_with_fixed_external_ip: bool
67
+ """Return bare metals only with external fixed IP addresses."""
68
+
69
+ order_by: Literal["created.asc", "created.desc", "name.asc", "name.desc", "status.asc", "status.desc"]
70
+ """Order by field and direction."""
71
+
72
+ profile_name: str
73
+ """Filter result by ddos protection profile name.
74
+
75
+ Effective only with with_ddos set to true.
76
+ """
77
+
78
+ protection_status: Literal["Active", "Queued", "Error"]
79
+ """Filter result by DDoS protection_status.
80
+
81
+ Effective only with with_ddos set to true. (Active, Queued or Error)
82
+ """
83
+
84
+ status: Literal["ACTIVE", "BUILD", "ERROR", "HARD_REBOOT", "REBOOT", "REBUILD", "RESCUE", "SHUTOFF", "SUSPENDED"]
85
+ """Filters instances by a server status, as a string."""
86
+
87
+ tag_key_value: str
88
+ """Optional.
89
+
90
+ Filter by tag key-value pairs. curl -G --data-urlencode "tag_key_value={"key":
91
+ "value"}" --url "https://example.com/cloud/v1/resource/1/1"
92
+ """
93
+
94
+ tag_value: List[str]
95
+ """Optional. Filter by tag values. ?tag_value=value1&tag_value=value2"""
96
+
97
+ type_ddos_profile: Literal["basic", "advanced"]
98
+ """Return bare metals either only with advanced or only basic DDoS protection.
99
+
100
+ Effective only with with_ddos set to true. (advanced or basic)
101
+ """
102
+
103
+ uuid: str
104
+ """Filter the server list result by the UUID of the server. Allowed UUID part"""
105
+
106
+ with_ddos: bool
107
+ """
108
+ Include DDoS profile information for bare-metal servers in the response when set
109
+ to `true`. Otherwise, the `ddos_profile` field in the response is `null` by
110
+ default.
111
+ """
112
+
113
+ with_interfaces_name: bool
114
+ """Include `interface_name` in the addresses"""
@@ -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
+ __all__ = ["ServerRebuildParams"]
8
+
9
+
10
+ class ServerRebuildParams(TypedDict, total=False):
11
+ project_id: int
12
+
13
+ region_id: int
14
+
15
+ image_id: str
16
+ """Image ID"""
17
+
18
+ user_data: str
19
+ """String in base64 format.
20
+
21
+ Must not be passed together with 'username' or 'password'. Examples of the
22
+ user_data: https://cloudinit.readthedocs.io/en/latest/topics/examples.html
23
+ """
@@ -0,0 +1,58 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Dict, Optional
4
+ from typing_extensions import Literal
5
+
6
+ from ..._models import BaseModel
7
+
8
+ __all__ = ["BaremetalFlavor"]
9
+
10
+
11
+ class BaremetalFlavor(BaseModel):
12
+ architecture: str
13
+ """Flavor architecture type"""
14
+
15
+ disabled: bool
16
+ """Disabled flavor flag"""
17
+
18
+ flavor_id: str
19
+ """Flavor ID is the same as name"""
20
+
21
+ flavor_name: str
22
+ """Flavor name"""
23
+
24
+ os_type: str
25
+ """Flavor operating system"""
26
+
27
+ ram: int
28
+ """RAM size in MiB"""
29
+
30
+ resource_class: Optional[str] = None
31
+ """Flavor resource class for mapping to hardware capacity"""
32
+
33
+ vcpus: int
34
+ """Virtual CPU count. For bare metal flavors, it's a physical CPU count"""
35
+
36
+ capacity: Optional[int] = None
37
+ """Number of available instances of given configuration"""
38
+
39
+ currency_code: Optional[str] = None
40
+ """Currency code. Shown if the include_prices query parameter if set to true"""
41
+
42
+ hardware_description: Optional[Dict[str, str]] = None
43
+ """Additional hardware description"""
44
+
45
+ price_per_hour: Optional[float] = None
46
+ """Price per hour. Shown if the include_prices query parameter if set to true"""
47
+
48
+ price_per_month: Optional[float] = None
49
+ """Price per month. Shown if the include_prices query parameter if set to true"""
50
+
51
+ price_status: Optional[Literal["error", "hide", "show"]] = None
52
+ """Price status for the UI"""
53
+
54
+ reserved_in_stock: Optional[int] = None
55
+ """Count of reserved but not used nodes.
56
+
57
+ If a client don't have reservations for the flavor, it's None.
58
+ """
@@ -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 .baremetal_flavor import BaremetalFlavor
7
+
8
+ __all__ = ["BaremetalFlavorList"]
9
+
10
+
11
+ class BaremetalFlavorList(BaseModel):
12
+ count: int
13
+ """Number of objects"""
14
+
15
+ results: List[BaremetalFlavor]
16
+ """Objects"""