gcore 0.16.0__py3-none-any.whl → 0.23.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 (220) hide show
  1. gcore/_client.py +16 -0
  2. gcore/_models.py +37 -15
  3. gcore/_streaming.py +12 -12
  4. gcore/_utils/_sync.py +3 -31
  5. gcore/_utils/_utils.py +1 -1
  6. gcore/_version.py +1 -1
  7. gcore/resources/cdn/audit_log.py +4 -4
  8. gcore/resources/cdn/cdn.py +120 -21
  9. gcore/resources/cdn/ip_ranges.py +97 -5
  10. gcore/resources/cdn/{logs/logs.py → logs.py} +9 -9
  11. gcore/resources/cdn/resources/resources.py +20 -20
  12. gcore/resources/cdn/statistics.py +56 -58
  13. gcore/resources/cloud/__init__.py +40 -12
  14. gcore/resources/cloud/audit_logs.py +20 -0
  15. gcore/resources/cloud/baremetal/servers.py +48 -14
  16. gcore/resources/cloud/billing_reservations.py +2 -2
  17. gcore/resources/cloud/cloud.py +100 -18
  18. gcore/resources/cloud/databases/__init__.py +33 -0
  19. gcore/resources/cloud/databases/databases.py +102 -0
  20. gcore/resources/cloud/databases/postgres/__init__.py +61 -0
  21. gcore/resources/cloud/databases/postgres/clusters/__init__.py +33 -0
  22. gcore/resources/cloud/databases/postgres/clusters/clusters.py +716 -0
  23. gcore/resources/cloud/databases/postgres/clusters/user_credentials.py +281 -0
  24. gcore/resources/cloud/databases/postgres/configurations.py +169 -0
  25. gcore/resources/cloud/databases/postgres/custom_configurations.py +197 -0
  26. gcore/resources/cloud/databases/postgres/postgres.py +166 -0
  27. gcore/resources/cloud/file_shares/file_shares.py +154 -49
  28. gcore/resources/cloud/floating_ips.py +42 -10
  29. gcore/resources/cloud/gpu_baremetal_clusters/gpu_baremetal_clusters.py +70 -10
  30. gcore/resources/cloud/gpu_baremetal_clusters/images.py +40 -6
  31. gcore/resources/cloud/gpu_baremetal_clusters/servers.py +16 -0
  32. gcore/resources/cloud/gpu_virtual_clusters/__init__.py +89 -0
  33. gcore/resources/cloud/gpu_virtual_clusters/flavors.py +211 -0
  34. gcore/resources/cloud/gpu_virtual_clusters/gpu_virtual_clusters.py +1551 -0
  35. gcore/resources/cloud/gpu_virtual_clusters/images.py +582 -0
  36. gcore/resources/cloud/gpu_virtual_clusters/interfaces.py +187 -0
  37. gcore/resources/cloud/gpu_virtual_clusters/servers.py +506 -0
  38. gcore/resources/cloud/gpu_virtual_clusters/volumes.py +187 -0
  39. gcore/resources/cloud/inference/deployments/deployments.py +52 -4
  40. gcore/resources/cloud/instances/images.py +72 -18
  41. gcore/resources/cloud/instances/instances.py +110 -18
  42. gcore/resources/cloud/instances/interfaces.py +12 -0
  43. gcore/resources/cloud/k8s/__init__.py +12 -12
  44. gcore/resources/cloud/k8s/clusters/clusters.py +25 -25
  45. gcore/resources/cloud/k8s/clusters/pools/pools.py +14 -14
  46. gcore/resources/cloud/k8s/k8s.py +24 -24
  47. gcore/resources/cloud/load_balancers/l7_policies/l7_policies.py +1420 -218
  48. gcore/resources/cloud/load_balancers/l7_policies/rules.py +134 -22
  49. gcore/resources/cloud/load_balancers/listeners.py +77 -6
  50. gcore/resources/cloud/load_balancers/load_balancers.py +92 -14
  51. gcore/resources/cloud/load_balancers/pools/pools.py +52 -4
  52. gcore/resources/cloud/networks/networks.py +30 -10
  53. gcore/resources/cloud/networks/subnets.py +26 -10
  54. gcore/resources/cloud/placement_groups.py +8 -0
  55. gcore/resources/cloud/projects.py +99 -119
  56. gcore/resources/cloud/quotas/requests.py +0 -8
  57. gcore/resources/cloud/reserved_fixed_ips/reserved_fixed_ips.py +18 -0
  58. gcore/resources/cloud/secrets.py +16 -0
  59. gcore/resources/cloud/security_groups/security_groups.py +38 -12
  60. gcore/resources/cloud/ssh_keys.py +10 -0
  61. gcore/resources/cloud/tasks.py +22 -7
  62. gcore/resources/cloud/volumes.py +65 -23
  63. gcore/resources/dns/zones/rrsets.py +10 -10
  64. gcore/resources/dns/zones/zones.py +2 -2
  65. gcore/resources/security/bgp_announces.py +0 -4
  66. gcore/resources/security/profiles.py +31 -7
  67. gcore/resources/storage/credentials.py +0 -28
  68. gcore/resources/storage/storage.py +2 -2
  69. gcore/types/cdn/__init__.py +5 -0
  70. gcore/types/cdn/alibaba_regions.py +22 -0
  71. gcore/types/cdn/audit_log_list_params.py +2 -2
  72. gcore/types/cdn/aws_regions.py +22 -0
  73. gcore/types/cdn/cdn_list_purge_statuses_response.py +10 -0
  74. gcore/types/cdn/cdn_resource.py +17 -12
  75. gcore/types/cdn/ip_range_list_ips_params.py +19 -0
  76. gcore/types/cdn/ip_range_list_params.py +19 -0
  77. gcore/types/cdn/resource_create_params.py +17 -12
  78. gcore/types/cdn/resource_purge_params.py +4 -4
  79. gcore/types/cdn/resource_replace_params.py +17 -12
  80. gcore/types/cdn/resource_update_params.py +17 -12
  81. gcore/types/cdn/resource_usage_stats.py +16 -15
  82. gcore/types/cdn/resources/cdn_resource_rule.py +15 -10
  83. gcore/types/cdn/resources/rule_create_params.py +15 -10
  84. gcore/types/cdn/resources/rule_replace_params.py +15 -10
  85. gcore/types/cdn/resources/rule_update_params.py +15 -10
  86. gcore/types/cdn/rule_template.py +15 -10
  87. gcore/types/cdn/rule_template_create_params.py +15 -10
  88. gcore/types/cdn/rule_template_replace_params.py +15 -10
  89. gcore/types/cdn/rule_template_update_params.py +15 -10
  90. gcore/types/cdn/statistic_get_logs_usage_aggregated_params.py +4 -1
  91. gcore/types/cdn/statistic_get_logs_usage_series_params.py +5 -12
  92. gcore/types/cdn/statistic_get_resource_usage_aggregated_params.py +10 -21
  93. gcore/types/cdn/statistic_get_resource_usage_series_params.py +6 -1
  94. gcore/types/cdn/statistic_get_shield_usage_aggregated_params.py +5 -2
  95. gcore/types/cdn/statistic_get_shield_usage_series_params.py +3 -0
  96. gcore/types/cloud/__init__.py +9 -3
  97. gcore/types/cloud/audit_log_entry.py +9 -3
  98. gcore/types/cloud/audit_log_list_params.py +12 -0
  99. gcore/types/cloud/baremetal/server_create_params.py +7 -7
  100. gcore/types/cloud/baremetal_flavor.py +0 -6
  101. gcore/types/cloud/billing_reservation_list_params.py +1 -1
  102. gcore/types/cloud/blackhole_port.py +4 -1
  103. gcore/types/cloud/databases/postgres/__init__.py +12 -0
  104. gcore/types/cloud/databases/postgres/cluster_create_params.py +108 -0
  105. gcore/types/cloud/databases/postgres/cluster_list_params.py +19 -0
  106. gcore/types/cloud/databases/postgres/cluster_update_params.py +102 -0
  107. gcore/types/cloud/databases/postgres/clusters/__init__.py +5 -0
  108. gcore/types/cloud/databases/postgres/clusters/postgres_user_credentials.py +13 -0
  109. gcore/types/cloud/databases/postgres/custom_configuration_validate_params.py +19 -0
  110. gcore/types/cloud/databases/postgres/pg_conf_validation.py +15 -0
  111. gcore/types/cloud/databases/postgres/postgres_cluster.py +118 -0
  112. gcore/types/cloud/databases/postgres/postgres_cluster_short.py +22 -0
  113. gcore/types/cloud/databases/postgres/postgres_configuration.py +31 -0
  114. gcore/types/cloud/file_share_create_params.py +8 -8
  115. gcore/types/cloud/file_share_update_params.py +7 -2
  116. gcore/types/cloud/floating_ip.py +5 -1
  117. gcore/types/cloud/floating_ip_create_params.py +4 -4
  118. gcore/types/cloud/floating_ip_detailed.py +5 -1
  119. gcore/types/cloud/floating_ip_list_params.py +8 -0
  120. gcore/types/cloud/floating_ip_update_params.py +7 -2
  121. gcore/types/cloud/gpu_baremetal_cluster.py +18 -3
  122. gcore/types/cloud/gpu_baremetal_cluster_action_params.py +7 -2
  123. gcore/types/cloud/gpu_baremetal_cluster_create_params.py +16 -4
  124. gcore/types/cloud/gpu_baremetal_clusters/gpu_baremetal_cluster_server.py +5 -2
  125. gcore/types/cloud/gpu_baremetal_clusters/image_upload_params.py +4 -4
  126. gcore/types/cloud/gpu_image.py +9 -0
  127. gcore/types/cloud/gpu_virtual_cluster.py +189 -0
  128. gcore/types/cloud/gpu_virtual_cluster_action_params.py +127 -0
  129. gcore/types/cloud/gpu_virtual_cluster_create_params.py +213 -0
  130. gcore/types/cloud/gpu_virtual_cluster_delete_params.py +41 -0
  131. gcore/types/cloud/gpu_virtual_cluster_list_params.py +21 -0
  132. gcore/types/cloud/gpu_virtual_cluster_update_params.py +18 -0
  133. gcore/types/cloud/gpu_virtual_clusters/__init__.py +16 -0
  134. gcore/types/cloud/gpu_virtual_clusters/flavor_list_params.py +21 -0
  135. gcore/types/cloud/gpu_virtual_clusters/gpu_virtual_cluster_server.py +77 -0
  136. gcore/types/cloud/gpu_virtual_clusters/gpu_virtual_cluster_server_list.py +16 -0
  137. gcore/types/cloud/gpu_virtual_clusters/gpu_virtual_cluster_volume.py +64 -0
  138. gcore/types/cloud/gpu_virtual_clusters/gpu_virtual_cluster_volume_list.py +16 -0
  139. gcore/types/cloud/gpu_virtual_clusters/gpu_virtual_flavor.py +155 -0
  140. gcore/types/cloud/gpu_virtual_clusters/gpu_virtual_flavor_list.py +16 -0
  141. gcore/types/cloud/gpu_virtual_clusters/gpu_virtual_interface.py +190 -0
  142. gcore/types/cloud/gpu_virtual_clusters/gpu_virtual_interface_list.py +16 -0
  143. gcore/types/cloud/gpu_virtual_clusters/image_upload_params.py +56 -0
  144. gcore/types/cloud/gpu_virtual_clusters/server_delete_params.py +44 -0
  145. gcore/types/cloud/gpu_virtual_clusters/server_list_params.py +75 -0
  146. gcore/types/cloud/image.py +9 -0
  147. gcore/types/cloud/inference/deployment_create_params.py +1 -1
  148. gcore/types/cloud/inference/deployment_update_params.py +1 -1
  149. gcore/types/cloud/inference/inference_deployment.py +1 -1
  150. gcore/types/cloud/instance_create_params.py +27 -27
  151. gcore/types/cloud/instance_update_params.py +7 -2
  152. gcore/types/cloud/instances/image_create_from_volume_params.py +4 -4
  153. gcore/types/cloud/instances/image_update_params.py +4 -4
  154. gcore/types/cloud/instances/image_upload_params.py +4 -4
  155. gcore/types/cloud/k8s/__init__.py +4 -4
  156. gcore/types/cloud/k8s/cluster_update_params.py +5 -5
  157. gcore/types/cloud/k8s/clusters/__init__.py +2 -2
  158. gcore/types/cloud/k8s/clusters/k8s_cluster_pool.py +2 -2
  159. gcore/types/cloud/k8s/clusters/k8s_cluster_pool_list.py +4 -4
  160. gcore/types/cloud/k8s/k8s_cluster.py +4 -4
  161. gcore/types/cloud/k8s/k8s_cluster_certificate.py +2 -2
  162. gcore/types/cloud/k8s/k8s_cluster_kubeconfig.py +14 -2
  163. gcore/types/cloud/k8s/k8s_cluster_list.py +4 -4
  164. gcore/types/cloud/k8s_cluster_version.py +2 -2
  165. gcore/types/cloud/k8s_cluster_version_list.py +4 -4
  166. gcore/types/cloud/load_balancer_create_params.py +14 -8
  167. gcore/types/cloud/load_balancer_flavor_detail.py +2 -2
  168. gcore/types/cloud/load_balancer_l7_policy.py +29 -16
  169. gcore/types/cloud/load_balancer_l7_policy_list.py +3 -3
  170. gcore/types/cloud/load_balancer_l7_rule.py +14 -23
  171. gcore/types/cloud/load_balancer_l7_rule_list.py +3 -3
  172. gcore/types/cloud/load_balancer_listener_detail.py +2 -2
  173. gcore/types/cloud/load_balancer_update_params.py +7 -2
  174. gcore/types/cloud/load_balancers/__init__.py +1 -0
  175. gcore/types/cloud/load_balancers/l7_policies/rule_create_params.py +5 -10
  176. gcore/types/cloud/load_balancers/l7_policies/rule_replace_params.py +7 -11
  177. gcore/types/cloud/load_balancers/l7_policy_create_params.py +102 -18
  178. gcore/types/cloud/load_balancers/l7_policy_replace_params.py +94 -16
  179. gcore/types/cloud/load_balancers/listener_create_params.py +4 -1
  180. gcore/types/cloud/load_balancers/listener_delete_params.py +18 -0
  181. gcore/types/cloud/load_balancers/listener_update_params.py +4 -1
  182. gcore/types/cloud/load_balancers/pool_create_params.py +1 -1
  183. gcore/types/cloud/network_create_params.py +4 -4
  184. gcore/types/cloud/network_update_params.py +7 -2
  185. gcore/types/cloud/networks/subnet_create_params.py +4 -4
  186. gcore/types/cloud/networks/subnet_update_params.py +7 -2
  187. gcore/types/cloud/project_create_params.py +0 -6
  188. gcore/types/cloud/{project_replace_params.py → project_update_params.py} +2 -2
  189. gcore/types/cloud/quotas/request_create_params.py +0 -3
  190. gcore/types/cloud/region.py +3 -3
  191. gcore/types/cloud/security_group.py +8 -1
  192. gcore/types/cloud/security_group_create_params.py +7 -5
  193. gcore/types/cloud/security_group_list_params.py +6 -4
  194. gcore/types/cloud/security_group_update_params.py +7 -2
  195. gcore/types/cloud/ssh_key_list_params.py +7 -0
  196. gcore/types/cloud/tag.py +2 -2
  197. gcore/types/cloud/task_id_list.py +3 -3
  198. gcore/types/cloud/volume_create_params.py +12 -12
  199. gcore/types/cloud/volume_update_params.py +7 -2
  200. gcore/types/dns/zone_list_params.py +1 -1
  201. gcore/types/iam/api_token_create.py +70 -1
  202. gcore/types/security/bgp_announce_list_params.py +0 -2
  203. gcore/types/security/client_profile.py +1 -0
  204. gcore/types/security/profile_create_params.py +4 -2
  205. gcore/types/security/profile_recreate_params.py +4 -2
  206. gcore/types/security/profile_replace_params.py +4 -2
  207. gcore/types/storage/credential_recreate_params.py +0 -17
  208. gcore/types/storage/storage.py +1 -1
  209. gcore/types/storage/storage_create_params.py +1 -1
  210. gcore/types/streaming/stream.py +3 -2
  211. gcore/types/streaming/video.py +1 -1
  212. gcore/types/waap/domains/custom_rule_create_params.py +1 -1
  213. gcore/types/waap/domains/custom_rule_update_params.py +1 -1
  214. gcore/types/waap/domains/waap_custom_rule.py +1 -1
  215. {gcore-0.16.0.dist-info → gcore-0.23.0.dist-info}/METADATA +14 -14
  216. {gcore-0.16.0.dist-info → gcore-0.23.0.dist-info}/RECORD +219 -168
  217. gcore/resources/cdn/logs/__init__.py +0 -19
  218. /gcore/types/{cdn/logs → cloud/databases}/__init__.py +0 -0
  219. {gcore-0.16.0.dist-info → gcore-0.23.0.dist-info}/WHEEL +0 -0
  220. {gcore-0.16.0.dist-info → gcore-0.23.0.dist-info}/licenses/LICENSE +0 -0
@@ -77,17 +77,21 @@ class RulesResource(SyncAPIResource):
77
77
  Create load balancer L7 rule
78
78
 
79
79
  Args:
80
+ project_id: Project ID
81
+
82
+ region_id: Region ID
83
+
84
+ l7policy_id: L7 policy ID
85
+
80
86
  compare_type: The comparison type for the L7 rule
81
87
 
82
88
  type: The L7 rule type
83
89
 
84
- value: The value to use for the comparison. For example, the file type to compare
90
+ value: The value to use for the comparison
85
91
 
86
- invert: When true the logic of the rule is inverted. For example, with invert true,
87
- 'equal to' would become 'not equal to'. Default is false.
92
+ invert: When true the logic of the rule is inverted.
88
93
 
89
- key: The key to use for the comparison. For example, the name of the cookie to
90
- evaluate.
94
+ key: The key to use for the comparison.
91
95
 
92
96
  tags: A list of simple strings assigned to the l7 rule
93
97
 
@@ -141,6 +145,12 @@ class RulesResource(SyncAPIResource):
141
145
  List load balancer L7 policy rules
142
146
 
143
147
  Args:
148
+ project_id: Project ID
149
+
150
+ region_id: Region ID
151
+
152
+ l7policy_id: L7 policy ID
153
+
144
154
  extra_headers: Send extra headers
145
155
 
146
156
  extra_query: Add additional query parameters to the request
@@ -181,6 +191,14 @@ class RulesResource(SyncAPIResource):
181
191
  Delete load balancer L7 rule
182
192
 
183
193
  Args:
194
+ project_id: Project ID
195
+
196
+ region_id: Region ID
197
+
198
+ l7policy_id: L7 policy ID
199
+
200
+ l7rule_id: L7 rule ID
201
+
184
202
  extra_headers: Send extra headers
185
203
 
186
204
  extra_query: Add additional query parameters to the request
@@ -223,6 +241,14 @@ class RulesResource(SyncAPIResource):
223
241
  Get load balancer L7 rule
224
242
 
225
243
  Args:
244
+ project_id: Project ID
245
+
246
+ region_id: Region ID
247
+
248
+ l7policy_id: L7 policy ID
249
+
250
+ l7rule_id: L7 rule ID
251
+
226
252
  extra_headers: Send extra headers
227
253
 
228
254
  extra_query: Add additional query parameters to the request
@@ -254,7 +280,7 @@ class RulesResource(SyncAPIResource):
254
280
  project_id: int | None = None,
255
281
  region_id: int | None = None,
256
282
  l7policy_id: str,
257
- compare_type: Literal["CONTAINS", "ENDS_WITH", "EQUAL_TO", "REGEX", "STARTS_WITH"] | Omit = omit,
283
+ compare_type: Literal["CONTAINS", "ENDS_WITH", "EQUAL_TO", "REGEX", "STARTS_WITH"],
258
284
  invert: bool | Omit = omit,
259
285
  key: str | Omit = omit,
260
286
  tags: SequenceNotStr[str] | Omit = omit,
@@ -281,19 +307,25 @@ class RulesResource(SyncAPIResource):
281
307
  Replace load balancer L7 rule properties
282
308
 
283
309
  Args:
310
+ project_id: Project ID
311
+
312
+ region_id: Region ID
313
+
314
+ l7policy_id: L7 policy ID
315
+
316
+ l7rule_id: L7 rule ID
317
+
284
318
  compare_type: The comparison type for the L7 rule
285
319
 
286
- invert: When true the logic of the rule is inverted. For example, with invert true,
287
- 'equal to' would become 'not equal to'. Default is false.
320
+ invert: When true the logic of the rule is inverted.
288
321
 
289
- key: The key to use for the comparison. For example, the name of the cookie to
290
- evaluate.
322
+ key: The key to use for the comparison.
291
323
 
292
324
  tags: A list of simple strings assigned to the l7 rule
293
325
 
294
326
  type: The L7 rule type
295
327
 
296
- value: The value to use for the comparison. For example, the file type to compare
328
+ value: The value to use for the comparison
297
329
 
298
330
  extra_headers: Send extra headers
299
331
 
@@ -352,6 +384,7 @@ class RulesResource(SyncAPIResource):
352
384
  key: str | Omit = omit,
353
385
  tags: SequenceNotStr[str] | Omit = omit,
354
386
  polling_interval_seconds: int | Omit = omit,
387
+ polling_timeout_seconds: int | Omit = omit,
355
388
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
356
389
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
357
390
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -380,6 +413,7 @@ class RulesResource(SyncAPIResource):
380
413
  task_id=response.tasks[0],
381
414
  extra_headers=extra_headers,
382
415
  polling_interval_seconds=polling_interval_seconds,
416
+ polling_timeout_seconds=polling_timeout_seconds,
383
417
  )
384
418
  if not task.created_resources or not task.created_resources.l7rules or len(task.created_resources.l7rules) != 1:
385
419
  raise ValueError(f"Expected exactly one resource to be created in a task")
@@ -400,6 +434,7 @@ class RulesResource(SyncAPIResource):
400
434
  region_id: int | None = None,
401
435
  l7policy_id: str,
402
436
  polling_interval_seconds: int | Omit = omit,
437
+ polling_timeout_seconds: int | Omit = omit,
403
438
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
404
439
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
405
440
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -426,6 +461,7 @@ class RulesResource(SyncAPIResource):
426
461
  task_id=response.tasks[0],
427
462
  extra_headers=extra_headers,
428
463
  polling_interval_seconds=polling_interval_seconds,
464
+ polling_timeout_seconds=polling_timeout_seconds,
429
465
  )
430
466
 
431
467
  def replace_and_poll(
@@ -451,6 +487,7 @@ class RulesResource(SyncAPIResource):
451
487
  key: str | Omit = omit,
452
488
  tags: SequenceNotStr[str] | Omit = omit,
453
489
  polling_interval_seconds: int | Omit = omit,
490
+ polling_timeout_seconds: int | Omit = omit,
454
491
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
455
492
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
456
493
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -483,6 +520,7 @@ class RulesResource(SyncAPIResource):
483
520
  task_id=response.tasks[0],
484
521
  extra_headers=extra_headers,
485
522
  polling_interval_seconds=polling_interval_seconds,
523
+ polling_timeout_seconds=polling_timeout_seconds,
486
524
  )
487
525
  return self.get(
488
526
  l7rule_id=l7rule_id,
@@ -546,17 +584,21 @@ class AsyncRulesResource(AsyncAPIResource):
546
584
  Create load balancer L7 rule
547
585
 
548
586
  Args:
587
+ project_id: Project ID
588
+
589
+ region_id: Region ID
590
+
591
+ l7policy_id: L7 policy ID
592
+
549
593
  compare_type: The comparison type for the L7 rule
550
594
 
551
595
  type: The L7 rule type
552
596
 
553
- value: The value to use for the comparison. For example, the file type to compare
597
+ value: The value to use for the comparison
554
598
 
555
- invert: When true the logic of the rule is inverted. For example, with invert true,
556
- 'equal to' would become 'not equal to'. Default is false.
599
+ invert: When true the logic of the rule is inverted.
557
600
 
558
- key: The key to use for the comparison. For example, the name of the cookie to
559
- evaluate.
601
+ key: The key to use for the comparison.
560
602
 
561
603
  tags: A list of simple strings assigned to the l7 rule
562
604
 
@@ -610,6 +652,12 @@ class AsyncRulesResource(AsyncAPIResource):
610
652
  List load balancer L7 policy rules
611
653
 
612
654
  Args:
655
+ project_id: Project ID
656
+
657
+ region_id: Region ID
658
+
659
+ l7policy_id: L7 policy ID
660
+
613
661
  extra_headers: Send extra headers
614
662
 
615
663
  extra_query: Add additional query parameters to the request
@@ -650,6 +698,14 @@ class AsyncRulesResource(AsyncAPIResource):
650
698
  Delete load balancer L7 rule
651
699
 
652
700
  Args:
701
+ project_id: Project ID
702
+
703
+ region_id: Region ID
704
+
705
+ l7policy_id: L7 policy ID
706
+
707
+ l7rule_id: L7 rule ID
708
+
653
709
  extra_headers: Send extra headers
654
710
 
655
711
  extra_query: Add additional query parameters to the request
@@ -692,6 +748,14 @@ class AsyncRulesResource(AsyncAPIResource):
692
748
  Get load balancer L7 rule
693
749
 
694
750
  Args:
751
+ project_id: Project ID
752
+
753
+ region_id: Region ID
754
+
755
+ l7policy_id: L7 policy ID
756
+
757
+ l7rule_id: L7 rule ID
758
+
695
759
  extra_headers: Send extra headers
696
760
 
697
761
  extra_query: Add additional query parameters to the request
@@ -723,7 +787,7 @@ class AsyncRulesResource(AsyncAPIResource):
723
787
  project_id: int | None = None,
724
788
  region_id: int | None = None,
725
789
  l7policy_id: str,
726
- compare_type: Literal["CONTAINS", "ENDS_WITH", "EQUAL_TO", "REGEX", "STARTS_WITH"] | Omit = omit,
790
+ compare_type: Literal["CONTAINS", "ENDS_WITH", "EQUAL_TO", "REGEX", "STARTS_WITH"],
727
791
  invert: bool | Omit = omit,
728
792
  key: str | Omit = omit,
729
793
  tags: SequenceNotStr[str] | Omit = omit,
@@ -750,19 +814,25 @@ class AsyncRulesResource(AsyncAPIResource):
750
814
  Replace load balancer L7 rule properties
751
815
 
752
816
  Args:
817
+ project_id: Project ID
818
+
819
+ region_id: Region ID
820
+
821
+ l7policy_id: L7 policy ID
822
+
823
+ l7rule_id: L7 rule ID
824
+
753
825
  compare_type: The comparison type for the L7 rule
754
826
 
755
- invert: When true the logic of the rule is inverted. For example, with invert true,
756
- 'equal to' would become 'not equal to'. Default is false.
827
+ invert: When true the logic of the rule is inverted.
757
828
 
758
- key: The key to use for the comparison. For example, the name of the cookie to
759
- evaluate.
829
+ key: The key to use for the comparison.
760
830
 
761
831
  tags: A list of simple strings assigned to the l7 rule
762
832
 
763
833
  type: The L7 rule type
764
834
 
765
- value: The value to use for the comparison. For example, the file type to compare
835
+ value: The value to use for the comparison
766
836
 
767
837
  extra_headers: Send extra headers
768
838
 
@@ -821,6 +891,7 @@ class AsyncRulesResource(AsyncAPIResource):
821
891
  key: str | Omit = omit,
822
892
  tags: SequenceNotStr[str] | Omit = omit,
823
893
  polling_interval_seconds: int | Omit = omit,
894
+ polling_timeout_seconds: int | Omit = omit,
824
895
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
825
896
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
826
897
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -849,6 +920,7 @@ class AsyncRulesResource(AsyncAPIResource):
849
920
  task_id=response.tasks[0],
850
921
  extra_headers=extra_headers,
851
922
  polling_interval_seconds=polling_interval_seconds,
923
+ polling_timeout_seconds=polling_timeout_seconds,
852
924
  )
853
925
  if not task.created_resources or not task.created_resources.l7rules or len(task.created_resources.l7rules) != 1:
854
926
  raise ValueError(f"Expected exactly one resource to be created in a task")
@@ -869,6 +941,7 @@ class AsyncRulesResource(AsyncAPIResource):
869
941
  region_id: int | None = None,
870
942
  l7policy_id: str,
871
943
  polling_interval_seconds: int | Omit = omit,
944
+ polling_timeout_seconds: int | Omit = omit,
872
945
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
873
946
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
874
947
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -895,6 +968,7 @@ class AsyncRulesResource(AsyncAPIResource):
895
968
  task_id=response.tasks[0],
896
969
  extra_headers=extra_headers,
897
970
  polling_interval_seconds=polling_interval_seconds,
971
+ polling_timeout_seconds=polling_timeout_seconds,
898
972
  )
899
973
 
900
974
  async def replace_and_poll(
@@ -920,6 +994,7 @@ class AsyncRulesResource(AsyncAPIResource):
920
994
  key: str | Omit = omit,
921
995
  tags: SequenceNotStr[str] | Omit = omit,
922
996
  polling_interval_seconds: int | Omit = omit,
997
+ polling_timeout_seconds: int | Omit = omit,
923
998
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
924
999
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
925
1000
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -952,6 +1027,7 @@ class AsyncRulesResource(AsyncAPIResource):
952
1027
  task_id=response.tasks[0],
953
1028
  extra_headers=extra_headers,
954
1029
  polling_interval_seconds=polling_interval_seconds,
1030
+ polling_timeout_seconds=polling_timeout_seconds,
955
1031
  )
956
1032
  return await self.get(
957
1033
  l7rule_id=l7rule_id,
@@ -982,6 +1058,15 @@ class RulesResourceWithRawResponse:
982
1058
  self.replace = to_raw_response_wrapper(
983
1059
  rules.replace,
984
1060
  )
1061
+ self.create_and_poll = to_raw_response_wrapper(
1062
+ rules.create_and_poll,
1063
+ )
1064
+ self.delete_and_poll = to_raw_response_wrapper(
1065
+ rules.delete_and_poll,
1066
+ )
1067
+ self.replace_and_poll = to_raw_response_wrapper(
1068
+ rules.replace_and_poll,
1069
+ )
985
1070
 
986
1071
 
987
1072
  class AsyncRulesResourceWithRawResponse:
@@ -1003,6 +1088,15 @@ class AsyncRulesResourceWithRawResponse:
1003
1088
  self.replace = async_to_raw_response_wrapper(
1004
1089
  rules.replace,
1005
1090
  )
1091
+ self.create_and_poll = async_to_raw_response_wrapper(
1092
+ rules.create_and_poll,
1093
+ )
1094
+ self.delete_and_poll = async_to_raw_response_wrapper(
1095
+ rules.delete_and_poll,
1096
+ )
1097
+ self.replace_and_poll = async_to_raw_response_wrapper(
1098
+ rules.replace_and_poll,
1099
+ )
1006
1100
 
1007
1101
 
1008
1102
  class RulesResourceWithStreamingResponse:
@@ -1024,6 +1118,15 @@ class RulesResourceWithStreamingResponse:
1024
1118
  self.replace = to_streamed_response_wrapper(
1025
1119
  rules.replace,
1026
1120
  )
1121
+ self.create_and_poll = to_streamed_response_wrapper(
1122
+ rules.create_and_poll,
1123
+ )
1124
+ self.delete_and_poll = to_streamed_response_wrapper(
1125
+ rules.delete_and_poll,
1126
+ )
1127
+ self.replace_and_poll = to_streamed_response_wrapper(
1128
+ rules.replace_and_poll,
1129
+ )
1027
1130
 
1028
1131
 
1029
1132
  class AsyncRulesResourceWithStreamingResponse:
@@ -1045,3 +1148,12 @@ class AsyncRulesResourceWithStreamingResponse:
1045
1148
  self.replace = async_to_streamed_response_wrapper(
1046
1149
  rules.replace,
1047
1150
  )
1151
+ self.create_and_poll = async_to_streamed_response_wrapper(
1152
+ rules.create_and_poll,
1153
+ )
1154
+ self.delete_and_poll = async_to_streamed_response_wrapper(
1155
+ rules.delete_and_poll,
1156
+ )
1157
+ self.replace_and_poll = async_to_streamed_response_wrapper(
1158
+ rules.replace_and_poll,
1159
+ )
@@ -23,6 +23,7 @@ from ....types.cloud.load_balancers import (
23
23
  listener_get_params,
24
24
  listener_list_params,
25
25
  listener_create_params,
26
+ listener_delete_params,
26
27
  listener_update_params,
27
28
  )
28
29
  from ....types.cloud.lb_listener_protocol import LbListenerProtocol
@@ -95,7 +96,8 @@ class ListenersResource(SyncAPIResource):
95
96
 
96
97
  allowed_cidrs: Network CIDRs from which service will be accessible
97
98
 
98
- connection_limit: Limit of the simultaneous connections
99
+ connection_limit: Limit of the simultaneous connections. If -1 is provided, it is translated to
100
+ the default value 100000.
99
101
 
100
102
  insert_x_forwarded: Add headers X-Forwarded-For, X-Forwarded-Port, X-Forwarded-Proto to requests.
101
103
  Only used with HTTP or `TERMINATED_HTTPS` protocols.
@@ -186,7 +188,8 @@ class ListenersResource(SyncAPIResource):
186
188
 
187
189
  allowed_cidrs: Network CIDRs from which service will be accessible
188
190
 
189
- connection_limit: Limit of simultaneous connections
191
+ connection_limit: Limit of simultaneous connections. If -1 is provided, it is translated to the
192
+ default value 100000.
190
193
 
191
194
  name: Load balancer listener name
192
195
 
@@ -302,6 +305,7 @@ class ListenersResource(SyncAPIResource):
302
305
  *,
303
306
  project_id: int | None = None,
304
307
  region_id: int | None = None,
308
+ delete_default_pool: bool | Omit = omit,
305
309
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
306
310
  # The extra values given here take precedence over values defined on the client or passed to this method.
307
311
  extra_headers: Headers | None = None,
@@ -319,6 +323,8 @@ class ListenersResource(SyncAPIResource):
319
323
 
320
324
  listener_id: Listener ID
321
325
 
326
+ delete_default_pool: Delete default pool attached directly to the listener.
327
+
322
328
  extra_headers: Send extra headers
323
329
 
324
330
  extra_query: Add additional query parameters to the request
@@ -336,7 +342,13 @@ class ListenersResource(SyncAPIResource):
336
342
  return self._delete(
337
343
  f"/cloud/v1/lblisteners/{project_id}/{region_id}/{listener_id}",
338
344
  options=make_request_options(
339
- extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
345
+ extra_headers=extra_headers,
346
+ extra_query=extra_query,
347
+ extra_body=extra_body,
348
+ timeout=timeout,
349
+ query=maybe_transform(
350
+ {"delete_default_pool": delete_default_pool}, listener_delete_params.ListenerDeleteParams
351
+ ),
340
352
  ),
341
353
  cast_to=TaskIDList,
342
354
  )
@@ -412,6 +424,7 @@ class ListenersResource(SyncAPIResource):
412
424
  timeout_member_data: Optional[int] | Omit = omit,
413
425
  user_list: Iterable[listener_create_params.UserList] | Omit = omit,
414
426
  polling_interval_seconds: int | Omit = omit,
427
+ polling_timeout_seconds: int | Omit = omit,
415
428
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
416
429
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
417
430
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -446,6 +459,7 @@ class ListenersResource(SyncAPIResource):
446
459
  task_id=response.tasks[0],
447
460
  extra_headers=extra_headers,
448
461
  polling_interval_seconds=polling_interval_seconds,
462
+ polling_timeout_seconds=polling_timeout_seconds,
449
463
  )
450
464
  if (
451
465
  not task.created_resources
@@ -468,6 +482,7 @@ class ListenersResource(SyncAPIResource):
468
482
  project_id: int | None = None,
469
483
  region_id: int | None = None,
470
484
  polling_interval_seconds: int | Omit = omit,
485
+ polling_timeout_seconds: int | Omit = omit,
471
486
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
472
487
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
473
488
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -493,6 +508,7 @@ class ListenersResource(SyncAPIResource):
493
508
  task_id=response.tasks[0],
494
509
  extra_headers=extra_headers,
495
510
  polling_interval_seconds=polling_interval_seconds,
511
+ polling_timeout_seconds=polling_timeout_seconds,
496
512
  )
497
513
 
498
514
  def update_and_poll(
@@ -511,6 +527,7 @@ class ListenersResource(SyncAPIResource):
511
527
  timeout_member_data: Optional[int] | Omit = omit,
512
528
  user_list: Optional[Iterable[listener_update_params.UserList]] | Omit = omit,
513
529
  polling_interval_seconds: int | Omit = omit,
530
+ polling_timeout_seconds: int | Omit = omit,
514
531
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
515
532
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
516
533
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -545,6 +562,7 @@ class ListenersResource(SyncAPIResource):
545
562
  task_id=response.tasks[0],
546
563
  extra_headers=extra_headers,
547
564
  polling_interval_seconds=polling_interval_seconds,
565
+ polling_timeout_seconds=polling_timeout_seconds,
548
566
  )
549
567
  return self.get(
550
568
  listener_id=listener_id,
@@ -618,7 +636,8 @@ class AsyncListenersResource(AsyncAPIResource):
618
636
 
619
637
  allowed_cidrs: Network CIDRs from which service will be accessible
620
638
 
621
- connection_limit: Limit of the simultaneous connections
639
+ connection_limit: Limit of the simultaneous connections. If -1 is provided, it is translated to
640
+ the default value 100000.
622
641
 
623
642
  insert_x_forwarded: Add headers X-Forwarded-For, X-Forwarded-Port, X-Forwarded-Proto to requests.
624
643
  Only used with HTTP or `TERMINATED_HTTPS` protocols.
@@ -709,7 +728,8 @@ class AsyncListenersResource(AsyncAPIResource):
709
728
 
710
729
  allowed_cidrs: Network CIDRs from which service will be accessible
711
730
 
712
- connection_limit: Limit of simultaneous connections
731
+ connection_limit: Limit of simultaneous connections. If -1 is provided, it is translated to the
732
+ default value 100000.
713
733
 
714
734
  name: Load balancer listener name
715
735
 
@@ -825,6 +845,7 @@ class AsyncListenersResource(AsyncAPIResource):
825
845
  *,
826
846
  project_id: int | None = None,
827
847
  region_id: int | None = None,
848
+ delete_default_pool: bool | Omit = omit,
828
849
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
829
850
  # The extra values given here take precedence over values defined on the client or passed to this method.
830
851
  extra_headers: Headers | None = None,
@@ -842,6 +863,8 @@ class AsyncListenersResource(AsyncAPIResource):
842
863
 
843
864
  listener_id: Listener ID
844
865
 
866
+ delete_default_pool: Delete default pool attached directly to the listener.
867
+
845
868
  extra_headers: Send extra headers
846
869
 
847
870
  extra_query: Add additional query parameters to the request
@@ -859,7 +882,13 @@ class AsyncListenersResource(AsyncAPIResource):
859
882
  return await self._delete(
860
883
  f"/cloud/v1/lblisteners/{project_id}/{region_id}/{listener_id}",
861
884
  options=make_request_options(
862
- extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
885
+ extra_headers=extra_headers,
886
+ extra_query=extra_query,
887
+ extra_body=extra_body,
888
+ timeout=timeout,
889
+ query=await async_maybe_transform(
890
+ {"delete_default_pool": delete_default_pool}, listener_delete_params.ListenerDeleteParams
891
+ ),
863
892
  ),
864
893
  cast_to=TaskIDList,
865
894
  )
@@ -935,6 +964,7 @@ class AsyncListenersResource(AsyncAPIResource):
935
964
  timeout_member_data: Optional[int] | Omit = omit,
936
965
  user_list: Iterable[listener_create_params.UserList] | Omit = omit,
937
966
  polling_interval_seconds: int | Omit = omit,
967
+ polling_timeout_seconds: int | Omit = omit,
938
968
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
939
969
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
940
970
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -969,6 +999,7 @@ class AsyncListenersResource(AsyncAPIResource):
969
999
  task_id=response.tasks[0],
970
1000
  extra_headers=extra_headers,
971
1001
  polling_interval_seconds=polling_interval_seconds,
1002
+ polling_timeout_seconds=polling_timeout_seconds,
972
1003
  )
973
1004
  if (
974
1005
  not task.created_resources
@@ -991,6 +1022,7 @@ class AsyncListenersResource(AsyncAPIResource):
991
1022
  project_id: int | None = None,
992
1023
  region_id: int | None = None,
993
1024
  polling_interval_seconds: int | Omit = omit,
1025
+ polling_timeout_seconds: int | Omit = omit,
994
1026
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
995
1027
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
996
1028
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -1016,6 +1048,7 @@ class AsyncListenersResource(AsyncAPIResource):
1016
1048
  task_id=response.tasks[0],
1017
1049
  extra_headers=extra_headers,
1018
1050
  polling_interval_seconds=polling_interval_seconds,
1051
+ polling_timeout_seconds=polling_timeout_seconds,
1019
1052
  )
1020
1053
 
1021
1054
  async def update_and_poll(
@@ -1034,6 +1067,7 @@ class AsyncListenersResource(AsyncAPIResource):
1034
1067
  timeout_member_data: Optional[int] | Omit = omit,
1035
1068
  user_list: Optional[Iterable[listener_update_params.UserList]] | Omit = omit,
1036
1069
  polling_interval_seconds: int | Omit = omit,
1070
+ polling_timeout_seconds: int | Omit = omit,
1037
1071
  timeout: float | httpx.Timeout | None | NotGiven = NOT_GIVEN,
1038
1072
  # Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
1039
1073
  # The extra values given here take precedence over values defined on the client or passed to this method.
@@ -1068,6 +1102,7 @@ class AsyncListenersResource(AsyncAPIResource):
1068
1102
  task_id=response.tasks[0],
1069
1103
  extra_headers=extra_headers,
1070
1104
  polling_interval_seconds=polling_interval_seconds,
1105
+ polling_timeout_seconds=polling_timeout_seconds,
1071
1106
  )
1072
1107
  return await self.get(
1073
1108
  listener_id=listener_id,
@@ -1097,6 +1132,15 @@ class ListenersResourceWithRawResponse:
1097
1132
  self.get = to_raw_response_wrapper(
1098
1133
  listeners.get,
1099
1134
  )
1135
+ self.create_and_poll = to_raw_response_wrapper(
1136
+ listeners.create_and_poll,
1137
+ )
1138
+ self.delete_and_poll = to_raw_response_wrapper(
1139
+ listeners.delete_and_poll,
1140
+ )
1141
+ self.update_and_poll = to_raw_response_wrapper(
1142
+ listeners.update_and_poll,
1143
+ )
1100
1144
 
1101
1145
 
1102
1146
  class AsyncListenersResourceWithRawResponse:
@@ -1118,6 +1162,15 @@ class AsyncListenersResourceWithRawResponse:
1118
1162
  self.get = async_to_raw_response_wrapper(
1119
1163
  listeners.get,
1120
1164
  )
1165
+ self.create_and_poll = async_to_raw_response_wrapper(
1166
+ listeners.create_and_poll,
1167
+ )
1168
+ self.delete_and_poll = async_to_raw_response_wrapper(
1169
+ listeners.delete_and_poll,
1170
+ )
1171
+ self.update_and_poll = async_to_raw_response_wrapper(
1172
+ listeners.update_and_poll,
1173
+ )
1121
1174
 
1122
1175
 
1123
1176
  class ListenersResourceWithStreamingResponse:
@@ -1139,6 +1192,15 @@ class ListenersResourceWithStreamingResponse:
1139
1192
  self.get = to_streamed_response_wrapper(
1140
1193
  listeners.get,
1141
1194
  )
1195
+ self.create_and_poll = to_streamed_response_wrapper(
1196
+ listeners.create_and_poll,
1197
+ )
1198
+ self.delete_and_poll = to_streamed_response_wrapper(
1199
+ listeners.delete_and_poll,
1200
+ )
1201
+ self.update_and_poll = to_streamed_response_wrapper(
1202
+ listeners.update_and_poll,
1203
+ )
1142
1204
 
1143
1205
 
1144
1206
  class AsyncListenersResourceWithStreamingResponse:
@@ -1160,3 +1222,12 @@ class AsyncListenersResourceWithStreamingResponse:
1160
1222
  self.get = async_to_streamed_response_wrapper(
1161
1223
  listeners.get,
1162
1224
  )
1225
+ self.create_and_poll = async_to_streamed_response_wrapper(
1226
+ listeners.create_and_poll,
1227
+ )
1228
+ self.delete_and_poll = async_to_streamed_response_wrapper(
1229
+ listeners.delete_and_poll,
1230
+ )
1231
+ self.update_and_poll = async_to_streamed_response_wrapper(
1232
+ listeners.update_and_poll,
1233
+ )