yandexcloud 0.353.0__py3-none-any.whl → 0.355.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 yandexcloud might be problematic. Click here for more details.

Files changed (86) hide show
  1. yandex/cloud/ai/assistants/v1/common_pb2.py +58 -30
  2. yandex/cloud/ai/assistants/v1/common_pb2.pyi +178 -3
  3. yandex/cloud/airflow/v1/cluster_pb2.py +12 -8
  4. yandex/cloud/airflow/v1/cluster_pb2.pyi +4 -0
  5. yandex/cloud/apploadbalancer/v1/virtual_host_pb2.py +32 -32
  6. yandex/cloud/apploadbalancer/v1/virtual_host_pb2.pyi +5 -1
  7. yandex/cloud/apploadbalancer/v1/virtual_host_service_pb2.py +6 -6
  8. yandex/cloud/apploadbalancer/v1/virtual_host_service_pb2.pyi +5 -1
  9. yandex/cloud/backup/v1/resource_pb2.py +2 -2
  10. yandex/cloud/backup/v1/resource_pb2.pyi +8 -0
  11. yandex/cloud/baremetal/v1alpha/configuration_service_pb2.py +12 -8
  12. yandex/cloud/baremetal/v1alpha/configuration_service_pb2.pyi +16 -2
  13. yandex/cloud/baremetal/v1alpha/disk_pb2.py +2 -2
  14. yandex/cloud/baremetal/v1alpha/disk_pb2.pyi +8 -4
  15. yandex/cloud/compute/v1/maintenance_service_pb2.py +47 -0
  16. yandex/cloud/compute/v1/maintenance_service_pb2.pyi +8 -0
  17. yandex/cloud/compute/v1/maintenance_service_pb2_grpc.py +190 -0
  18. yandex/cloud/compute/v1/maintenance_service_pb2_grpc.pyi +91 -0
  19. yandex/cloud/compute/v1/reserved_instance_pool_pb2.py +8 -4
  20. yandex/cloud/compute/v1/reserved_instance_pool_pb2.pyi +69 -2
  21. yandex/cloud/compute/v1/reserved_instance_pool_service_pb2.py +44 -20
  22. yandex/cloud/compute/v1/reserved_instance_pool_service_pb2.pyi +138 -2
  23. yandex/cloud/compute/v1/reserved_instance_pool_service_pb2_grpc.py +88 -0
  24. yandex/cloud/compute/v1/reserved_instance_pool_service_pb2_grpc.pyi +40 -0
  25. yandex/cloud/connectionmanager/v1/connection_service_pb2_grpc.py +18 -9
  26. yandex/cloud/connectionmanager/v1/connection_service_pb2_grpc.pyi +30 -6
  27. yandex/cloud/datatransfer/v1/endpoint_service_pb2.pyi +2 -4
  28. yandex/cloud/datatransfer/v1/endpoint_service_pb2_grpc.py +3 -6
  29. yandex/cloud/datatransfer/v1/endpoint_service_pb2_grpc.pyi +3 -9
  30. yandex/cloud/datatransfer/v1/transfer_service_pb2.pyi +2 -4
  31. yandex/cloud/datatransfer/v1/transfer_service_pb2_grpc.py +6 -3
  32. yandex/cloud/datatransfer/v1/transfer_service_pb2_grpc.pyi +6 -0
  33. yandex/cloud/iam/v1/oauth_client_pb2.py +39 -0
  34. yandex/cloud/iam/v1/oauth_client_pb2.pyi +85 -0
  35. yandex/cloud/iam/v1/oauth_client_pb2_grpc.py +24 -0
  36. yandex/cloud/iam/v1/oauth_client_pb2_grpc.pyi +17 -0
  37. yandex/cloud/iam/v1/oauth_client_secret_pb2.py +38 -0
  38. yandex/cloud/iam/v1/oauth_client_secret_pb2.pyi +49 -0
  39. yandex/cloud/iam/v1/oauth_client_secret_pb2_grpc.py +24 -0
  40. yandex/cloud/iam/v1/oauth_client_secret_pb2_grpc.pyi +17 -0
  41. yandex/cloud/iam/v1/oauth_client_secret_service_pb2.py +80 -0
  42. yandex/cloud/iam/v1/oauth_client_secret_service_pb2.pyi +188 -0
  43. yandex/cloud/iam/v1/oauth_client_secret_service_pb2_grpc.py +237 -0
  44. yandex/cloud/iam/v1/oauth_client_secret_service_pb2_grpc.pyi +121 -0
  45. yandex/cloud/iam/v1/oauth_client_service_pb2.py +99 -0
  46. yandex/cloud/iam/v1/oauth_client_service_pb2.pyi +257 -0
  47. yandex/cloud/iam/v1/oauth_client_service_pb2_grpc.py +281 -0
  48. yandex/cloud/iam/v1/oauth_client_service_pb2_grpc.pyi +141 -0
  49. yandex/cloud/iot/broker/v1/broker_service_pb2.py +50 -50
  50. yandex/cloud/iot/devices/v1/device_service_pb2.py +61 -61
  51. yandex/cloud/iot/devices/v1/registry_service_pb2.py +82 -82
  52. yandex/cloud/maintenance/__init__.py +0 -0
  53. yandex/cloud/maintenance/v2/__init__.py +0 -0
  54. yandex/cloud/maintenance/v2/common_pb2.py +73 -0
  55. yandex/cloud/maintenance/v2/common_pb2.pyi +324 -0
  56. yandex/cloud/maintenance/v2/common_pb2_grpc.py +24 -0
  57. yandex/cloud/maintenance/v2/common_pb2_grpc.pyi +17 -0
  58. yandex/cloud/mdb/clickhouse/v1/config/clickhouse_pb2.py +190 -150
  59. yandex/cloud/mdb/clickhouse/v1/config/clickhouse_pb2.pyi +1712 -1025
  60. yandex/cloud/mdb/clickhouse/v1/user_pb2.py +98 -86
  61. yandex/cloud/mdb/clickhouse/v1/user_pb2.pyi +1248 -792
  62. yandex/cloud/mdb/opensearch/v1/backup_pb2.py +14 -14
  63. yandex/cloud/mdb/opensearch/v1/backup_pb2.pyi +13 -1
  64. yandex/cloud/metastore/v1/cluster_pb2.py +18 -16
  65. yandex/cloud/metastore/v1/cluster_pb2.pyi +31 -1
  66. yandex/cloud/organizationmanager/v1/group_pb2.py +3 -3
  67. yandex/cloud/organizationmanager/v1/group_pb2.pyi +9 -1
  68. yandex/cloud/organizationmanager/v1/group_service_pb2.py +95 -37
  69. yandex/cloud/organizationmanager/v1/group_service_pb2.pyi +276 -0
  70. yandex/cloud/organizationmanager/v1/group_service_pb2_grpc.py +220 -0
  71. yandex/cloud/organizationmanager/v1/group_service_pb2_grpc.pyi +100 -0
  72. yandex/cloud/searchapi/v2/gen_search_service_pb2.py +10 -10
  73. yandex/cloud/searchapi/v2/gen_search_service_pb2.pyi +7 -1
  74. yandex/cloud/smartwebsecurity/v1/waf/waf_profile_pb2.py +50 -18
  75. yandex/cloud/smartwebsecurity/v1/waf/waf_profile_pb2.pyi +241 -2
  76. yandex/cloud/smartwebsecurity/v1/waf/waf_profile_service_pb2.py +18 -18
  77. yandex/cloud/smartwebsecurity/v1/waf/waf_profile_service_pb2.pyi +22 -2
  78. yandex/cloud/trino/v1/cluster_service_pb2.py +36 -36
  79. yandex/cloud/trino/v1/cluster_service_pb2.pyi +14 -2
  80. yandexcloud/__init__.py +1 -1
  81. {yandexcloud-0.353.0.dist-info → yandexcloud-0.355.0.dist-info}/METADATA +1 -1
  82. {yandexcloud-0.353.0.dist-info → yandexcloud-0.355.0.dist-info}/RECORD +86 -60
  83. {yandexcloud-0.353.0.dist-info → yandexcloud-0.355.0.dist-info}/AUTHORS +0 -0
  84. {yandexcloud-0.353.0.dist-info → yandexcloud-0.355.0.dist-info}/LICENSE +0 -0
  85. {yandexcloud-0.353.0.dist-info → yandexcloud-0.355.0.dist-info}/WHEEL +0 -0
  86. {yandexcloud-0.353.0.dist-info → yandexcloud-0.355.0.dist-info}/top_level.txt +0 -0
@@ -77,6 +77,50 @@ class ReservedInstancePool(google.protobuf.message.Message):
77
77
 
78
78
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
79
79
 
80
+ @typing.final
81
+ class SlotStats(google.protobuf.message.Message):
82
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
83
+
84
+ TOTAL_FIELD_NUMBER: builtins.int
85
+ USED_FIELD_NUMBER: builtins.int
86
+ AVAILABLE_FIELD_NUMBER: builtins.int
87
+ UNAVAILABLE_FIELD_NUMBER: builtins.int
88
+ PENDING_FIELD_NUMBER: builtins.int
89
+ total: builtins.int
90
+ """Equals to pool size (and equals to the sum of the following fields)"""
91
+ used: builtins.int
92
+ """Number of slots used by running instances"""
93
+ available: builtins.int
94
+ """Number of slots available for instances (but not currently used)"""
95
+ unavailable: builtins.int
96
+ """Number of slots unavailable for some reason (for example because of underlying host failure)"""
97
+ pending: builtins.int
98
+ """Number of slots requested for async update, but still waiting for resources and not yet available for usage"""
99
+ def __init__(
100
+ self,
101
+ *,
102
+ total: builtins.int = ...,
103
+ used: builtins.int = ...,
104
+ available: builtins.int = ...,
105
+ unavailable: builtins.int = ...,
106
+ pending: builtins.int = ...,
107
+ ) -> None: ...
108
+ def ClearField(self, field_name: typing.Literal["available", b"available", "pending", b"pending", "total", b"total", "unavailable", b"unavailable", "used", b"used"]) -> None: ...
109
+
110
+ @typing.final
111
+ class InstanceStats(google.protobuf.message.Message):
112
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
113
+
114
+ TOTAL_FIELD_NUMBER: builtins.int
115
+ total: builtins.int
116
+ """Total number of instances linked to the pool"""
117
+ def __init__(
118
+ self,
119
+ *,
120
+ total: builtins.int = ...,
121
+ ) -> None: ...
122
+ def ClearField(self, field_name: typing.Literal["total", b"total"]) -> None: ...
123
+
80
124
  @typing.final
81
125
  class LabelsEntry(google.protobuf.message.Message):
82
126
  DESCRIPTOR: google.protobuf.descriptor.Descriptor
@@ -107,6 +151,10 @@ class ReservedInstancePool(google.protobuf.message.Message):
107
151
  PRODUCT_IDS_FIELD_NUMBER: builtins.int
108
152
  NETWORK_SETTINGS_FIELD_NUMBER: builtins.int
109
153
  SIZE_FIELD_NUMBER: builtins.int
154
+ COMMITTED_SIZE_FIELD_NUMBER: builtins.int
155
+ ALLOW_OVERSUBSCRIPTION_FIELD_NUMBER: builtins.int
156
+ SLOT_STATS_FIELD_NUMBER: builtins.int
157
+ INSTANCE_STATS_FIELD_NUMBER: builtins.int
110
158
  id: builtins.str
111
159
  """ID of the pool."""
112
160
  zone_id: builtins.str
@@ -123,6 +171,13 @@ class ReservedInstancePool(google.protobuf.message.Message):
123
171
  """ID of the hardware platform configuration for pool instances."""
124
172
  size: builtins.int
125
173
  """Desired size of the pool (number of slots for instances in this pool)."""
174
+ committed_size: builtins.int
175
+ """Equals to the size field except when updates occur with allow_pending=true. In those cases, committed_size equals only the number of non-pending slots."""
176
+ allow_oversubscription: builtins.bool
177
+ """Allows the pool to contain more linked instances than the number of available slots (size without pending or unavailable slots).
178
+ While running instances are still limited by available slots, stopped instances can exceed this limit.
179
+ Warning: When this option is enabled, attempting to start more instances than the number of available slots will result in a "Not Enough Resources" error.
180
+ """
126
181
  @property
127
182
  def labels(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]:
128
183
  """Resource labels as `key:value` pairs. Maximum of 64 per resource."""
@@ -147,6 +202,14 @@ class ReservedInstancePool(google.protobuf.message.Message):
147
202
  def network_settings(self) -> yandex.cloud.compute.v1.instance_pb2.NetworkSettings:
148
203
  """Network Settings."""
149
204
 
205
+ @property
206
+ def slot_stats(self) -> global___ReservedInstancePool.SlotStats:
207
+ """Statuses of the pool slots"""
208
+
209
+ @property
210
+ def instance_stats(self) -> global___ReservedInstancePool.InstanceStats:
211
+ """Stats for instances of the pool"""
212
+
150
213
  def __init__(
151
214
  self,
152
215
  *,
@@ -164,8 +227,12 @@ class ReservedInstancePool(google.protobuf.message.Message):
164
227
  product_ids: collections.abc.Iterable[builtins.str] | None = ...,
165
228
  network_settings: yandex.cloud.compute.v1.instance_pb2.NetworkSettings | None = ...,
166
229
  size: builtins.int = ...,
230
+ committed_size: builtins.int = ...,
231
+ allow_oversubscription: builtins.bool = ...,
232
+ slot_stats: global___ReservedInstancePool.SlotStats | None = ...,
233
+ instance_stats: global___ReservedInstancePool.InstanceStats | None = ...,
167
234
  ) -> None: ...
168
- def HasField(self, field_name: typing.Literal["created_at", b"created_at", "gpu_settings", b"gpu_settings", "network_settings", b"network_settings", "resources_spec", b"resources_spec"]) -> builtins.bool: ...
169
- def ClearField(self, field_name: typing.Literal["cloud_id", b"cloud_id", "created_at", b"created_at", "description", b"description", "folder_id", b"folder_id", "gpu_settings", b"gpu_settings", "id", b"id", "labels", b"labels", "name", b"name", "network_settings", b"network_settings", "platform_id", b"platform_id", "product_ids", b"product_ids", "resources_spec", b"resources_spec", "size", b"size", "zone_id", b"zone_id"]) -> None: ...
235
+ def HasField(self, field_name: typing.Literal["created_at", b"created_at", "gpu_settings", b"gpu_settings", "instance_stats", b"instance_stats", "network_settings", b"network_settings", "resources_spec", b"resources_spec", "slot_stats", b"slot_stats"]) -> builtins.bool: ...
236
+ def ClearField(self, field_name: typing.Literal["allow_oversubscription", b"allow_oversubscription", "cloud_id", b"cloud_id", "committed_size", b"committed_size", "created_at", b"created_at", "description", b"description", "folder_id", b"folder_id", "gpu_settings", b"gpu_settings", "id", b"id", "instance_stats", b"instance_stats", "labels", b"labels", "name", b"name", "network_settings", b"network_settings", "platform_id", b"platform_id", "product_ids", b"product_ids", "resources_spec", b"resources_spec", "size", b"size", "slot_stats", b"slot_stats", "zone_id", b"zone_id"]) -> None: ...
170
237
 
171
238
  global___ReservedInstancePool = ReservedInstancePool
@@ -32,7 +32,7 @@ from yandex.cloud import validation_pb2 as yandex_dot_cloud_dot_validation__pb2
32
32
  from yandex.cloud.operation import operation_pb2 as yandex_dot_cloud_dot_operation_dot_operation__pb2
33
33
 
34
34
 
35
- DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n<yandex/cloud/compute/v1/reserved_instance_pool_service.proto\x12\x17yandex.cloud.compute.v1\x1a\x1cgoogle/api/annotations.proto\x1a google/protobuf/field_mask.proto\x1a yandex/cloud/api/operation.proto\x1a&yandex/cloud/compute/v1/instance.proto\x1a.yandex/cloud/compute/v1/instance_service.proto\x1a\x34yandex/cloud/compute/v1/reserved_instance_pool.proto\x1a\x1dyandex/cloud/validation.proto\x1a&yandex/cloud/operation/operation.proto\"Q\n\x1eGetReservedInstancePoolRequest\x12/\n\x19reserved_instance_pool_id\x18\x01 \x01(\tB\x0c\xe8\xc7\x31\x01\x8a\xc8\x31\x04<=50\"\xba\x01\n ListReservedInstancePoolsRequest\x12\x1f\n\tfolder_id\x18\x01 \x01(\tB\x0c\xe8\xc7\x31\x01\x8a\xc8\x31\x04<=50\x12\x1d\n\tpage_size\x18\x02 \x01(\x03\x42\n\xfa\xc7\x31\x06<=1000\x12\x1d\n\npage_token\x18\x03 \x01(\tB\t\x8a\xc8\x31\x05<=100\x12\x1a\n\x06\x66ilter\x18\x04 \x01(\tB\n\x8a\xc8\x31\x06<=1000\x12\x1b\n\x08order_by\x18\x05 \x01(\tB\t\x8a\xc8\x31\x05<=100\"\x8c\x01\n!ListReservedInstancePoolsResponse\x12N\n\x17reserved_instance_pools\x18\x01 \x03(\x0b\x32-.yandex.cloud.compute.v1.ReservedInstancePool\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\xc2\x05\n!CreateReservedInstancePoolRequest\x12\x33\n\x04name\x18\x01 \x01(\tB%\xf2\xc7\x31!|[a-z]([-_a-z0-9]{0,61}[a-z0-9])?\x12\x1e\n\x0b\x64\x65scription\x18\x02 \x01(\tB\t\x8a\xc8\x31\x05<=256\x12\x9b\x01\n\x06labels\x18\x03 \x03(\x0b\x32\x46.yandex.cloud.compute.v1.CreateReservedInstancePoolRequest.LabelsEntryBC\xf2\xc7\x31\x0f[-_./\\@0-9a-z]*\x82\xc8\x31\x04<=64\x8a\xc8\x31\x04<=63\xb2\xc8\x31\x1c\x12\x14[a-z][-_./\\@0-9a-z]*\x1a\x04\x31-63\x12\x1d\n\x07zone_id\x18\x04 \x01(\tB\x0c\xe8\xc7\x31\x01\x8a\xc8\x31\x04<=50\x12\x1f\n\tfolder_id\x18\x05 \x01(\tB\x0c\xe8\xc7\x31\x01\x8a\xc8\x31\x04<=50\x12\x19\n\x0bplatform_id\x18\x06 \x01(\tB\x04\xe8\xc7\x31\x01\x12\x44\n\x0eresources_spec\x18\x07 \x01(\x0b\x32&.yandex.cloud.compute.v1.ResourcesSpecB\x04\xe8\xc7\x31\x01\x12:\n\x0cgpu_settings\x18\x08 \x01(\x0b\x32$.yandex.cloud.compute.v1.GpuSettings\x12=\n\x0e\x62oot_disk_spec\x18\t \x01(\x0b\x32%.yandex.cloud.compute.v1.BootDiskSpec\x12\x42\n\x10network_settings\x18\n \x01(\x0b\x32(.yandex.cloud.compute.v1.NetworkSettings\x12\x1b\n\x04size\x18\x0b \x01(\x03\x42\r\xfa\xc7\x31\t0-1048576\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"G\n\"CreateReservedInstancePoolMetadata\x12!\n\x19reserved_instance_pool_id\x18\x01 \x01(\t\"\xc4\x03\n!UpdateReservedInstancePoolRequest\x12/\n\x19reserved_instance_pool_id\x18\x01 \x01(\tB\x0c\xe8\xc7\x31\x01\x8a\xc8\x31\x04<=50\x12/\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\x12\x33\n\x04name\x18\x03 \x01(\tB%\xf2\xc7\x31!|[a-z]([-_a-z0-9]{0,61}[a-z0-9])?\x12\x1e\n\x0b\x64\x65scription\x18\x04 \x01(\tB\t\x8a\xc8\x31\x05<=256\x12\x9b\x01\n\x06labels\x18\x05 \x03(\x0b\x32\x46.yandex.cloud.compute.v1.UpdateReservedInstancePoolRequest.LabelsEntryBC\xf2\xc7\x31\x0f[-_./\\@0-9a-z]*\x82\xc8\x31\x04<=64\x8a\xc8\x31\x04<=63\xb2\xc8\x31\x1c\x12\x14[a-z][-_./\\@0-9a-z]*\x1a\x04\x31-63\x12\x1b\n\x04size\x18\x06 \x01(\x03\x42\r\xfa\xc7\x31\t0-1048576\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"G\n\"UpdateReservedInstancePoolMetadata\x12!\n\x19reserved_instance_pool_id\x18\x01 \x01(\t\"T\n!DeleteReservedInstancePoolRequest\x12/\n\x19reserved_instance_pool_id\x18\x01 \x01(\tB\x0c\xe8\xc7\x31\x01\x8a\xc8\x31\x04<=50\"G\n\"DeleteReservedInstancePoolMetadata\x12!\n\x19reserved_instance_pool_id\x18\x01 \x01(\t\"$\n\"DeleteReservedInstancePoolResponse2\xc6\x08\n\x1bReservedInstancePoolService\x12\xb4\x01\n\x03Get\x12\x37.yandex.cloud.compute.v1.GetReservedInstancePoolRequest\x1a-.yandex.cloud.compute.v1.ReservedInstancePool\"E\x82\xd3\xe4\x93\x02?\x12=/compute/v1/reservedInstancePools/{reserved_instance_pool_id}\x12\xa8\x01\n\x04List\x12\x39.yandex.cloud.compute.v1.ListReservedInstancePoolsRequest\x1a:.yandex.cloud.compute.v1.ListReservedInstancePoolsResponse\")\x82\xd3\xe4\x93\x02#\x12!/compute/v1/reservedInstancePools\x12\xd3\x01\n\x06\x43reate\x12:.yandex.cloud.compute.v1.CreateReservedInstancePoolRequest\x1a!.yandex.cloud.operation.Operation\"j\xb2\xd2*:\n\"CreateReservedInstancePoolMetadata\x12\x14ReservedInstancePool\x82\xd3\xe4\x93\x02&\"!/compute/v1/reservedInstancePools:\x01*\x12\xf0\x01\n\x06Update\x12:.yandex.cloud.compute.v1.UpdateReservedInstancePoolRequest\x1a!.yandex.cloud.operation.Operation\"\x86\x01\xb2\xd2*:\n\"UpdateReservedInstancePoolMetadata\x12\x14ReservedInstancePool\x82\xd3\xe4\x93\x02\x42\x32=/compute/v1/reservedInstancePools/{reserved_instance_pool_id}:\x01*\x12\xfb\x01\n\x06\x44\x65lete\x12:.yandex.cloud.compute.v1.DeleteReservedInstancePoolRequest\x1a!.yandex.cloud.operation.Operation\"\x91\x01\xb2\xd2*H\n\"DeleteReservedInstancePoolMetadata\x12\"DeleteReservedInstancePoolResponse\x82\xd3\xe4\x93\x02?*=/compute/v1/reservedInstancePools/{reserved_instance_pool_id}Bb\n\x1byandex.cloud.api.compute.v1ZCgithub.com/yandex-cloud/go-genproto/yandex/cloud/compute/v1;computeb\x06proto3')
35
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n<yandex/cloud/compute/v1/reserved_instance_pool_service.proto\x12\x17yandex.cloud.compute.v1\x1a\x1cgoogle/api/annotations.proto\x1a google/protobuf/field_mask.proto\x1a yandex/cloud/api/operation.proto\x1a&yandex/cloud/compute/v1/instance.proto\x1a.yandex/cloud/compute/v1/instance_service.proto\x1a\x34yandex/cloud/compute/v1/reserved_instance_pool.proto\x1a\x1dyandex/cloud/validation.proto\x1a&yandex/cloud/operation/operation.proto\"Q\n\x1eGetReservedInstancePoolRequest\x12/\n\x19reserved_instance_pool_id\x18\x01 \x01(\tB\x0c\xe8\xc7\x31\x01\x8a\xc8\x31\x04<=50\"\xba\x01\n ListReservedInstancePoolsRequest\x12\x1f\n\tfolder_id\x18\x01 \x01(\tB\x0c\xe8\xc7\x31\x01\x8a\xc8\x31\x04<=50\x12\x1d\n\tpage_size\x18\x02 \x01(\x03\x42\n\xfa\xc7\x31\x06<=1000\x12\x1d\n\npage_token\x18\x03 \x01(\tB\t\x8a\xc8\x31\x05<=100\x12\x1a\n\x06\x66ilter\x18\x04 \x01(\tB\n\x8a\xc8\x31\x06<=1000\x12\x1b\n\x08order_by\x18\x05 \x01(\tB\t\x8a\xc8\x31\x05<=100\"\x8c\x01\n!ListReservedInstancePoolsResponse\x12N\n\x17reserved_instance_pools\x18\x01 \x03(\x0b\x32-.yandex.cloud.compute.v1.ReservedInstancePool\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\xe2\x05\n!CreateReservedInstancePoolRequest\x12\x33\n\x04name\x18\x01 \x01(\tB%\xf2\xc7\x31!|[a-z]([-_a-z0-9]{0,61}[a-z0-9])?\x12\x1e\n\x0b\x64\x65scription\x18\x02 \x01(\tB\t\x8a\xc8\x31\x05<=256\x12\x9b\x01\n\x06labels\x18\x03 \x03(\x0b\x32\x46.yandex.cloud.compute.v1.CreateReservedInstancePoolRequest.LabelsEntryBC\xf2\xc7\x31\x0f[-_./\\@0-9a-z]*\x82\xc8\x31\x04<=64\x8a\xc8\x31\x04<=63\xb2\xc8\x31\x1c\x12\x14[a-z][-_./\\@0-9a-z]*\x1a\x04\x31-63\x12\x1d\n\x07zone_id\x18\x04 \x01(\tB\x0c\xe8\xc7\x31\x01\x8a\xc8\x31\x04<=50\x12\x1f\n\tfolder_id\x18\x05 \x01(\tB\x0c\xe8\xc7\x31\x01\x8a\xc8\x31\x04<=50\x12\x19\n\x0bplatform_id\x18\x06 \x01(\tB\x04\xe8\xc7\x31\x01\x12\x44\n\x0eresources_spec\x18\x07 \x01(\x0b\x32&.yandex.cloud.compute.v1.ResourcesSpecB\x04\xe8\xc7\x31\x01\x12:\n\x0cgpu_settings\x18\x08 \x01(\x0b\x32$.yandex.cloud.compute.v1.GpuSettings\x12=\n\x0e\x62oot_disk_spec\x18\t \x01(\x0b\x32%.yandex.cloud.compute.v1.BootDiskSpec\x12\x42\n\x10network_settings\x18\n \x01(\x0b\x32(.yandex.cloud.compute.v1.NetworkSettings\x12\x1b\n\x04size\x18\x0b \x01(\x03\x42\r\xfa\xc7\x31\t0-1048576\x12\x1e\n\x16\x61llow_oversubscription\x18\x0c \x01(\x08\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"G\n\"CreateReservedInstancePoolMetadata\x12!\n\x19reserved_instance_pool_id\x18\x01 \x01(\t\"\x81\x04\n!UpdateReservedInstancePoolRequest\x12/\n\x19reserved_instance_pool_id\x18\x01 \x01(\tB\x0c\xe8\xc7\x31\x01\x8a\xc8\x31\x04<=50\x12/\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\x12\x33\n\x04name\x18\x03 \x01(\tB%\xf2\xc7\x31!|[a-z]([-_a-z0-9]{0,61}[a-z0-9])?\x12\x1e\n\x0b\x64\x65scription\x18\x04 \x01(\tB\t\x8a\xc8\x31\x05<=256\x12\x9b\x01\n\x06labels\x18\x05 \x03(\x0b\x32\x46.yandex.cloud.compute.v1.UpdateReservedInstancePoolRequest.LabelsEntryBC\xf2\xc7\x31\x0f[-_./\\@0-9a-z]*\x82\xc8\x31\x04<=64\x8a\xc8\x31\x04<=63\xb2\xc8\x31\x1c\x12\x14[a-z][-_./\\@0-9a-z]*\x1a\x04\x31-63\x12\x1b\n\x04size\x18\x06 \x01(\x03\x42\r\xfa\xc7\x31\t0-1048576\x12\x1e\n\x16\x61llow_oversubscription\x18\x07 \x01(\x08\x12\x1b\n\x13\x61llow_pending_slots\x18\x08 \x01(\x08\x1a-\n\x0bLabelsEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"G\n\"UpdateReservedInstancePoolMetadata\x12!\n\x19reserved_instance_pool_id\x18\x01 \x01(\t\"T\n!DeleteReservedInstancePoolRequest\x12/\n\x19reserved_instance_pool_id\x18\x01 \x01(\tB\x0c\xe8\xc7\x31\x01\x8a\xc8\x31\x04<=50\"G\n\"DeleteReservedInstancePoolMetadata\x12!\n\x19reserved_instance_pool_id\x18\x01 \x01(\t\"$\n\"DeleteReservedInstancePoolResponse\"\x9a\x01\n)ListReservedInstancePoolOperationsRequest\x12/\n\x19reserved_instance_pool_id\x18\x01 \x01(\tB\x0c\xe8\xc7\x31\x01\x8a\xc8\x31\x04<=50\x12\x1d\n\tpage_size\x18\x02 \x01(\x03\x42\n\xfa\xc7\x31\x06<=1000\x12\x1d\n\npage_token\x18\x03 \x01(\tB\t\x8a\xc8\x31\x05<=100\"|\n*ListReservedInstancePoolOperationsResponse\x12\x35\n\noperations\x18\x01 \x03(\x0b\x32!.yandex.cloud.operation.Operation\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\x99\x01\n(ListReservedInstancePoolInstancesRequest\x12/\n\x19reserved_instance_pool_id\x18\x01 \x01(\tB\x0c\xe8\xc7\x31\x01\x8a\xc8\x31\x04<=50\x12\x1d\n\tpage_size\x18\x02 \x01(\x03\x42\n\xfa\xc7\x31\x06<=1000\x12\x1d\n\npage_token\x18\x03 \x01(\tB\t\x8a\xc8\x31\x05<=100\"z\n)ListReservedInstancePoolInstancesResponse\x12\x34\n\tinstances\x18\x01 \x03(\x0b\x32!.yandex.cloud.compute.v1.Instance\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t2\x9e\x0c\n\x1bReservedInstancePoolService\x12\xb4\x01\n\x03Get\x12\x37.yandex.cloud.compute.v1.GetReservedInstancePoolRequest\x1a-.yandex.cloud.compute.v1.ReservedInstancePool\"E\x82\xd3\xe4\x93\x02?\x12=/compute/v1/reservedInstancePools/{reserved_instance_pool_id}\x12\xa8\x01\n\x04List\x12\x39.yandex.cloud.compute.v1.ListReservedInstancePoolsRequest\x1a:.yandex.cloud.compute.v1.ListReservedInstancePoolsResponse\")\x82\xd3\xe4\x93\x02#\x12!/compute/v1/reservedInstancePools\x12\xd3\x01\n\x06\x43reate\x12:.yandex.cloud.compute.v1.CreateReservedInstancePoolRequest\x1a!.yandex.cloud.operation.Operation\"j\xb2\xd2*:\n\"CreateReservedInstancePoolMetadata\x12\x14ReservedInstancePool\x82\xd3\xe4\x93\x02&\"!/compute/v1/reservedInstancePools:\x01*\x12\xf0\x01\n\x06Update\x12:.yandex.cloud.compute.v1.UpdateReservedInstancePoolRequest\x1a!.yandex.cloud.operation.Operation\"\x86\x01\xb2\xd2*:\n\"UpdateReservedInstancePoolMetadata\x12\x14ReservedInstancePool\x82\xd3\xe4\x93\x02\x42\x32=/compute/v1/reservedInstancePools/{reserved_instance_pool_id}:\x01*\x12\xfb\x01\n\x06\x44\x65lete\x12:.yandex.cloud.compute.v1.DeleteReservedInstancePoolRequest\x1a!.yandex.cloud.operation.Operation\"\x91\x01\xb2\xd2*H\n\"DeleteReservedInstancePoolMetadata\x12\"DeleteReservedInstancePoolResponse\x82\xd3\xe4\x93\x02?*=/compute/v1/reservedInstancePools/{reserved_instance_pool_id}\x12\xeb\x01\n\x0eListOperations\x12\x42.yandex.cloud.compute.v1.ListReservedInstancePoolOperationsRequest\x1a\x43.yandex.cloud.compute.v1.ListReservedInstancePoolOperationsResponse\"P\x82\xd3\xe4\x93\x02J\x12H/compute/v1/reservedInstancePools/{reserved_instance_pool_id}/operations\x12\xe7\x01\n\rListInstances\x12\x41.yandex.cloud.compute.v1.ListReservedInstancePoolInstancesRequest\x1a\x42.yandex.cloud.compute.v1.ListReservedInstancePoolInstancesResponse\"O\x82\xd3\xe4\x93\x02I\x12G/compute/v1/reservedInstancePools/{reserved_instance_pool_id}/instancesBb\n\x1byandex.cloud.api.compute.v1ZCgithub.com/yandex-cloud/go-genproto/yandex/cloud/compute/v1;computeb\x06proto3')
36
36
 
37
37
  _globals = globals()
38
38
  _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
@@ -84,6 +84,18 @@ if not _descriptor._USE_C_DESCRIPTORS:
84
84
  _globals['_UPDATERESERVEDINSTANCEPOOLREQUEST'].fields_by_name['size']._serialized_options = b'\372\3071\t0-1048576'
85
85
  _globals['_DELETERESERVEDINSTANCEPOOLREQUEST'].fields_by_name['reserved_instance_pool_id']._loaded_options = None
86
86
  _globals['_DELETERESERVEDINSTANCEPOOLREQUEST'].fields_by_name['reserved_instance_pool_id']._serialized_options = b'\350\3071\001\212\3101\004<=50'
87
+ _globals['_LISTRESERVEDINSTANCEPOOLOPERATIONSREQUEST'].fields_by_name['reserved_instance_pool_id']._loaded_options = None
88
+ _globals['_LISTRESERVEDINSTANCEPOOLOPERATIONSREQUEST'].fields_by_name['reserved_instance_pool_id']._serialized_options = b'\350\3071\001\212\3101\004<=50'
89
+ _globals['_LISTRESERVEDINSTANCEPOOLOPERATIONSREQUEST'].fields_by_name['page_size']._loaded_options = None
90
+ _globals['_LISTRESERVEDINSTANCEPOOLOPERATIONSREQUEST'].fields_by_name['page_size']._serialized_options = b'\372\3071\006<=1000'
91
+ _globals['_LISTRESERVEDINSTANCEPOOLOPERATIONSREQUEST'].fields_by_name['page_token']._loaded_options = None
92
+ _globals['_LISTRESERVEDINSTANCEPOOLOPERATIONSREQUEST'].fields_by_name['page_token']._serialized_options = b'\212\3101\005<=100'
93
+ _globals['_LISTRESERVEDINSTANCEPOOLINSTANCESREQUEST'].fields_by_name['reserved_instance_pool_id']._loaded_options = None
94
+ _globals['_LISTRESERVEDINSTANCEPOOLINSTANCESREQUEST'].fields_by_name['reserved_instance_pool_id']._serialized_options = b'\350\3071\001\212\3101\004<=50'
95
+ _globals['_LISTRESERVEDINSTANCEPOOLINSTANCESREQUEST'].fields_by_name['page_size']._loaded_options = None
96
+ _globals['_LISTRESERVEDINSTANCEPOOLINSTANCESREQUEST'].fields_by_name['page_size']._serialized_options = b'\372\3071\006<=1000'
97
+ _globals['_LISTRESERVEDINSTANCEPOOLINSTANCESREQUEST'].fields_by_name['page_token']._loaded_options = None
98
+ _globals['_LISTRESERVEDINSTANCEPOOLINSTANCESREQUEST'].fields_by_name['page_token']._serialized_options = b'\212\3101\005<=100'
87
99
  _globals['_RESERVEDINSTANCEPOOLSERVICE'].methods_by_name['Get']._loaded_options = None
88
100
  _globals['_RESERVEDINSTANCEPOOLSERVICE'].methods_by_name['Get']._serialized_options = b'\202\323\344\223\002?\022=/compute/v1/reservedInstancePools/{reserved_instance_pool_id}'
89
101
  _globals['_RESERVEDINSTANCEPOOLSERVICE'].methods_by_name['List']._loaded_options = None
@@ -94,6 +106,10 @@ if not _descriptor._USE_C_DESCRIPTORS:
94
106
  _globals['_RESERVEDINSTANCEPOOLSERVICE'].methods_by_name['Update']._serialized_options = b'\262\322*:\n\"UpdateReservedInstancePoolMetadata\022\024ReservedInstancePool\202\323\344\223\002B2=/compute/v1/reservedInstancePools/{reserved_instance_pool_id}:\001*'
95
107
  _globals['_RESERVEDINSTANCEPOOLSERVICE'].methods_by_name['Delete']._loaded_options = None
96
108
  _globals['_RESERVEDINSTANCEPOOLSERVICE'].methods_by_name['Delete']._serialized_options = b'\262\322*H\n\"DeleteReservedInstancePoolMetadata\022\"DeleteReservedInstancePoolResponse\202\323\344\223\002?*=/compute/v1/reservedInstancePools/{reserved_instance_pool_id}'
109
+ _globals['_RESERVEDINSTANCEPOOLSERVICE'].methods_by_name['ListOperations']._loaded_options = None
110
+ _globals['_RESERVEDINSTANCEPOOLSERVICE'].methods_by_name['ListOperations']._serialized_options = b'\202\323\344\223\002J\022H/compute/v1/reservedInstancePools/{reserved_instance_pool_id}/operations'
111
+ _globals['_RESERVEDINSTANCEPOOLSERVICE'].methods_by_name['ListInstances']._loaded_options = None
112
+ _globals['_RESERVEDINSTANCEPOOLSERVICE'].methods_by_name['ListInstances']._serialized_options = b'\202\323\344\223\002I\022G/compute/v1/reservedInstancePools/{reserved_instance_pool_id}/instances'
97
113
  _globals['_GETRESERVEDINSTANCEPOOLREQUEST']._serialized_start=400
98
114
  _globals['_GETRESERVEDINSTANCEPOOLREQUEST']._serialized_end=481
99
115
  _globals['_LISTRESERVEDINSTANCEPOOLSREQUEST']._serialized_start=484
@@ -101,23 +117,31 @@ if not _descriptor._USE_C_DESCRIPTORS:
101
117
  _globals['_LISTRESERVEDINSTANCEPOOLSRESPONSE']._serialized_start=673
102
118
  _globals['_LISTRESERVEDINSTANCEPOOLSRESPONSE']._serialized_end=813
103
119
  _globals['_CREATERESERVEDINSTANCEPOOLREQUEST']._serialized_start=816
104
- _globals['_CREATERESERVEDINSTANCEPOOLREQUEST']._serialized_end=1522
105
- _globals['_CREATERESERVEDINSTANCEPOOLREQUEST_LABELSENTRY']._serialized_start=1477
106
- _globals['_CREATERESERVEDINSTANCEPOOLREQUEST_LABELSENTRY']._serialized_end=1522
107
- _globals['_CREATERESERVEDINSTANCEPOOLMETADATA']._serialized_start=1524
108
- _globals['_CREATERESERVEDINSTANCEPOOLMETADATA']._serialized_end=1595
109
- _globals['_UPDATERESERVEDINSTANCEPOOLREQUEST']._serialized_start=1598
110
- _globals['_UPDATERESERVEDINSTANCEPOOLREQUEST']._serialized_end=2050
111
- _globals['_UPDATERESERVEDINSTANCEPOOLREQUEST_LABELSENTRY']._serialized_start=1477
112
- _globals['_UPDATERESERVEDINSTANCEPOOLREQUEST_LABELSENTRY']._serialized_end=1522
113
- _globals['_UPDATERESERVEDINSTANCEPOOLMETADATA']._serialized_start=2052
114
- _globals['_UPDATERESERVEDINSTANCEPOOLMETADATA']._serialized_end=2123
115
- _globals['_DELETERESERVEDINSTANCEPOOLREQUEST']._serialized_start=2125
116
- _globals['_DELETERESERVEDINSTANCEPOOLREQUEST']._serialized_end=2209
117
- _globals['_DELETERESERVEDINSTANCEPOOLMETADATA']._serialized_start=2211
118
- _globals['_DELETERESERVEDINSTANCEPOOLMETADATA']._serialized_end=2282
119
- _globals['_DELETERESERVEDINSTANCEPOOLRESPONSE']._serialized_start=2284
120
- _globals['_DELETERESERVEDINSTANCEPOOLRESPONSE']._serialized_end=2320
121
- _globals['_RESERVEDINSTANCEPOOLSERVICE']._serialized_start=2323
122
- _globals['_RESERVEDINSTANCEPOOLSERVICE']._serialized_end=3417
120
+ _globals['_CREATERESERVEDINSTANCEPOOLREQUEST']._serialized_end=1554
121
+ _globals['_CREATERESERVEDINSTANCEPOOLREQUEST_LABELSENTRY']._serialized_start=1509
122
+ _globals['_CREATERESERVEDINSTANCEPOOLREQUEST_LABELSENTRY']._serialized_end=1554
123
+ _globals['_CREATERESERVEDINSTANCEPOOLMETADATA']._serialized_start=1556
124
+ _globals['_CREATERESERVEDINSTANCEPOOLMETADATA']._serialized_end=1627
125
+ _globals['_UPDATERESERVEDINSTANCEPOOLREQUEST']._serialized_start=1630
126
+ _globals['_UPDATERESERVEDINSTANCEPOOLREQUEST']._serialized_end=2143
127
+ _globals['_UPDATERESERVEDINSTANCEPOOLREQUEST_LABELSENTRY']._serialized_start=1509
128
+ _globals['_UPDATERESERVEDINSTANCEPOOLREQUEST_LABELSENTRY']._serialized_end=1554
129
+ _globals['_UPDATERESERVEDINSTANCEPOOLMETADATA']._serialized_start=2145
130
+ _globals['_UPDATERESERVEDINSTANCEPOOLMETADATA']._serialized_end=2216
131
+ _globals['_DELETERESERVEDINSTANCEPOOLREQUEST']._serialized_start=2218
132
+ _globals['_DELETERESERVEDINSTANCEPOOLREQUEST']._serialized_end=2302
133
+ _globals['_DELETERESERVEDINSTANCEPOOLMETADATA']._serialized_start=2304
134
+ _globals['_DELETERESERVEDINSTANCEPOOLMETADATA']._serialized_end=2375
135
+ _globals['_DELETERESERVEDINSTANCEPOOLRESPONSE']._serialized_start=2377
136
+ _globals['_DELETERESERVEDINSTANCEPOOLRESPONSE']._serialized_end=2413
137
+ _globals['_LISTRESERVEDINSTANCEPOOLOPERATIONSREQUEST']._serialized_start=2416
138
+ _globals['_LISTRESERVEDINSTANCEPOOLOPERATIONSREQUEST']._serialized_end=2570
139
+ _globals['_LISTRESERVEDINSTANCEPOOLOPERATIONSRESPONSE']._serialized_start=2572
140
+ _globals['_LISTRESERVEDINSTANCEPOOLOPERATIONSRESPONSE']._serialized_end=2696
141
+ _globals['_LISTRESERVEDINSTANCEPOOLINSTANCESREQUEST']._serialized_start=2699
142
+ _globals['_LISTRESERVEDINSTANCEPOOLINSTANCESREQUEST']._serialized_end=2852
143
+ _globals['_LISTRESERVEDINSTANCEPOOLINSTANCESRESPONSE']._serialized_start=2854
144
+ _globals['_LISTRESERVEDINSTANCEPOOLINSTANCESRESPONSE']._serialized_end=2976
145
+ _globals['_RESERVEDINSTANCEPOOLSERVICE']._serialized_start=2979
146
+ _globals['_RESERVEDINSTANCEPOOLSERVICE']._serialized_end=4545
123
147
  # @@protoc_insertion_point(module_scope)
@@ -13,6 +13,7 @@ import typing
13
13
  import yandex.cloud.compute.v1.instance_pb2
14
14
  import yandex.cloud.compute.v1.instance_service_pb2
15
15
  import yandex.cloud.compute.v1.reserved_instance_pool_pb2
16
+ import yandex.cloud.operation.operation_pb2
16
17
 
17
18
  DESCRIPTOR: google.protobuf.descriptor.FileDescriptor
18
19
 
@@ -144,6 +145,7 @@ class CreateReservedInstancePoolRequest(google.protobuf.message.Message):
144
145
  BOOT_DISK_SPEC_FIELD_NUMBER: builtins.int
145
146
  NETWORK_SETTINGS_FIELD_NUMBER: builtins.int
146
147
  SIZE_FIELD_NUMBER: builtins.int
148
+ ALLOW_OVERSUBSCRIPTION_FIELD_NUMBER: builtins.int
147
149
  name: builtins.str
148
150
  """Name of the reserved instance pool."""
149
151
  description: builtins.str
@@ -164,6 +166,11 @@ class CreateReservedInstancePoolRequest(google.protobuf.message.Message):
164
166
  """
165
167
  size: builtins.int
166
168
  """Desired size of the pool (number of slots for instances in this pool)."""
169
+ allow_oversubscription: builtins.bool
170
+ """Allows the pool to contain more linked instances than the number of available slots (size without pending or unavailable slots).
171
+ While running instances are still limited by available slots, stopped instances can exceed this limit.
172
+ Warning: When this option is enabled, attempting to start more instances than the number of available slots will result in a "Not Enough Resources" error.
173
+ """
167
174
  @property
168
175
  def labels(self) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]:
169
176
  """Resource labels as `key:value` pairs."""
@@ -200,9 +207,10 @@ class CreateReservedInstancePoolRequest(google.protobuf.message.Message):
200
207
  boot_disk_spec: yandex.cloud.compute.v1.reserved_instance_pool_pb2.BootDiskSpec | None = ...,
201
208
  network_settings: yandex.cloud.compute.v1.instance_pb2.NetworkSettings | None = ...,
202
209
  size: builtins.int = ...,
210
+ allow_oversubscription: builtins.bool = ...,
203
211
  ) -> None: ...
204
212
  def HasField(self, field_name: typing.Literal["boot_disk_spec", b"boot_disk_spec", "gpu_settings", b"gpu_settings", "network_settings", b"network_settings", "resources_spec", b"resources_spec"]) -> builtins.bool: ...
205
- def ClearField(self, field_name: typing.Literal["boot_disk_spec", b"boot_disk_spec", "description", b"description", "folder_id", b"folder_id", "gpu_settings", b"gpu_settings", "labels", b"labels", "name", b"name", "network_settings", b"network_settings", "platform_id", b"platform_id", "resources_spec", b"resources_spec", "size", b"size", "zone_id", b"zone_id"]) -> None: ...
213
+ def ClearField(self, field_name: typing.Literal["allow_oversubscription", b"allow_oversubscription", "boot_disk_spec", b"boot_disk_spec", "description", b"description", "folder_id", b"folder_id", "gpu_settings", b"gpu_settings", "labels", b"labels", "name", b"name", "network_settings", b"network_settings", "platform_id", b"platform_id", "resources_spec", b"resources_spec", "size", b"size", "zone_id", b"zone_id"]) -> None: ...
206
214
 
207
215
  global___CreateReservedInstancePoolRequest = CreateReservedInstancePoolRequest
208
216
 
@@ -248,6 +256,8 @@ class UpdateReservedInstancePoolRequest(google.protobuf.message.Message):
248
256
  DESCRIPTION_FIELD_NUMBER: builtins.int
249
257
  LABELS_FIELD_NUMBER: builtins.int
250
258
  SIZE_FIELD_NUMBER: builtins.int
259
+ ALLOW_OVERSUBSCRIPTION_FIELD_NUMBER: builtins.int
260
+ ALLOW_PENDING_SLOTS_FIELD_NUMBER: builtins.int
251
261
  reserved_instance_pool_id: builtins.str
252
262
  """ID of the reserved instance pool to update.
253
263
  To get the reserved instance pool ID, use a [ReservedInstancePoolService.List] request.
@@ -258,6 +268,16 @@ class UpdateReservedInstancePoolRequest(google.protobuf.message.Message):
258
268
  """Description of the reserved instance pool."""
259
269
  size: builtins.int
260
270
  """Desired size of the pool."""
271
+ allow_oversubscription: builtins.bool
272
+ """Allows the pool to contain more linked instances than the number of available slots (size without pending or unavailable slots).
273
+ While running instances are still limited by available slots, stopped instances can exceed this limit.
274
+ Warning: When this option is enabled, attempting to start more instances than the number of available slots will result in a "Not Enough Resources" error.
275
+ """
276
+ allow_pending_slots: builtins.bool
277
+ """This field affects only the current request and allows size-increasing operation to complete successfully even when there are not enough resources.
278
+ In such cases, some of the new pool slots become "pending", meaning they cannot be used until resources become available.
279
+ Pending slots automatically convert to normal slots when sufficient resources are available.
280
+ """
261
281
  @property
262
282
  def update_mask(self) -> google.protobuf.field_mask_pb2.FieldMask:
263
283
  """Field mask that specifies which fields of the reserved instance pool should be updated."""
@@ -278,9 +298,11 @@ class UpdateReservedInstancePoolRequest(google.protobuf.message.Message):
278
298
  description: builtins.str = ...,
279
299
  labels: collections.abc.Mapping[builtins.str, builtins.str] | None = ...,
280
300
  size: builtins.int = ...,
301
+ allow_oversubscription: builtins.bool = ...,
302
+ allow_pending_slots: builtins.bool = ...,
281
303
  ) -> None: ...
282
304
  def HasField(self, field_name: typing.Literal["update_mask", b"update_mask"]) -> builtins.bool: ...
283
- def ClearField(self, field_name: typing.Literal["description", b"description", "labels", b"labels", "name", b"name", "reserved_instance_pool_id", b"reserved_instance_pool_id", "size", b"size", "update_mask", b"update_mask"]) -> None: ...
305
+ def ClearField(self, field_name: typing.Literal["allow_oversubscription", b"allow_oversubscription", "allow_pending_slots", b"allow_pending_slots", "description", b"description", "labels", b"labels", "name", b"name", "reserved_instance_pool_id", b"reserved_instance_pool_id", "size", b"size", "update_mask", b"update_mask"]) -> None: ...
284
306
 
285
307
  global___UpdateReservedInstancePoolRequest = UpdateReservedInstancePoolRequest
286
308
 
@@ -343,3 +365,117 @@ class DeleteReservedInstancePoolResponse(google.protobuf.message.Message):
343
365
  ) -> None: ...
344
366
 
345
367
  global___DeleteReservedInstancePoolResponse = DeleteReservedInstancePoolResponse
368
+
369
+ @typing.final
370
+ class ListReservedInstancePoolOperationsRequest(google.protobuf.message.Message):
371
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
372
+
373
+ RESERVED_INSTANCE_POOL_ID_FIELD_NUMBER: builtins.int
374
+ PAGE_SIZE_FIELD_NUMBER: builtins.int
375
+ PAGE_TOKEN_FIELD_NUMBER: builtins.int
376
+ reserved_instance_pool_id: builtins.str
377
+ """ID of the reserved instance pool to list operations for."""
378
+ page_size: builtins.int
379
+ """The maximum number of results per page to return. If the number of available
380
+ results is larger than [page_size], the service returns a [ListReservedInstancePoolOperationsResponse.next_page_token]
381
+ that can be used to get the next page of results in subsequent list requests.
382
+ """
383
+ page_token: builtins.str
384
+ """Page token. To get the next page of results, set [page_token] to the
385
+ [ListReservedInstancePoolOperationsResponse.next_page_token] returned by a previous list request.
386
+ """
387
+ def __init__(
388
+ self,
389
+ *,
390
+ reserved_instance_pool_id: builtins.str = ...,
391
+ page_size: builtins.int = ...,
392
+ page_token: builtins.str = ...,
393
+ ) -> None: ...
394
+ def ClearField(self, field_name: typing.Literal["page_size", b"page_size", "page_token", b"page_token", "reserved_instance_pool_id", b"reserved_instance_pool_id"]) -> None: ...
395
+
396
+ global___ListReservedInstancePoolOperationsRequest = ListReservedInstancePoolOperationsRequest
397
+
398
+ @typing.final
399
+ class ListReservedInstancePoolOperationsResponse(google.protobuf.message.Message):
400
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
401
+
402
+ OPERATIONS_FIELD_NUMBER: builtins.int
403
+ NEXT_PAGE_TOKEN_FIELD_NUMBER: builtins.int
404
+ next_page_token: builtins.str
405
+ """This token allows you to get the next page of results for list requests. If the number of results
406
+ is larger than [ListReservedInstancePoolOperationsRequest.page_size], use the [next_page_token] as the value
407
+ for the [ListReservedInstancePoolOperationsRequest.page_token] query parameter in the next list request.
408
+ Each subsequent list request will have its own [next_page_token] to continue paging through the results.
409
+ """
410
+ @property
411
+ def operations(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[yandex.cloud.operation.operation_pb2.Operation]:
412
+ """List of operations for the specified reserved instance pool."""
413
+
414
+ def __init__(
415
+ self,
416
+ *,
417
+ operations: collections.abc.Iterable[yandex.cloud.operation.operation_pb2.Operation] | None = ...,
418
+ next_page_token: builtins.str = ...,
419
+ ) -> None: ...
420
+ def ClearField(self, field_name: typing.Literal["next_page_token", b"next_page_token", "operations", b"operations"]) -> None: ...
421
+
422
+ global___ListReservedInstancePoolOperationsResponse = ListReservedInstancePoolOperationsResponse
423
+
424
+ @typing.final
425
+ class ListReservedInstancePoolInstancesRequest(google.protobuf.message.Message):
426
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
427
+
428
+ RESERVED_INSTANCE_POOL_ID_FIELD_NUMBER: builtins.int
429
+ PAGE_SIZE_FIELD_NUMBER: builtins.int
430
+ PAGE_TOKEN_FIELD_NUMBER: builtins.int
431
+ reserved_instance_pool_id: builtins.str
432
+ """ID of the reserved instance pool to list instances for."""
433
+ page_size: builtins.int
434
+ """The maximum number of results per page to return. If the number of available
435
+ results is larger than [page_size],
436
+ the service returns a [ListReservedInstancePoolInstancesResponse.next_page_token]
437
+ that can be used to get the next page of results in subsequent list requests.
438
+ """
439
+ page_token: builtins.str
440
+ """Page token. To get the next page of results,
441
+ set [page_token] to the [ListReservedInstancePoolInstancesResponse.next_page_token]
442
+ returned by a previous list request.
443
+ """
444
+ def __init__(
445
+ self,
446
+ *,
447
+ reserved_instance_pool_id: builtins.str = ...,
448
+ page_size: builtins.int = ...,
449
+ page_token: builtins.str = ...,
450
+ ) -> None: ...
451
+ def ClearField(self, field_name: typing.Literal["page_size", b"page_size", "page_token", b"page_token", "reserved_instance_pool_id", b"reserved_instance_pool_id"]) -> None: ...
452
+
453
+ global___ListReservedInstancePoolInstancesRequest = ListReservedInstancePoolInstancesRequest
454
+
455
+ @typing.final
456
+ class ListReservedInstancePoolInstancesResponse(google.protobuf.message.Message):
457
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
458
+
459
+ INSTANCES_FIELD_NUMBER: builtins.int
460
+ NEXT_PAGE_TOKEN_FIELD_NUMBER: builtins.int
461
+ next_page_token: builtins.str
462
+ """This token allows you to get the next page of results for list requests. If the number of results
463
+ is larger than [ListReservedInstancePoolInstancesRequest.page_size], use
464
+ the [next_page_token] as the value
465
+ for the [ListReservedInstancePoolInstancesRequest.page_token] query parameter
466
+ in the next list request. Each subsequent list request will have its own
467
+ [next_page_token] to continue paging through the results.
468
+ """
469
+ @property
470
+ def instances(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[yandex.cloud.compute.v1.instance_pb2.Instance]:
471
+ """List of reserved instance pool instances."""
472
+
473
+ def __init__(
474
+ self,
475
+ *,
476
+ instances: collections.abc.Iterable[yandex.cloud.compute.v1.instance_pb2.Instance] | None = ...,
477
+ next_page_token: builtins.str = ...,
478
+ ) -> None: ...
479
+ def ClearField(self, field_name: typing.Literal["instances", b"instances", "next_page_token", b"next_page_token"]) -> None: ...
480
+
481
+ global___ListReservedInstancePoolInstancesResponse = ListReservedInstancePoolInstancesResponse
@@ -62,6 +62,16 @@ class ReservedInstancePoolServiceStub(object):
62
62
  request_serializer=yandex_dot_cloud_dot_compute_dot_v1_dot_reserved__instance__pool__service__pb2.DeleteReservedInstancePoolRequest.SerializeToString,
63
63
  response_deserializer=yandex_dot_cloud_dot_operation_dot_operation__pb2.Operation.FromString,
64
64
  _registered_method=True)
65
+ self.ListOperations = channel.unary_unary(
66
+ '/yandex.cloud.compute.v1.ReservedInstancePoolService/ListOperations',
67
+ request_serializer=yandex_dot_cloud_dot_compute_dot_v1_dot_reserved__instance__pool__service__pb2.ListReservedInstancePoolOperationsRequest.SerializeToString,
68
+ response_deserializer=yandex_dot_cloud_dot_compute_dot_v1_dot_reserved__instance__pool__service__pb2.ListReservedInstancePoolOperationsResponse.FromString,
69
+ _registered_method=True)
70
+ self.ListInstances = channel.unary_unary(
71
+ '/yandex.cloud.compute.v1.ReservedInstancePoolService/ListInstances',
72
+ request_serializer=yandex_dot_cloud_dot_compute_dot_v1_dot_reserved__instance__pool__service__pb2.ListReservedInstancePoolInstancesRequest.SerializeToString,
73
+ response_deserializer=yandex_dot_cloud_dot_compute_dot_v1_dot_reserved__instance__pool__service__pb2.ListReservedInstancePoolInstancesResponse.FromString,
74
+ _registered_method=True)
65
75
 
66
76
 
67
77
  class ReservedInstancePoolServiceServicer(object):
@@ -106,6 +116,20 @@ class ReservedInstancePoolServiceServicer(object):
106
116
  context.set_details('Method not implemented!')
107
117
  raise NotImplementedError('Method not implemented!')
108
118
 
119
+ def ListOperations(self, request, context):
120
+ """Lists operations for the specified reserved instance pool.
121
+ """
122
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
123
+ context.set_details('Method not implemented!')
124
+ raise NotImplementedError('Method not implemented!')
125
+
126
+ def ListInstances(self, request, context):
127
+ """Retrieves the list of instances, using the specified reserved instance pool.
128
+ """
129
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
130
+ context.set_details('Method not implemented!')
131
+ raise NotImplementedError('Method not implemented!')
132
+
109
133
 
110
134
  def add_ReservedInstancePoolServiceServicer_to_server(servicer, server):
111
135
  rpc_method_handlers = {
@@ -134,6 +158,16 @@ def add_ReservedInstancePoolServiceServicer_to_server(servicer, server):
134
158
  request_deserializer=yandex_dot_cloud_dot_compute_dot_v1_dot_reserved__instance__pool__service__pb2.DeleteReservedInstancePoolRequest.FromString,
135
159
  response_serializer=yandex_dot_cloud_dot_operation_dot_operation__pb2.Operation.SerializeToString,
136
160
  ),
161
+ 'ListOperations': grpc.unary_unary_rpc_method_handler(
162
+ servicer.ListOperations,
163
+ request_deserializer=yandex_dot_cloud_dot_compute_dot_v1_dot_reserved__instance__pool__service__pb2.ListReservedInstancePoolOperationsRequest.FromString,
164
+ response_serializer=yandex_dot_cloud_dot_compute_dot_v1_dot_reserved__instance__pool__service__pb2.ListReservedInstancePoolOperationsResponse.SerializeToString,
165
+ ),
166
+ 'ListInstances': grpc.unary_unary_rpc_method_handler(
167
+ servicer.ListInstances,
168
+ request_deserializer=yandex_dot_cloud_dot_compute_dot_v1_dot_reserved__instance__pool__service__pb2.ListReservedInstancePoolInstancesRequest.FromString,
169
+ response_serializer=yandex_dot_cloud_dot_compute_dot_v1_dot_reserved__instance__pool__service__pb2.ListReservedInstancePoolInstancesResponse.SerializeToString,
170
+ ),
137
171
  }
138
172
  generic_handler = grpc.method_handlers_generic_handler(
139
173
  'yandex.cloud.compute.v1.ReservedInstancePoolService', rpc_method_handlers)
@@ -280,3 +314,57 @@ class ReservedInstancePoolService(object):
280
314
  timeout,
281
315
  metadata,
282
316
  _registered_method=True)
317
+
318
+ @staticmethod
319
+ def ListOperations(request,
320
+ target,
321
+ options=(),
322
+ channel_credentials=None,
323
+ call_credentials=None,
324
+ insecure=False,
325
+ compression=None,
326
+ wait_for_ready=None,
327
+ timeout=None,
328
+ metadata=None):
329
+ return grpc.experimental.unary_unary(
330
+ request,
331
+ target,
332
+ '/yandex.cloud.compute.v1.ReservedInstancePoolService/ListOperations',
333
+ yandex_dot_cloud_dot_compute_dot_v1_dot_reserved__instance__pool__service__pb2.ListReservedInstancePoolOperationsRequest.SerializeToString,
334
+ yandex_dot_cloud_dot_compute_dot_v1_dot_reserved__instance__pool__service__pb2.ListReservedInstancePoolOperationsResponse.FromString,
335
+ options,
336
+ channel_credentials,
337
+ insecure,
338
+ call_credentials,
339
+ compression,
340
+ wait_for_ready,
341
+ timeout,
342
+ metadata,
343
+ _registered_method=True)
344
+
345
+ @staticmethod
346
+ def ListInstances(request,
347
+ target,
348
+ options=(),
349
+ channel_credentials=None,
350
+ call_credentials=None,
351
+ insecure=False,
352
+ compression=None,
353
+ wait_for_ready=None,
354
+ timeout=None,
355
+ metadata=None):
356
+ return grpc.experimental.unary_unary(
357
+ request,
358
+ target,
359
+ '/yandex.cloud.compute.v1.ReservedInstancePoolService/ListInstances',
360
+ yandex_dot_cloud_dot_compute_dot_v1_dot_reserved__instance__pool__service__pb2.ListReservedInstancePoolInstancesRequest.SerializeToString,
361
+ yandex_dot_cloud_dot_compute_dot_v1_dot_reserved__instance__pool__service__pb2.ListReservedInstancePoolInstancesResponse.FromString,
362
+ options,
363
+ channel_credentials,
364
+ insecure,
365
+ call_credentials,
366
+ compression,
367
+ wait_for_ready,
368
+ timeout,
369
+ metadata,
370
+ _registered_method=True)
@@ -58,6 +58,18 @@ class ReservedInstancePoolServiceStub:
58
58
  ]
59
59
  """Deletes the specified reserved instance pool."""
60
60
 
61
+ ListOperations: grpc.UnaryUnaryMultiCallable[
62
+ yandex.cloud.compute.v1.reserved_instance_pool_service_pb2.ListReservedInstancePoolOperationsRequest,
63
+ yandex.cloud.compute.v1.reserved_instance_pool_service_pb2.ListReservedInstancePoolOperationsResponse,
64
+ ]
65
+ """Lists operations for the specified reserved instance pool."""
66
+
67
+ ListInstances: grpc.UnaryUnaryMultiCallable[
68
+ yandex.cloud.compute.v1.reserved_instance_pool_service_pb2.ListReservedInstancePoolInstancesRequest,
69
+ yandex.cloud.compute.v1.reserved_instance_pool_service_pb2.ListReservedInstancePoolInstancesResponse,
70
+ ]
71
+ """Retrieves the list of instances, using the specified reserved instance pool."""
72
+
61
73
  class ReservedInstancePoolServiceAsyncStub:
62
74
  """A set of methods for managing reserved instance pool resources."""
63
75
 
@@ -96,6 +108,18 @@ class ReservedInstancePoolServiceAsyncStub:
96
108
  ]
97
109
  """Deletes the specified reserved instance pool."""
98
110
 
111
+ ListOperations: grpc.aio.UnaryUnaryMultiCallable[
112
+ yandex.cloud.compute.v1.reserved_instance_pool_service_pb2.ListReservedInstancePoolOperationsRequest,
113
+ yandex.cloud.compute.v1.reserved_instance_pool_service_pb2.ListReservedInstancePoolOperationsResponse,
114
+ ]
115
+ """Lists operations for the specified reserved instance pool."""
116
+
117
+ ListInstances: grpc.aio.UnaryUnaryMultiCallable[
118
+ yandex.cloud.compute.v1.reserved_instance_pool_service_pb2.ListReservedInstancePoolInstancesRequest,
119
+ yandex.cloud.compute.v1.reserved_instance_pool_service_pb2.ListReservedInstancePoolInstancesResponse,
120
+ ]
121
+ """Retrieves the list of instances, using the specified reserved instance pool."""
122
+
99
123
  class ReservedInstancePoolServiceServicer(metaclass=abc.ABCMeta):
100
124
  """A set of methods for managing reserved instance pool resources."""
101
125
 
@@ -144,4 +168,20 @@ class ReservedInstancePoolServiceServicer(metaclass=abc.ABCMeta):
144
168
  ) -> typing.Union[yandex.cloud.operation.operation_pb2.Operation, collections.abc.Awaitable[yandex.cloud.operation.operation_pb2.Operation]]:
145
169
  """Deletes the specified reserved instance pool."""
146
170
 
171
+ @abc.abstractmethod
172
+ def ListOperations(
173
+ self,
174
+ request: yandex.cloud.compute.v1.reserved_instance_pool_service_pb2.ListReservedInstancePoolOperationsRequest,
175
+ context: _ServicerContext,
176
+ ) -> typing.Union[yandex.cloud.compute.v1.reserved_instance_pool_service_pb2.ListReservedInstancePoolOperationsResponse, collections.abc.Awaitable[yandex.cloud.compute.v1.reserved_instance_pool_service_pb2.ListReservedInstancePoolOperationsResponse]]:
177
+ """Lists operations for the specified reserved instance pool."""
178
+
179
+ @abc.abstractmethod
180
+ def ListInstances(
181
+ self,
182
+ request: yandex.cloud.compute.v1.reserved_instance_pool_service_pb2.ListReservedInstancePoolInstancesRequest,
183
+ context: _ServicerContext,
184
+ ) -> typing.Union[yandex.cloud.compute.v1.reserved_instance_pool_service_pb2.ListReservedInstancePoolInstancesResponse, collections.abc.Awaitable[yandex.cloud.compute.v1.reserved_instance_pool_service_pb2.ListReservedInstancePoolInstancesResponse]]:
185
+ """Retrieves the list of instances, using the specified reserved instance pool."""
186
+
147
187
  def add_ReservedInstancePoolServiceServicer_to_server(servicer: ReservedInstancePoolServiceServicer, server: typing.Union[grpc.Server, grpc.aio.Server]) -> None: ...