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,701 @@
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
6
+
7
+ import httpx
8
+
9
+ from ...._types import NOT_GIVEN, Body, Query, Headers, NoneType, NotGiven
10
+ from ...._utils import maybe_transform, async_maybe_transform
11
+ from ...._compat import cached_property
12
+ from ...._resource import SyncAPIResource, AsyncAPIResource
13
+ from ...._response import (
14
+ to_raw_response_wrapper,
15
+ to_streamed_response_wrapper,
16
+ async_to_raw_response_wrapper,
17
+ async_to_streamed_response_wrapper,
18
+ )
19
+ from ...._base_client import make_request_options
20
+ from ....types.cloud.registries import user_create_params, user_update_params, user_create_multiple_params
21
+ from ....types.cloud.registries.registry_user import RegistryUser
22
+ from ....types.cloud.registries.registry_user_list import RegistryUserList
23
+ from ....types.cloud.registries.registry_user_created import RegistryUserCreated
24
+
25
+ __all__ = ["UsersResource", "AsyncUsersResource"]
26
+
27
+
28
+ class UsersResource(SyncAPIResource):
29
+ @cached_property
30
+ def with_raw_response(self) -> UsersResourceWithRawResponse:
31
+ """
32
+ This property can be used as a prefix for any HTTP method call to return
33
+ the raw response object instead of the parsed content.
34
+
35
+ For more information, see https://www.github.com/G-Core/gcore-python#accessing-raw-response-data-eg-headers
36
+ """
37
+ return UsersResourceWithRawResponse(self)
38
+
39
+ @cached_property
40
+ def with_streaming_response(self) -> UsersResourceWithStreamingResponse:
41
+ """
42
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
43
+
44
+ For more information, see https://www.github.com/G-Core/gcore-python#with_streaming_response
45
+ """
46
+ return UsersResourceWithStreamingResponse(self)
47
+
48
+ def create(
49
+ self,
50
+ registry_id: int,
51
+ *,
52
+ project_id: int | None = None,
53
+ region_id: int | None = None,
54
+ duration: int,
55
+ name: str,
56
+ read_only: bool | NotGiven = NOT_GIVEN,
57
+ secret: str | NotGiven = NOT_GIVEN,
58
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
59
+ # The extra values given here take precedence over values defined on the client or passed to this method.
60
+ extra_headers: Headers | None = None,
61
+ extra_query: Query | None = None,
62
+ extra_body: Body | None = None,
63
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
64
+ ) -> RegistryUser:
65
+ """
66
+ Create a user
67
+
68
+ Args:
69
+ duration: User account operating time, days
70
+
71
+ name: A name for the registry user.
72
+
73
+ Should be in lowercase, consisting only of numbers and letters,
74
+
75
+ with maximum length of 16 characters
76
+
77
+ read_only: Read-only user
78
+
79
+ secret: User secret
80
+
81
+ extra_headers: Send extra headers
82
+
83
+ extra_query: Add additional query parameters to the request
84
+
85
+ extra_body: Add additional JSON properties to the request
86
+
87
+ timeout: Override the client-level default timeout for this request, in seconds
88
+ """
89
+ if project_id is None:
90
+ project_id = self._client._get_cloud_project_id_path_param()
91
+ if region_id is None:
92
+ region_id = self._client._get_cloud_region_id_path_param()
93
+ return self._post(
94
+ f"/cloud/v1/registries/{project_id}/{region_id}/{registry_id}/users",
95
+ body=maybe_transform(
96
+ {
97
+ "duration": duration,
98
+ "name": name,
99
+ "read_only": read_only,
100
+ "secret": secret,
101
+ },
102
+ user_create_params.UserCreateParams,
103
+ ),
104
+ options=make_request_options(
105
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
106
+ ),
107
+ cast_to=RegistryUser,
108
+ )
109
+
110
+ def update(
111
+ self,
112
+ user_id: int,
113
+ *,
114
+ project_id: int | None = None,
115
+ region_id: int | None = None,
116
+ registry_id: int,
117
+ duration: int,
118
+ read_only: bool | NotGiven = NOT_GIVEN,
119
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
120
+ # The extra values given here take precedence over values defined on the client or passed to this method.
121
+ extra_headers: Headers | None = None,
122
+ extra_query: Query | None = None,
123
+ extra_body: Body | None = None,
124
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
125
+ ) -> RegistryUser:
126
+ """
127
+ Update a user
128
+
129
+ Args:
130
+ duration: User account operating time, days
131
+
132
+ read_only: Read-only user
133
+
134
+ extra_headers: Send extra headers
135
+
136
+ extra_query: Add additional query parameters to the request
137
+
138
+ extra_body: Add additional JSON properties to the request
139
+
140
+ timeout: Override the client-level default timeout for this request, in seconds
141
+ """
142
+ if project_id is None:
143
+ project_id = self._client._get_cloud_project_id_path_param()
144
+ if region_id is None:
145
+ region_id = self._client._get_cloud_region_id_path_param()
146
+ return self._patch(
147
+ f"/cloud/v1/registries/{project_id}/{region_id}/{registry_id}/users/{user_id}",
148
+ body=maybe_transform(
149
+ {
150
+ "duration": duration,
151
+ "read_only": read_only,
152
+ },
153
+ user_update_params.UserUpdateParams,
154
+ ),
155
+ options=make_request_options(
156
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
157
+ ),
158
+ cast_to=RegistryUser,
159
+ )
160
+
161
+ def list(
162
+ self,
163
+ registry_id: int,
164
+ *,
165
+ project_id: int | None = None,
166
+ region_id: int | None = None,
167
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
168
+ # The extra values given here take precedence over values defined on the client or passed to this method.
169
+ extra_headers: Headers | None = None,
170
+ extra_query: Query | None = None,
171
+ extra_body: Body | None = None,
172
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
173
+ ) -> RegistryUserList:
174
+ """
175
+ Get user list
176
+
177
+ Args:
178
+ extra_headers: Send extra headers
179
+
180
+ extra_query: Add additional query parameters to the request
181
+
182
+ extra_body: Add additional JSON properties to the request
183
+
184
+ timeout: Override the client-level default timeout for this request, in seconds
185
+ """
186
+ if project_id is None:
187
+ project_id = self._client._get_cloud_project_id_path_param()
188
+ if region_id is None:
189
+ region_id = self._client._get_cloud_region_id_path_param()
190
+ return self._get(
191
+ f"/cloud/v1/registries/{project_id}/{region_id}/{registry_id}/users",
192
+ options=make_request_options(
193
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
194
+ ),
195
+ cast_to=RegistryUserList,
196
+ )
197
+
198
+ def delete(
199
+ self,
200
+ user_id: int,
201
+ *,
202
+ project_id: int | None = None,
203
+ region_id: int | None = None,
204
+ registry_id: int,
205
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
206
+ # The extra values given here take precedence over values defined on the client or passed to this method.
207
+ extra_headers: Headers | None = None,
208
+ extra_query: Query | None = None,
209
+ extra_body: Body | None = None,
210
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
211
+ ) -> None:
212
+ """
213
+ Delete a user
214
+
215
+ Args:
216
+ extra_headers: Send extra headers
217
+
218
+ extra_query: Add additional query parameters to the request
219
+
220
+ extra_body: Add additional JSON properties to the request
221
+
222
+ timeout: Override the client-level default timeout for this request, in seconds
223
+ """
224
+ if project_id is None:
225
+ project_id = self._client._get_cloud_project_id_path_param()
226
+ if region_id is None:
227
+ region_id = self._client._get_cloud_region_id_path_param()
228
+ extra_headers = {"Accept": "*/*", **(extra_headers or {})}
229
+ return self._delete(
230
+ f"/cloud/v1/registries/{project_id}/{region_id}/{registry_id}/users/{user_id}",
231
+ options=make_request_options(
232
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
233
+ ),
234
+ cast_to=NoneType,
235
+ )
236
+
237
+ def create_multiple(
238
+ self,
239
+ registry_id: int,
240
+ *,
241
+ project_id: int | None = None,
242
+ region_id: int | None = None,
243
+ users: Iterable[user_create_multiple_params.User],
244
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
245
+ # The extra values given here take precedence over values defined on the client or passed to this method.
246
+ extra_headers: Headers | None = None,
247
+ extra_query: Query | None = None,
248
+ extra_body: Body | None = None,
249
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
250
+ ) -> RegistryUserCreated:
251
+ """
252
+ Batch create users
253
+
254
+ Args:
255
+ users: Set of users
256
+
257
+ extra_headers: Send extra headers
258
+
259
+ extra_query: Add additional query parameters to the request
260
+
261
+ extra_body: Add additional JSON properties to the request
262
+
263
+ timeout: Override the client-level default timeout for this request, in seconds
264
+ """
265
+ if project_id is None:
266
+ project_id = self._client._get_cloud_project_id_path_param()
267
+ if region_id is None:
268
+ region_id = self._client._get_cloud_region_id_path_param()
269
+ return self._post(
270
+ f"/cloud/v1/registries/{project_id}/{region_id}/{registry_id}/users/batch",
271
+ body=maybe_transform({"users": users}, user_create_multiple_params.UserCreateMultipleParams),
272
+ options=make_request_options(
273
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
274
+ ),
275
+ cast_to=RegistryUserCreated,
276
+ )
277
+
278
+ def refresh_secret(
279
+ self,
280
+ user_id: int,
281
+ *,
282
+ project_id: int | None = None,
283
+ region_id: int | None = None,
284
+ registry_id: int,
285
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
286
+ # The extra values given here take precedence over values defined on the client or passed to this method.
287
+ extra_headers: Headers | None = None,
288
+ extra_query: Query | None = None,
289
+ extra_body: Body | None = None,
290
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
291
+ ) -> None:
292
+ """
293
+ Refresh a secret
294
+
295
+ Args:
296
+ extra_headers: Send extra headers
297
+
298
+ extra_query: Add additional query parameters to the request
299
+
300
+ extra_body: Add additional JSON properties to the request
301
+
302
+ timeout: Override the client-level default timeout for this request, in seconds
303
+ """
304
+ if project_id is None:
305
+ project_id = self._client._get_cloud_project_id_path_param()
306
+ if region_id is None:
307
+ region_id = self._client._get_cloud_region_id_path_param()
308
+ extra_headers = {"Accept": "*/*", **(extra_headers or {})}
309
+ return self._post(
310
+ f"/cloud/v1/registries/{project_id}/{region_id}/{registry_id}/users/{user_id}/refresh_secret",
311
+ options=make_request_options(
312
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
313
+ ),
314
+ cast_to=NoneType,
315
+ )
316
+
317
+
318
+ class AsyncUsersResource(AsyncAPIResource):
319
+ @cached_property
320
+ def with_raw_response(self) -> AsyncUsersResourceWithRawResponse:
321
+ """
322
+ This property can be used as a prefix for any HTTP method call to return
323
+ the raw response object instead of the parsed content.
324
+
325
+ For more information, see https://www.github.com/G-Core/gcore-python#accessing-raw-response-data-eg-headers
326
+ """
327
+ return AsyncUsersResourceWithRawResponse(self)
328
+
329
+ @cached_property
330
+ def with_streaming_response(self) -> AsyncUsersResourceWithStreamingResponse:
331
+ """
332
+ An alternative to `.with_raw_response` that doesn't eagerly read the response body.
333
+
334
+ For more information, see https://www.github.com/G-Core/gcore-python#with_streaming_response
335
+ """
336
+ return AsyncUsersResourceWithStreamingResponse(self)
337
+
338
+ async def create(
339
+ self,
340
+ registry_id: int,
341
+ *,
342
+ project_id: int | None = None,
343
+ region_id: int | None = None,
344
+ duration: int,
345
+ name: str,
346
+ read_only: bool | NotGiven = NOT_GIVEN,
347
+ secret: str | NotGiven = NOT_GIVEN,
348
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
349
+ # The extra values given here take precedence over values defined on the client or passed to this method.
350
+ extra_headers: Headers | None = None,
351
+ extra_query: Query | None = None,
352
+ extra_body: Body | None = None,
353
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
354
+ ) -> RegistryUser:
355
+ """
356
+ Create a user
357
+
358
+ Args:
359
+ duration: User account operating time, days
360
+
361
+ name: A name for the registry user.
362
+
363
+ Should be in lowercase, consisting only of numbers and letters,
364
+
365
+ with maximum length of 16 characters
366
+
367
+ read_only: Read-only user
368
+
369
+ secret: User secret
370
+
371
+ extra_headers: Send extra headers
372
+
373
+ extra_query: Add additional query parameters to the request
374
+
375
+ extra_body: Add additional JSON properties to the request
376
+
377
+ timeout: Override the client-level default timeout for this request, in seconds
378
+ """
379
+ if project_id is None:
380
+ project_id = self._client._get_cloud_project_id_path_param()
381
+ if region_id is None:
382
+ region_id = self._client._get_cloud_region_id_path_param()
383
+ return await self._post(
384
+ f"/cloud/v1/registries/{project_id}/{region_id}/{registry_id}/users",
385
+ body=await async_maybe_transform(
386
+ {
387
+ "duration": duration,
388
+ "name": name,
389
+ "read_only": read_only,
390
+ "secret": secret,
391
+ },
392
+ user_create_params.UserCreateParams,
393
+ ),
394
+ options=make_request_options(
395
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
396
+ ),
397
+ cast_to=RegistryUser,
398
+ )
399
+
400
+ async def update(
401
+ self,
402
+ user_id: int,
403
+ *,
404
+ project_id: int | None = None,
405
+ region_id: int | None = None,
406
+ registry_id: int,
407
+ duration: int,
408
+ read_only: bool | NotGiven = NOT_GIVEN,
409
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
410
+ # The extra values given here take precedence over values defined on the client or passed to this method.
411
+ extra_headers: Headers | None = None,
412
+ extra_query: Query | None = None,
413
+ extra_body: Body | None = None,
414
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
415
+ ) -> RegistryUser:
416
+ """
417
+ Update a user
418
+
419
+ Args:
420
+ duration: User account operating time, days
421
+
422
+ read_only: Read-only user
423
+
424
+ extra_headers: Send extra headers
425
+
426
+ extra_query: Add additional query parameters to the request
427
+
428
+ extra_body: Add additional JSON properties to the request
429
+
430
+ timeout: Override the client-level default timeout for this request, in seconds
431
+ """
432
+ if project_id is None:
433
+ project_id = self._client._get_cloud_project_id_path_param()
434
+ if region_id is None:
435
+ region_id = self._client._get_cloud_region_id_path_param()
436
+ return await self._patch(
437
+ f"/cloud/v1/registries/{project_id}/{region_id}/{registry_id}/users/{user_id}",
438
+ body=await async_maybe_transform(
439
+ {
440
+ "duration": duration,
441
+ "read_only": read_only,
442
+ },
443
+ user_update_params.UserUpdateParams,
444
+ ),
445
+ options=make_request_options(
446
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
447
+ ),
448
+ cast_to=RegistryUser,
449
+ )
450
+
451
+ async def list(
452
+ self,
453
+ registry_id: int,
454
+ *,
455
+ project_id: int | None = None,
456
+ region_id: int | None = None,
457
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
458
+ # The extra values given here take precedence over values defined on the client or passed to this method.
459
+ extra_headers: Headers | None = None,
460
+ extra_query: Query | None = None,
461
+ extra_body: Body | None = None,
462
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
463
+ ) -> RegistryUserList:
464
+ """
465
+ Get user list
466
+
467
+ Args:
468
+ extra_headers: Send extra headers
469
+
470
+ extra_query: Add additional query parameters to the request
471
+
472
+ extra_body: Add additional JSON properties to the request
473
+
474
+ timeout: Override the client-level default timeout for this request, in seconds
475
+ """
476
+ if project_id is None:
477
+ project_id = self._client._get_cloud_project_id_path_param()
478
+ if region_id is None:
479
+ region_id = self._client._get_cloud_region_id_path_param()
480
+ return await self._get(
481
+ f"/cloud/v1/registries/{project_id}/{region_id}/{registry_id}/users",
482
+ options=make_request_options(
483
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
484
+ ),
485
+ cast_to=RegistryUserList,
486
+ )
487
+
488
+ async def delete(
489
+ self,
490
+ user_id: int,
491
+ *,
492
+ project_id: int | None = None,
493
+ region_id: int | None = None,
494
+ registry_id: int,
495
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
496
+ # The extra values given here take precedence over values defined on the client or passed to this method.
497
+ extra_headers: Headers | None = None,
498
+ extra_query: Query | None = None,
499
+ extra_body: Body | None = None,
500
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
501
+ ) -> None:
502
+ """
503
+ Delete a user
504
+
505
+ Args:
506
+ extra_headers: Send extra headers
507
+
508
+ extra_query: Add additional query parameters to the request
509
+
510
+ extra_body: Add additional JSON properties to the request
511
+
512
+ timeout: Override the client-level default timeout for this request, in seconds
513
+ """
514
+ if project_id is None:
515
+ project_id = self._client._get_cloud_project_id_path_param()
516
+ if region_id is None:
517
+ region_id = self._client._get_cloud_region_id_path_param()
518
+ extra_headers = {"Accept": "*/*", **(extra_headers or {})}
519
+ return await self._delete(
520
+ f"/cloud/v1/registries/{project_id}/{region_id}/{registry_id}/users/{user_id}",
521
+ options=make_request_options(
522
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
523
+ ),
524
+ cast_to=NoneType,
525
+ )
526
+
527
+ async def create_multiple(
528
+ self,
529
+ registry_id: int,
530
+ *,
531
+ project_id: int | None = None,
532
+ region_id: int | None = None,
533
+ users: Iterable[user_create_multiple_params.User],
534
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
535
+ # The extra values given here take precedence over values defined on the client or passed to this method.
536
+ extra_headers: Headers | None = None,
537
+ extra_query: Query | None = None,
538
+ extra_body: Body | None = None,
539
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
540
+ ) -> RegistryUserCreated:
541
+ """
542
+ Batch create users
543
+
544
+ Args:
545
+ users: Set of users
546
+
547
+ extra_headers: Send extra headers
548
+
549
+ extra_query: Add additional query parameters to the request
550
+
551
+ extra_body: Add additional JSON properties to the request
552
+
553
+ timeout: Override the client-level default timeout for this request, in seconds
554
+ """
555
+ if project_id is None:
556
+ project_id = self._client._get_cloud_project_id_path_param()
557
+ if region_id is None:
558
+ region_id = self._client._get_cloud_region_id_path_param()
559
+ return await self._post(
560
+ f"/cloud/v1/registries/{project_id}/{region_id}/{registry_id}/users/batch",
561
+ body=await async_maybe_transform({"users": users}, user_create_multiple_params.UserCreateMultipleParams),
562
+ options=make_request_options(
563
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
564
+ ),
565
+ cast_to=RegistryUserCreated,
566
+ )
567
+
568
+ async def refresh_secret(
569
+ self,
570
+ user_id: int,
571
+ *,
572
+ project_id: int | None = None,
573
+ region_id: int | None = None,
574
+ registry_id: int,
575
+ # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
576
+ # The extra values given here take precedence over values defined on the client or passed to this method.
577
+ extra_headers: Headers | None = None,
578
+ extra_query: Query | None = None,
579
+ extra_body: Body | None = None,
580
+ timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
581
+ ) -> None:
582
+ """
583
+ Refresh a secret
584
+
585
+ Args:
586
+ extra_headers: Send extra headers
587
+
588
+ extra_query: Add additional query parameters to the request
589
+
590
+ extra_body: Add additional JSON properties to the request
591
+
592
+ timeout: Override the client-level default timeout for this request, in seconds
593
+ """
594
+ if project_id is None:
595
+ project_id = self._client._get_cloud_project_id_path_param()
596
+ if region_id is None:
597
+ region_id = self._client._get_cloud_region_id_path_param()
598
+ extra_headers = {"Accept": "*/*", **(extra_headers or {})}
599
+ return await self._post(
600
+ f"/cloud/v1/registries/{project_id}/{region_id}/{registry_id}/users/{user_id}/refresh_secret",
601
+ options=make_request_options(
602
+ extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
603
+ ),
604
+ cast_to=NoneType,
605
+ )
606
+
607
+
608
+ class UsersResourceWithRawResponse:
609
+ def __init__(self, users: UsersResource) -> None:
610
+ self._users = users
611
+
612
+ self.create = to_raw_response_wrapper(
613
+ users.create,
614
+ )
615
+ self.update = to_raw_response_wrapper(
616
+ users.update,
617
+ )
618
+ self.list = to_raw_response_wrapper(
619
+ users.list,
620
+ )
621
+ self.delete = to_raw_response_wrapper(
622
+ users.delete,
623
+ )
624
+ self.create_multiple = to_raw_response_wrapper(
625
+ users.create_multiple,
626
+ )
627
+ self.refresh_secret = to_raw_response_wrapper(
628
+ users.refresh_secret,
629
+ )
630
+
631
+
632
+ class AsyncUsersResourceWithRawResponse:
633
+ def __init__(self, users: AsyncUsersResource) -> None:
634
+ self._users = users
635
+
636
+ self.create = async_to_raw_response_wrapper(
637
+ users.create,
638
+ )
639
+ self.update = async_to_raw_response_wrapper(
640
+ users.update,
641
+ )
642
+ self.list = async_to_raw_response_wrapper(
643
+ users.list,
644
+ )
645
+ self.delete = async_to_raw_response_wrapper(
646
+ users.delete,
647
+ )
648
+ self.create_multiple = async_to_raw_response_wrapper(
649
+ users.create_multiple,
650
+ )
651
+ self.refresh_secret = async_to_raw_response_wrapper(
652
+ users.refresh_secret,
653
+ )
654
+
655
+
656
+ class UsersResourceWithStreamingResponse:
657
+ def __init__(self, users: UsersResource) -> None:
658
+ self._users = users
659
+
660
+ self.create = to_streamed_response_wrapper(
661
+ users.create,
662
+ )
663
+ self.update = to_streamed_response_wrapper(
664
+ users.update,
665
+ )
666
+ self.list = to_streamed_response_wrapper(
667
+ users.list,
668
+ )
669
+ self.delete = to_streamed_response_wrapper(
670
+ users.delete,
671
+ )
672
+ self.create_multiple = to_streamed_response_wrapper(
673
+ users.create_multiple,
674
+ )
675
+ self.refresh_secret = to_streamed_response_wrapper(
676
+ users.refresh_secret,
677
+ )
678
+
679
+
680
+ class AsyncUsersResourceWithStreamingResponse:
681
+ def __init__(self, users: AsyncUsersResource) -> None:
682
+ self._users = users
683
+
684
+ self.create = async_to_streamed_response_wrapper(
685
+ users.create,
686
+ )
687
+ self.update = async_to_streamed_response_wrapper(
688
+ users.update,
689
+ )
690
+ self.list = async_to_streamed_response_wrapper(
691
+ users.list,
692
+ )
693
+ self.delete = async_to_streamed_response_wrapper(
694
+ users.delete,
695
+ )
696
+ self.create_multiple = async_to_streamed_response_wrapper(
697
+ users.create_multiple,
698
+ )
699
+ self.refresh_secret = async_to_streamed_response_wrapper(
700
+ users.refresh_secret,
701
+ )