google-apis-compute_preview 0.1.0 → 0.2.0

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.
@@ -101,6 +101,401 @@ module Google
101
101
  end
102
102
  end
103
103
 
104
+ # Represents an Accelerator Interconnect resource.
105
+ class AcceleratorInterconnect
106
+ include Google::Apis::Core::Hashable
107
+
108
+ # The target topology shape (e.g. "4x4x8").
109
+ # Corresponds to the JSON property `acceleratorTopology`
110
+ # @return [String]
111
+ attr_accessor :accelerator_topology
112
+
113
+ # The annotations for the accelerator interconnect.
114
+ # Corresponds to the JSON property `annotations`
115
+ # @return [Hash<String,String>]
116
+ attr_accessor :annotations
117
+
118
+ # Output only. [Output Only] The creation time of this resource inRFC3339
119
+ # text format.
120
+ # Corresponds to the JSON property `creationTimestamp`
121
+ # @return [String]
122
+ attr_accessor :creation_timestamp
123
+
124
+ # An optional description of this resource.
125
+ # Corresponds to the JSON property `description`
126
+ # @return [String]
127
+ attr_accessor :description
128
+
129
+ # Output only. [Output Only] A unique identifier for this resource type.
130
+ # Corresponds to the JSON property `id`
131
+ # @return [Fixnum]
132
+ attr_accessor :id
133
+
134
+ # The labels for the accelerator interconnect.
135
+ # Corresponds to the JSON property `labels`
136
+ # @return [Hash<String,String>]
137
+ attr_accessor :labels
138
+
139
+ # The name of the resource. The name must be 1-63 characters
140
+ # long, and comply withRFC1035.
141
+ # Corresponds to the JSON property `name`
142
+ # @return [String]
143
+ attr_accessor :name
144
+
145
+ # Additional accelerator interconnect creation params.
146
+ # Corresponds to the JSON property `params`
147
+ # @return [Google::Apis::ComputePreview::AcceleratorInterconnectParams]
148
+ attr_accessor :params
149
+
150
+ # The reactivation mode for the accelerator interconnect.
151
+ # Corresponds to the JSON property `reactivationMode`
152
+ # @return [String]
153
+ attr_accessor :reactivation_mode
154
+
155
+ # Output only. [Output Only] The fully-qualified URL of this resource.
156
+ # Corresponds to the JSON property `selfLink`
157
+ # @return [String]
158
+ attr_accessor :self_link
159
+
160
+ # Output only. [Output Only] The fully-qualified URL of this resource containing
161
+ # its
162
+ # unique identifier.
163
+ # Corresponds to the JSON property `selfLinkWithId`
164
+ # @return [String]
165
+ attr_accessor :self_link_with_id
166
+
167
+ # Detailed status information for the interconnect resource.
168
+ # Corresponds to the JSON property `status`
169
+ # @return [Google::Apis::ComputePreview::AcceleratorInterconnectAcceleratorInterconnectStatus]
170
+ attr_accessor :status
171
+
172
+ # Output only. [Output Only] The URL of azone
173
+ # where the interconnect resides. You must specify this field as part of
174
+ # the HTTP request URL. It is not settable as a field in the request body.
175
+ # Corresponds to the JSON property `zone`
176
+ # @return [String]
177
+ attr_accessor :zone
178
+
179
+ def initialize(**args)
180
+ update!(**args)
181
+ end
182
+
183
+ # Update properties of this object
184
+ def update!(**args)
185
+ @accelerator_topology = args[:accelerator_topology] if args.key?(:accelerator_topology)
186
+ @annotations = args[:annotations] if args.key?(:annotations)
187
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
188
+ @description = args[:description] if args.key?(:description)
189
+ @id = args[:id] if args.key?(:id)
190
+ @labels = args[:labels] if args.key?(:labels)
191
+ @name = args[:name] if args.key?(:name)
192
+ @params = args[:params] if args.key?(:params)
193
+ @reactivation_mode = args[:reactivation_mode] if args.key?(:reactivation_mode)
194
+ @self_link = args[:self_link] if args.key?(:self_link)
195
+ @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
196
+ @status = args[:status] if args.key?(:status)
197
+ @zone = args[:zone] if args.key?(:zone)
198
+ end
199
+ end
200
+
201
+ # Detailed status information for the interconnect resource.
202
+ class AcceleratorInterconnectAcceleratorInterconnectStatus
203
+ include Google::Apis::Core::Hashable
204
+
205
+ # Output only. [Output Only] The accelerator type (e.g., "TPU7X").
206
+ # Corresponds to the JSON property `acceleratorType`
207
+ # @return [String]
208
+ attr_accessor :accelerator_type
209
+
210
+ # Output only. [Output Only] The current state of the interconnect.
211
+ # Corresponds to the JSON property `state`
212
+ # @return [String]
213
+ attr_accessor :state
214
+
215
+ # Holds the details of the current accelerator interconnect state.
216
+ # Corresponds to the JSON property `stateDetails`
217
+ # @return [Google::Apis::ComputePreview::AcceleratorInterconnectAcceleratorInterconnectStatusAcceleratorInterconnectStateDetails]
218
+ attr_accessor :state_details
219
+
220
+ def initialize(**args)
221
+ update!(**args)
222
+ end
223
+
224
+ # Update properties of this object
225
+ def update!(**args)
226
+ @accelerator_type = args[:accelerator_type] if args.key?(:accelerator_type)
227
+ @state = args[:state] if args.key?(:state)
228
+ @state_details = args[:state_details] if args.key?(:state_details)
229
+ end
230
+ end
231
+
232
+ # Holds the details of the current accelerator interconnect state.
233
+ class AcceleratorInterconnectAcceleratorInterconnectStatusAcceleratorInterconnectStateDetails
234
+ include Google::Apis::Core::Hashable
235
+
236
+ # Output only. Encountered errors.
237
+ # Corresponds to the JSON property `error`
238
+ # @return [Google::Apis::ComputePreview::AcceleratorInterconnectAcceleratorInterconnectStatusAcceleratorInterconnectStateDetails::Error]
239
+ attr_accessor :error
240
+
241
+ # Output only. Timestamp is shown only if there is an error.
242
+ # Corresponds to the JSON property `timestamp`
243
+ # @return [String]
244
+ attr_accessor :timestamp
245
+
246
+ def initialize(**args)
247
+ update!(**args)
248
+ end
249
+
250
+ # Update properties of this object
251
+ def update!(**args)
252
+ @error = args[:error] if args.key?(:error)
253
+ @timestamp = args[:timestamp] if args.key?(:timestamp)
254
+ end
255
+
256
+ # Output only. Encountered errors.
257
+ class Error
258
+ include Google::Apis::Core::Hashable
259
+
260
+ # [Output Only] The array of errors encountered while processing this
261
+ # operation.
262
+ # Corresponds to the JSON property `errors`
263
+ # @return [Array<Google::Apis::ComputePreview::AcceleratorInterconnectAcceleratorInterconnectStatusAcceleratorInterconnectStateDetails::Error::Error>]
264
+ attr_accessor :errors
265
+
266
+ def initialize(**args)
267
+ update!(**args)
268
+ end
269
+
270
+ # Update properties of this object
271
+ def update!(**args)
272
+ @errors = args[:errors] if args.key?(:errors)
273
+ end
274
+
275
+ # Represents a single error encountered during the processing of an
276
+ # operation.
277
+ class Error
278
+ include Google::Apis::Core::Hashable
279
+
280
+ # [Output Only] The error type identifier for this error.
281
+ # Corresponds to the JSON property `code`
282
+ # @return [String]
283
+ attr_accessor :code
284
+
285
+ # [Output Only] An optional list of messages that contain the error
286
+ # details. There is a set of defined message types to use for providing
287
+ # details.The syntax depends on the error code. For example,
288
+ # QuotaExceededInfo will have details when the error code is
289
+ # QUOTA_EXCEEDED.
290
+ # Corresponds to the JSON property `errorDetails`
291
+ # @return [Array<Google::Apis::ComputePreview::AcceleratorInterconnectAcceleratorInterconnectStatusAcceleratorInterconnectStateDetails::Error::Error::ErrorDetail>]
292
+ attr_accessor :error_details
293
+
294
+ # [Output Only] Indicates the field in the request that caused the error.
295
+ # This property is optional.
296
+ # Corresponds to the JSON property `location`
297
+ # @return [String]
298
+ attr_accessor :location
299
+
300
+ # [Output Only] An optional, human-readable error message.
301
+ # Corresponds to the JSON property `message`
302
+ # @return [String]
303
+ attr_accessor :message
304
+
305
+ def initialize(**args)
306
+ update!(**args)
307
+ end
308
+
309
+ # Update properties of this object
310
+ def update!(**args)
311
+ @code = args[:code] if args.key?(:code)
312
+ @error_details = args[:error_details] if args.key?(:error_details)
313
+ @location = args[:location] if args.key?(:location)
314
+ @message = args[:message] if args.key?(:message)
315
+ end
316
+
317
+ # Container for structured error details providing additional context
318
+ # specific to the encountered error code.
319
+ class ErrorDetail
320
+ include Google::Apis::Core::Hashable
321
+
322
+ # Describes the cause of the error with structured details.
323
+ # Example of an error when contacting the "pubsub.googleapis.com" API when it
324
+ # is not enabled:
325
+ # ` "reason": "API_DISABLED"
326
+ # "domain": "googleapis.com"
327
+ # "metadata": `
328
+ # "resource": "projects/123",
329
+ # "service": "pubsub.googleapis.com"
330
+ # `
331
+ # `
332
+ # This response indicates that the pubsub.googleapis.com API is not enabled.
333
+ # Example of an error that is returned when attempting to create a Spanner
334
+ # instance in a region that is out of stock:
335
+ # ` "reason": "STOCKOUT"
336
+ # "domain": "spanner.googleapis.com",
337
+ # "metadata": `
338
+ # "availableRegions": "us-central1,us-east2"
339
+ # `
340
+ # `
341
+ # Corresponds to the JSON property `errorInfo`
342
+ # @return [Google::Apis::ComputePreview::ErrorInfo]
343
+ attr_accessor :error_info
344
+
345
+ # Provides links to documentation or for performing an out of band action.
346
+ # For example, if a quota check failed with an error indicating the calling
347
+ # project hasn't enabled the accessed service, this can contain a URL pointing
348
+ # directly to the right place in the developer console to flip the bit.
349
+ # Corresponds to the JSON property `help`
350
+ # @return [Google::Apis::ComputePreview::Help]
351
+ attr_accessor :help
352
+
353
+ # Provides a localized error message that is safe to return to the user
354
+ # which can be attached to an RPC error.
355
+ # Corresponds to the JSON property `localizedMessage`
356
+ # @return [Google::Apis::ComputePreview::LocalizedMessage]
357
+ attr_accessor :localized_message
358
+
359
+ # Additional details for quota exceeded error for resource quota.
360
+ # Corresponds to the JSON property `quotaInfo`
361
+ # @return [Google::Apis::ComputePreview::QuotaExceededInfo]
362
+ attr_accessor :quota_info
363
+
364
+ def initialize(**args)
365
+ update!(**args)
366
+ end
367
+
368
+ # Update properties of this object
369
+ def update!(**args)
370
+ @error_info = args[:error_info] if args.key?(:error_info)
371
+ @help = args[:help] if args.key?(:help)
372
+ @localized_message = args[:localized_message] if args.key?(:localized_message)
373
+ @quota_info = args[:quota_info] if args.key?(:quota_info)
374
+ end
375
+ end
376
+ end
377
+ end
378
+ end
379
+
380
+ # Represents an Accelerator Interconnect Member Instance.
381
+ class AcceleratorInterconnectMemberInstance
382
+ include Google::Apis::Core::Hashable
383
+
384
+ # Output only. [Output Only] The VM instance resource URL (e.g.,
385
+ # https://.../instances/my-vm).
386
+ # Corresponds to the JSON property `instance`
387
+ # @return [String]
388
+ attr_accessor :instance
389
+
390
+ # Output only. [Output Only] The unique server-defined ID of the VM instance.
391
+ # Corresponds to the JSON property `instanceId`
392
+ # @return [Fixnum]
393
+ attr_accessor :instance_id
394
+
395
+ def initialize(**args)
396
+ update!(**args)
397
+ end
398
+
399
+ # Update properties of this object
400
+ def update!(**args)
401
+ @instance = args[:instance] if args.key?(:instance)
402
+ @instance_id = args[:instance_id] if args.key?(:instance_id)
403
+ end
404
+ end
405
+
406
+ # Response message for AcceleratorInterconnectMemberInstances.List.
407
+ class AcceleratorInterconnectMemberInstancesListResponse
408
+ include Google::Apis::Core::Hashable
409
+
410
+ # The list of AcceleratorInterconnectMemberInstances.
411
+ # Corresponds to the JSON property `items`
412
+ # @return [Array<Google::Apis::ComputePreview::AcceleratorInterconnectMemberInstance>]
413
+ attr_accessor :items
414
+
415
+ # Token to retrieve the next page of results.
416
+ # Corresponds to the JSON property `nextPageToken`
417
+ # @return [String]
418
+ attr_accessor :next_page_token
419
+
420
+ def initialize(**args)
421
+ update!(**args)
422
+ end
423
+
424
+ # Update properties of this object
425
+ def update!(**args)
426
+ @items = args[:items] if args.key?(:items)
427
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
428
+ end
429
+ end
430
+
431
+ # Additional accelerator interconnect creation params.
432
+ class AcceleratorInterconnectParams
433
+ include Google::Apis::Core::Hashable
434
+
435
+ # Structured representation of the capacity pool.
436
+ # Corresponds to the JSON property `capacityPool`
437
+ # @return [Google::Apis::ComputePreview::CapacityPool]
438
+ attr_accessor :capacity_pool
439
+
440
+ def initialize(**args)
441
+ update!(**args)
442
+ end
443
+
444
+ # Update properties of this object
445
+ def update!(**args)
446
+ @capacity_pool = args[:capacity_pool] if args.key?(:capacity_pool)
447
+ end
448
+ end
449
+
450
+ # Insert an Accelerator Interconnect resource.
451
+ class AcceleratorInterconnectsInsertRequest
452
+ include Google::Apis::Core::Hashable
453
+
454
+ # Represents an Accelerator Interconnect resource.
455
+ # Corresponds to the JSON property `resource`
456
+ # @return [Google::Apis::ComputePreview::AcceleratorInterconnect]
457
+ attr_accessor :resource
458
+
459
+ def initialize(**args)
460
+ update!(**args)
461
+ end
462
+
463
+ # Update properties of this object
464
+ def update!(**args)
465
+ @resource = args[:resource] if args.key?(:resource)
466
+ end
467
+ end
468
+
469
+ # Response message for AcceleratorInterconnects.List.
470
+ class AcceleratorInterconnectsList
471
+ include Google::Apis::Core::Hashable
472
+
473
+ # A list of AcceleratorInterconnect resources.
474
+ # Corresponds to the JSON property `items`
475
+ # @return [Array<Google::Apis::ComputePreview::AcceleratorInterconnect>]
476
+ attr_accessor :items
477
+
478
+ # This token allows you to get the next page of results for
479
+ # list requests. If the number of results is larger thanmaxResults, use the
480
+ # nextPageToken as a value for
481
+ # the query parameter pageToken in the next list request.
482
+ # Subsequent list requests will have their own nextPageToken to
483
+ # continue paging through the results.
484
+ # Corresponds to the JSON property `nextPageToken`
485
+ # @return [String]
486
+ attr_accessor :next_page_token
487
+
488
+ def initialize(**args)
489
+ update!(**args)
490
+ end
491
+
492
+ # Update properties of this object
493
+ def update!(**args)
494
+ @items = args[:items] if args.key?(:items)
495
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
496
+ end
497
+ end
498
+
104
499
  # Info for accelerator topologies within a densely packed reservation.
105
500
  class AcceleratorTopologiesInfo
106
501
  include Google::Apis::Core::Hashable
@@ -1522,6 +1917,12 @@ module Google
1522
1917
  # @return [Google::Apis::ComputePreview::AllocationResourceStatusHealthInfo]
1523
1918
  attr_accessor :health_info
1524
1919
 
1920
+ # The number of machines in the reservation. Only populated
1921
+ # for families where machine to host ratio is not 1:1 such as TPU8i.
1922
+ # Corresponds to the JSON property `machineCount`
1923
+ # @return [Fixnum]
1924
+ attr_accessor :machine_count
1925
+
1525
1926
  # The number of reservation blocks associated with this reservation.
1526
1927
  # Corresponds to the JSON property `reservationBlockCount`
1527
1928
  # @return [Fixnum]
@@ -1544,6 +1945,7 @@ module Google
1544
1945
  # Update properties of this object
1545
1946
  def update!(**args)
1546
1947
  @health_info = args[:health_info] if args.key?(:health_info)
1948
+ @machine_count = args[:machine_count] if args.key?(:machine_count)
1547
1949
  @reservation_block_count = args[:reservation_block_count] if args.key?(:reservation_block_count)
1548
1950
  @reservation_maintenance = args[:reservation_maintenance] if args.key?(:reservation_maintenance)
1549
1951
  @specific_sku_allocation = args[:specific_sku_allocation] if args.key?(:specific_sku_allocation)
@@ -2980,6 +3382,20 @@ module Google
2980
3382
  # @return [String]
2981
3383
  attr_accessor :predictive_method
2982
3384
 
3385
+ # The upper bound of the utilization range. Must be a float value in the
3386
+ # range ('utilization_min', 1]. A value of 0.0 is equivalent to leaving the
3387
+ # field unset.
3388
+ # Corresponds to the JSON property `utilizationMax`
3389
+ # @return [Float]
3390
+ attr_accessor :utilization_max
3391
+
3392
+ # The lower bound of the utilization range. Must be a float value in the
3393
+ # range (0, 'utilization_max']. A value of 0.0 is equivalent to leaving the
3394
+ # field unset.
3395
+ # Corresponds to the JSON property `utilizationMin`
3396
+ # @return [Float]
3397
+ attr_accessor :utilization_min
3398
+
2983
3399
  # The target CPU utilization that the autoscaler maintains. Must be
2984
3400
  # a float value in the range (0, 1]. If not specified, the default is0.6.
2985
3401
  # If the CPU level is below the target utilization, the autoscaler scales
@@ -3001,6 +3417,8 @@ module Google
3001
3417
  # Update properties of this object
3002
3418
  def update!(**args)
3003
3419
  @predictive_method = args[:predictive_method] if args.key?(:predictive_method)
3420
+ @utilization_max = args[:utilization_max] if args.key?(:utilization_max)
3421
+ @utilization_min = args[:utilization_min] if args.key?(:utilization_min)
3004
3422
  @utilization_target = args[:utilization_target] if args.key?(:utilization_target)
3005
3423
  end
3006
3424
  end
@@ -8354,6 +8772,32 @@ module Google
8354
8772
  end
8355
8773
  end
8356
8774
 
8775
+ # Structured representation of the capacity pool.
8776
+ class CapacityPool
8777
+ include Google::Apis::Core::Hashable
8778
+
8779
+ # The list of physical topology block identifiers.
8780
+ # Corresponds to the JSON property `partitionIds`
8781
+ # @return [Array<String>]
8782
+ attr_accessor :partition_ids
8783
+
8784
+ # A list of fully qualified resource names that form the logical bounds.
8785
+ # Both full and relative URIs are supported.
8786
+ # Corresponds to the JSON property `resources`
8787
+ # @return [Array<String>]
8788
+ attr_accessor :resources
8789
+
8790
+ def initialize(**args)
8791
+ update!(**args)
8792
+ end
8793
+
8794
+ # Update properties of this object
8795
+ def update!(**args)
8796
+ @partition_ids = args[:partition_ids] if args.key?(:partition_ids)
8797
+ @resources = args[:resources] if args.key?(:resources)
8798
+ end
8799
+ end
8800
+
8357
8801
  # Settings controlling the volume of requests, connections and retries to this
8358
8802
  # backend service.
8359
8803
  class CircuitBreakers
@@ -8603,7 +9047,8 @@ module Google
8603
9047
  # GENERAL_PURPOSE_N2D,GENERAL_PURPOSE_N4, GENERAL_PURPOSE_T2D,GRAPHICS_OPTIMIZED,
8604
9048
  # GRAPHICS_OPTIMIZED_G4,GRAPHICS_OPTIMIZED_G4_VGPU,MEMORY_OPTIMIZED,
8605
9049
  # MEMORY_OPTIMIZED_M3,MEMORY_OPTIMIZED_X4, STORAGE_OPTIMIZED_Z3,
8606
- # STORAGE_OPTIMIZED_Z4DS, STORAGE_OPTIMIZED_Z4DH,STORAGE_OPTIMIZED_Z4D4T. For
9050
+ # STORAGE_OPTIMIZED_Z4DS, STORAGE_OPTIMIZED_Z4DH,STORAGE_OPTIMIZED_Z4D4T,
9051
+ # STORAGE_OPTIMIZED_Z4M. For
8607
9052
  # example, type MEMORY_OPTIMIZED specifies a commitment that
8608
9053
  # applies only to eligible resources of memory optimized M1 and M2 machine
8609
9054
  # series. Type GENERAL_PURPOSE specifies a commitment that
@@ -30038,6 +30483,26 @@ module Google
30038
30483
  end
30039
30484
  end
30040
30485
 
30486
+ # [Output Only] Operation metadata for instances.troubleshoot.
30487
+ class InstancesTroubleshootOperationMetadata
30488
+ include Google::Apis::Core::Hashable
30489
+
30490
+ # Output only. [Output Only] Serialized output of the troubleshooting diagnostic
30491
+ # run.
30492
+ # Corresponds to the JSON property `troubleshootOutput`
30493
+ # @return [String]
30494
+ attr_accessor :troubleshoot_output
30495
+
30496
+ def initialize(**args)
30497
+ update!(**args)
30498
+ end
30499
+
30500
+ # Update properties of this object
30501
+ def update!(**args)
30502
+ @troubleshoot_output = args[:troubleshoot_output] if args.key?(:troubleshoot_output)
30503
+ end
30504
+ end
30505
+
30041
30506
  # Represents a InstantSnapshot resource.
30042
30507
  # You can use instant snapshots to create disk rollback points quickly..
30043
30508
  class InstantSnapshot
@@ -35432,6 +35897,33 @@ module Google
35432
35897
  end
35433
35898
  end
35434
35899
 
35900
+ # Request to rename an interconnect.
35901
+ class InterconnectsSetNameRequest
35902
+ include Google::Apis::Core::Hashable
35903
+
35904
+ # The current name of the interconnect.
35905
+ # The name must be 1-63 characters long, and comply with RFC1035.
35906
+ # Corresponds to the JSON property `currentName`
35907
+ # @return [String]
35908
+ attr_accessor :current_name
35909
+
35910
+ # The new name of the interconnect.
35911
+ # The name must be 1-63 characters long, and comply with RFC1035.
35912
+ # Corresponds to the JSON property `name`
35913
+ # @return [String]
35914
+ attr_accessor :name
35915
+
35916
+ def initialize(**args)
35917
+ update!(**args)
35918
+ end
35919
+
35920
+ # Update properties of this object
35921
+ def update!(**args)
35922
+ @current_name = args[:current_name] if args.key?(:current_name)
35923
+ @name = args[:name] if args.key?(:name)
35924
+ end
35925
+ end
35926
+
35435
35927
  # Represents a time interval, encoded as a Timestamp start (inclusive) and a
35436
35928
  # Timestamp end (exclusive).
35437
35929
  # The start must be less than or equal to the end.
@@ -38942,6 +39434,11 @@ module Google
38942
39434
  # @return [String]
38943
39435
  attr_accessor :name
38944
39436
 
39437
+ # Additional network edge security service parameters.
39438
+ # Corresponds to the JSON property `params`
39439
+ # @return [Google::Apis::ComputePreview::NetworkEdgeSecurityServiceParams]
39440
+ attr_accessor :params
39441
+
38945
39442
  # Output only. [Output Only] URL of the region where the resource resides. You
38946
39443
  # must
38947
39444
  # specify this field as part of the HTTP request URL. It is not settable as a
@@ -38979,6 +39476,7 @@ module Google
38979
39476
  @id = args[:id] if args.key?(:id)
38980
39477
  @kind = args[:kind] if args.key?(:kind)
38981
39478
  @name = args[:name] if args.key?(:name)
39479
+ @params = args[:params] if args.key?(:params)
38982
39480
  @region = args[:region] if args.key?(:region)
38983
39481
  @security_policy = args[:security_policy] if args.key?(:security_policy)
38984
39482
  @self_link = args[:self_link] if args.key?(:self_link)
@@ -39124,6 +39622,38 @@ module Google
39124
39622
  end
39125
39623
  end
39126
39624
 
39625
+ # Additional network edge security service parameters.
39626
+ class NetworkEdgeSecurityServiceParams
39627
+ include Google::Apis::Core::Hashable
39628
+
39629
+ # Tag keys/values directly bound to this resource.
39630
+ # Tag keys and values have the same definition as resource
39631
+ # manager tags. The field is allowed for INSERT
39632
+ # only. The keys/values to set on the resource should be specified in
39633
+ # either ID ` : ` or Namespaced format
39634
+ # ` : `.
39635
+ # For example the following are valid inputs:
39636
+ # * `"tagKeys/333" : "tagValues/444", "tagKeys/123" : "tagValues/456"`
39637
+ # * `"123/environment" : "production", "345/abc" : "xyz"`
39638
+ # Note:
39639
+ # * Invalid combinations of ID & namespaced format is not supported. For
39640
+ # instance: `"123/environment" : "tagValues/444"` is invalid.
39641
+ # * Inconsistent format is not supported. For instance:
39642
+ # `"tagKeys/333" : "tagValues/444", "123/env" : "prod"` is invalid.
39643
+ # Corresponds to the JSON property `resourceManagerTags`
39644
+ # @return [Hash<String,String>]
39645
+ attr_accessor :resource_manager_tags
39646
+
39647
+ def initialize(**args)
39648
+ update!(**args)
39649
+ end
39650
+
39651
+ # Update properties of this object
39652
+ def update!(**args)
39653
+ @resource_manager_tags = args[:resource_manager_tags] if args.key?(:resource_manager_tags)
39654
+ end
39655
+ end
39656
+
39127
39657
  #
39128
39658
  class NetworkEdgeSecurityServicesScopedList
39129
39659
  include Google::Apis::Core::Hashable
@@ -44294,6 +44824,11 @@ module Google
44294
44824
  # @return [Google::Apis::ComputePreview::InstancesBulkInsertOperationMetadata]
44295
44825
  attr_accessor :instances_bulk_insert_operation_metadata
44296
44826
 
44827
+ # [Output Only] Operation metadata for instances.troubleshoot.
44828
+ # Corresponds to the JSON property `instancesTroubleshootOperationMetadata`
44829
+ # @return [Google::Apis::ComputePreview::InstancesTroubleshootOperationMetadata]
44830
+ attr_accessor :instances_troubleshoot_operation_metadata
44831
+
44297
44832
  # Output only. [Output Only] Type of the resource. Always `compute#operation`
44298
44833
  # for
44299
44834
  # Operation resources.
@@ -44417,6 +44952,7 @@ module Google
44417
44952
  @id = args[:id] if args.key?(:id)
44418
44953
  @insert_time = args[:insert_time] if args.key?(:insert_time)
44419
44954
  @instances_bulk_insert_operation_metadata = args[:instances_bulk_insert_operation_metadata] if args.key?(:instances_bulk_insert_operation_metadata)
44955
+ @instances_troubleshoot_operation_metadata = args[:instances_troubleshoot_operation_metadata] if args.key?(:instances_troubleshoot_operation_metadata)
44420
44956
  @kind = args[:kind] if args.key?(:kind)
44421
44957
  @name = args[:name] if args.key?(:name)
44422
44958
  @operation_group_id = args[:operation_group_id] if args.key?(:operation_group_id)
@@ -45842,6 +46378,232 @@ module Google
45842
46378
  end
45843
46379
  end
45844
46380
 
46381
+ # Formability of a partition.
46382
+ class PartitionFormability
46383
+ include Google::Apis::Core::Hashable
46384
+
46385
+ # Topological shape (e.g., "4x4x4").
46386
+ # Corresponds to the JSON property `acceleratorTopology`
46387
+ # @return [String]
46388
+ attr_accessor :accelerator_topology
46389
+
46390
+ # Partition ID of a partition that is a direct parent in the tree hierarchy.
46391
+ # In case the partition represents a full cube, it doesn't have a parent
46392
+ # field.
46393
+ # Corresponds to the JSON property `parent`
46394
+ # @return [String]
46395
+ attr_accessor :parent
46396
+
46397
+ # Identifier for this topological block.
46398
+ # Corresponds to the JSON property `partitionId`
46399
+ # @return [String]
46400
+ attr_accessor :partition_id
46401
+
46402
+ # Status of a partition formability.
46403
+ # Corresponds to the JSON property `status`
46404
+ # @return [Google::Apis::ComputePreview::PartitionFormabilityStatus]
46405
+ attr_accessor :status
46406
+
46407
+ # The URL of the capacity subblock.
46408
+ # Corresponds to the JSON property `subblock`
46409
+ # @return [String]
46410
+ attr_accessor :subblock
46411
+
46412
+ def initialize(**args)
46413
+ update!(**args)
46414
+ end
46415
+
46416
+ # Update properties of this object
46417
+ def update!(**args)
46418
+ @accelerator_topology = args[:accelerator_topology] if args.key?(:accelerator_topology)
46419
+ @parent = args[:parent] if args.key?(:parent)
46420
+ @partition_id = args[:partition_id] if args.key?(:partition_id)
46421
+ @status = args[:status] if args.key?(:status)
46422
+ @subblock = args[:subblock] if args.key?(:subblock)
46423
+ end
46424
+ end
46425
+
46426
+ # Status of a partition formability.
46427
+ class PartitionFormabilityStatus
46428
+ include Google::Apis::Core::Hashable
46429
+
46430
+ # URL of the AcceleratorInterconnect utilizing this partition.
46431
+ # Corresponds to the JSON property `acceleratorInterconnect`
46432
+ # @return [String]
46433
+ attr_accessor :accelerator_interconnect
46434
+
46435
+ # Detailed error status if the subblock has wrong or no provisioning.
46436
+ # When set, only subblock and error are populated.
46437
+ # Corresponds to the JSON property `error`
46438
+ # @return [Google::Apis::ComputePreview::PartitionFormabilityStatus::Error]
46439
+ attr_accessor :error
46440
+
46441
+ # Physical health of the underlying infrastructure.
46442
+ # Corresponds to the JSON property `infrastructureHealth`
46443
+ # @return [String]
46444
+ attr_accessor :infrastructure_health
46445
+
46446
+ # URL of an instance provisioned in a single-host partitionID at the lowest
46447
+ # level of the partition tree. Empty if the instance is missing.
46448
+ # Corresponds to the JSON property `instance`
46449
+ # @return [String]
46450
+ attr_accessor :instance
46451
+
46452
+ # State of the instances within this partition.
46453
+ # Corresponds to the JSON property `instanceState`
46454
+ # @return [String]
46455
+ attr_accessor :instance_state
46456
+
46457
+ # Current formability state.
46458
+ # Corresponds to the JSON property `state`
46459
+ # @return [String]
46460
+ attr_accessor :state
46461
+
46462
+ # Usage state indicating if the partition is occupied.
46463
+ # Corresponds to the JSON property `usageState`
46464
+ # @return [String]
46465
+ attr_accessor :usage_state
46466
+
46467
+ def initialize(**args)
46468
+ update!(**args)
46469
+ end
46470
+
46471
+ # Update properties of this object
46472
+ def update!(**args)
46473
+ @accelerator_interconnect = args[:accelerator_interconnect] if args.key?(:accelerator_interconnect)
46474
+ @error = args[:error] if args.key?(:error)
46475
+ @infrastructure_health = args[:infrastructure_health] if args.key?(:infrastructure_health)
46476
+ @instance = args[:instance] if args.key?(:instance)
46477
+ @instance_state = args[:instance_state] if args.key?(:instance_state)
46478
+ @state = args[:state] if args.key?(:state)
46479
+ @usage_state = args[:usage_state] if args.key?(:usage_state)
46480
+ end
46481
+
46482
+ # Detailed error status if the subblock has wrong or no provisioning.
46483
+ # When set, only subblock and error are populated.
46484
+ class Error
46485
+ include Google::Apis::Core::Hashable
46486
+
46487
+ # [Output Only] The array of errors encountered while processing this
46488
+ # operation.
46489
+ # Corresponds to the JSON property `errors`
46490
+ # @return [Array<Google::Apis::ComputePreview::PartitionFormabilityStatus::Error::Error>]
46491
+ attr_accessor :errors
46492
+
46493
+ def initialize(**args)
46494
+ update!(**args)
46495
+ end
46496
+
46497
+ # Update properties of this object
46498
+ def update!(**args)
46499
+ @errors = args[:errors] if args.key?(:errors)
46500
+ end
46501
+
46502
+ # Represents a single error encountered during the processing of an
46503
+ # operation.
46504
+ class Error
46505
+ include Google::Apis::Core::Hashable
46506
+
46507
+ # [Output Only] The error type identifier for this error.
46508
+ # Corresponds to the JSON property `code`
46509
+ # @return [String]
46510
+ attr_accessor :code
46511
+
46512
+ # [Output Only] An optional list of messages that contain the error
46513
+ # details. There is a set of defined message types to use for providing
46514
+ # details.The syntax depends on the error code. For example,
46515
+ # QuotaExceededInfo will have details when the error code is
46516
+ # QUOTA_EXCEEDED.
46517
+ # Corresponds to the JSON property `errorDetails`
46518
+ # @return [Array<Google::Apis::ComputePreview::PartitionFormabilityStatus::Error::Error::ErrorDetail>]
46519
+ attr_accessor :error_details
46520
+
46521
+ # [Output Only] Indicates the field in the request that caused the error.
46522
+ # This property is optional.
46523
+ # Corresponds to the JSON property `location`
46524
+ # @return [String]
46525
+ attr_accessor :location
46526
+
46527
+ # [Output Only] An optional, human-readable error message.
46528
+ # Corresponds to the JSON property `message`
46529
+ # @return [String]
46530
+ attr_accessor :message
46531
+
46532
+ def initialize(**args)
46533
+ update!(**args)
46534
+ end
46535
+
46536
+ # Update properties of this object
46537
+ def update!(**args)
46538
+ @code = args[:code] if args.key?(:code)
46539
+ @error_details = args[:error_details] if args.key?(:error_details)
46540
+ @location = args[:location] if args.key?(:location)
46541
+ @message = args[:message] if args.key?(:message)
46542
+ end
46543
+
46544
+ # Container for structured error details providing additional context
46545
+ # specific to the encountered error code.
46546
+ class ErrorDetail
46547
+ include Google::Apis::Core::Hashable
46548
+
46549
+ # Describes the cause of the error with structured details.
46550
+ # Example of an error when contacting the "pubsub.googleapis.com" API when it
46551
+ # is not enabled:
46552
+ # ` "reason": "API_DISABLED"
46553
+ # "domain": "googleapis.com"
46554
+ # "metadata": `
46555
+ # "resource": "projects/123",
46556
+ # "service": "pubsub.googleapis.com"
46557
+ # `
46558
+ # `
46559
+ # This response indicates that the pubsub.googleapis.com API is not enabled.
46560
+ # Example of an error that is returned when attempting to create a Spanner
46561
+ # instance in a region that is out of stock:
46562
+ # ` "reason": "STOCKOUT"
46563
+ # "domain": "spanner.googleapis.com",
46564
+ # "metadata": `
46565
+ # "availableRegions": "us-central1,us-east2"
46566
+ # `
46567
+ # `
46568
+ # Corresponds to the JSON property `errorInfo`
46569
+ # @return [Google::Apis::ComputePreview::ErrorInfo]
46570
+ attr_accessor :error_info
46571
+
46572
+ # Provides links to documentation or for performing an out of band action.
46573
+ # For example, if a quota check failed with an error indicating the calling
46574
+ # project hasn't enabled the accessed service, this can contain a URL pointing
46575
+ # directly to the right place in the developer console to flip the bit.
46576
+ # Corresponds to the JSON property `help`
46577
+ # @return [Google::Apis::ComputePreview::Help]
46578
+ attr_accessor :help
46579
+
46580
+ # Provides a localized error message that is safe to return to the user
46581
+ # which can be attached to an RPC error.
46582
+ # Corresponds to the JSON property `localizedMessage`
46583
+ # @return [Google::Apis::ComputePreview::LocalizedMessage]
46584
+ attr_accessor :localized_message
46585
+
46586
+ # Additional details for quota exceeded error for resource quota.
46587
+ # Corresponds to the JSON property `quotaInfo`
46588
+ # @return [Google::Apis::ComputePreview::QuotaExceededInfo]
46589
+ attr_accessor :quota_info
46590
+
46591
+ def initialize(**args)
46592
+ update!(**args)
46593
+ end
46594
+
46595
+ # Update properties of this object
46596
+ def update!(**args)
46597
+ @error_info = args[:error_info] if args.key?(:error_info)
46598
+ @help = args[:help] if args.key?(:help)
46599
+ @localized_message = args[:localized_message] if args.key?(:localized_message)
46600
+ @quota_info = args[:quota_info] if args.key?(:quota_info)
46601
+ end
46602
+ end
46603
+ end
46604
+ end
46605
+ end
46606
+
45845
46607
  # A matcher for the path portion of the URL. The BackendService
45846
46608
  # from the longest-matched rule will serve the URL. If no rule was matched, the
45847
46609
  # default service is used.
@@ -46826,11 +47588,6 @@ module Google
46826
47588
  # @return [String]
46827
47589
  attr_accessor :name
46828
47590
 
46829
- # [Output Only] Quotas assigned to this project.
46830
- # Corresponds to the JSON property `quotas`
46831
- # @return [Array<Google::Apis::ComputePreview::Quota>]
46832
- attr_accessor :quotas
46833
-
46834
47591
  # [Output Only] Server-defined URL for the resource.
46835
47592
  # Corresponds to the JSON property `selfLink`
46836
47593
  # @return [String]
@@ -46871,7 +47628,6 @@ module Google
46871
47628
  @id = args[:id] if args.key?(:id)
46872
47629
  @kind = args[:kind] if args.key?(:kind)
46873
47630
  @name = args[:name] if args.key?(:name)
46874
- @quotas = args[:quotas] if args.key?(:quotas)
46875
47631
  @self_link = args[:self_link] if args.key?(:self_link)
46876
47632
  @usage_export_location = args[:usage_export_location] if args.key?(:usage_export_location)
46877
47633
  @vm_dns_setting = args[:vm_dns_setting] if args.key?(:vm_dns_setting)
@@ -47786,216 +48542,74 @@ module Google
47786
48542
  end
47787
48543
  end
47788
48544
 
47789
- # Represents a sub PublicDelegatedPrefix.
47790
- class PublicDelegatedPrefixPublicDelegatedSubPrefix
47791
- include Google::Apis::Core::Hashable
47792
-
47793
- # The allocatable prefix length supported by this PublicDelegatedSubPrefix.
47794
- # Corresponds to the JSON property `allocatablePrefixLength`
47795
- # @return [Fixnum]
47796
- attr_accessor :allocatable_prefix_length
47797
-
47798
- # Name of the project scoping this PublicDelegatedSubPrefix.
47799
- # Corresponds to the JSON property `delegateeProject`
47800
- # @return [String]
47801
- attr_accessor :delegatee_project
47802
-
47803
- # An optional description of this resource. Provide this property when you
47804
- # create the resource.
47805
- # Corresponds to the JSON property `description`
47806
- # @return [String]
47807
- attr_accessor :description
47808
-
47809
- # Output only. [Output Only] Whether this PDP supports enhanced IPv4 allocations.
47810
- # Applicable for IPv4 PDPs only.
47811
- # Corresponds to the JSON property `enableEnhancedIpv4Allocation`
47812
- # @return [Boolean]
47813
- attr_accessor :enable_enhanced_ipv4_allocation
47814
- alias_method :enable_enhanced_ipv4_allocation?, :enable_enhanced_ipv4_allocation
47815
-
47816
- # The IP address range, in CIDR format, represented by this sub public
47817
- # delegated prefix.
47818
- # Corresponds to the JSON property `ipCidrRange`
47819
- # @return [String]
47820
- attr_accessor :ip_cidr_range
47821
-
47822
- # Output only. [Output Only] The internet access type for IPv6 Public Delegated
47823
- # Sub
47824
- # Prefixes. Inherited from parent prefix.
47825
- # Corresponds to the JSON property `ipv6AccessType`
47826
- # @return [String]
47827
- attr_accessor :ipv6_access_type
47828
-
47829
- # Whether the sub prefix is delegated to create Address resources in the
47830
- # delegatee project.
47831
- # Corresponds to the JSON property `isAddress`
47832
- # @return [Boolean]
47833
- attr_accessor :is_address
47834
- alias_method :is_address?, :is_address
47835
-
47836
- # The PublicDelegatedSubPrefix mode for IPv6 only.
47837
- # Corresponds to the JSON property `mode`
47838
- # @return [String]
47839
- attr_accessor :mode
47840
-
47841
- # The name of the sub public delegated prefix.
47842
- # Corresponds to the JSON property `name`
47843
- # @return [String]
47844
- attr_accessor :name
47845
-
47846
- # Output only. [Output Only] The region of the sub public delegated prefix if it
47847
- # is
47848
- # regional. If absent, the sub prefix is global.
47849
- # Corresponds to the JSON property `region`
47850
- # @return [String]
47851
- attr_accessor :region
47852
-
47853
- # Output only. [Output Only] The status of the sub public delegated prefix.
47854
- # Corresponds to the JSON property `status`
47855
- # @return [String]
47856
- attr_accessor :status
47857
-
47858
- def initialize(**args)
47859
- update!(**args)
47860
- end
47861
-
47862
- # Update properties of this object
47863
- def update!(**args)
47864
- @allocatable_prefix_length = args[:allocatable_prefix_length] if args.key?(:allocatable_prefix_length)
47865
- @delegatee_project = args[:delegatee_project] if args.key?(:delegatee_project)
47866
- @description = args[:description] if args.key?(:description)
47867
- @enable_enhanced_ipv4_allocation = args[:enable_enhanced_ipv4_allocation] if args.key?(:enable_enhanced_ipv4_allocation)
47868
- @ip_cidr_range = args[:ip_cidr_range] if args.key?(:ip_cidr_range)
47869
- @ipv6_access_type = args[:ipv6_access_type] if args.key?(:ipv6_access_type)
47870
- @is_address = args[:is_address] if args.key?(:is_address)
47871
- @mode = args[:mode] if args.key?(:mode)
47872
- @name = args[:name] if args.key?(:name)
47873
- @region = args[:region] if args.key?(:region)
47874
- @status = args[:status] if args.key?(:status)
47875
- end
47876
- end
47877
-
47878
- #
47879
- class PublicDelegatedPrefixesScopedList
47880
- include Google::Apis::Core::Hashable
47881
-
47882
- # [Output Only] A list of PublicDelegatedPrefixes contained in this scope.
47883
- # Corresponds to the JSON property `publicDelegatedPrefixes`
47884
- # @return [Array<Google::Apis::ComputePreview::PublicDelegatedPrefix>]
47885
- attr_accessor :public_delegated_prefixes
47886
-
47887
- # [Output Only] Informational warning which replaces the list of
47888
- # public delegated prefixes when the list is empty.
47889
- # Corresponds to the JSON property `warning`
47890
- # @return [Google::Apis::ComputePreview::PublicDelegatedPrefixesScopedList::Warning]
47891
- attr_accessor :warning
47892
-
47893
- def initialize(**args)
47894
- update!(**args)
47895
- end
47896
-
47897
- # Update properties of this object
47898
- def update!(**args)
47899
- @public_delegated_prefixes = args[:public_delegated_prefixes] if args.key?(:public_delegated_prefixes)
47900
- @warning = args[:warning] if args.key?(:warning)
47901
- end
47902
-
47903
- # [Output Only] Informational warning which replaces the list of
47904
- # public delegated prefixes when the list is empty.
47905
- class Warning
47906
- include Google::Apis::Core::Hashable
47907
-
47908
- # [Output Only] A warning code, if applicable. For example, Compute
47909
- # Engine returns NO_RESULTS_ON_PAGE if there
47910
- # are no results in the response.
47911
- # Corresponds to the JSON property `code`
47912
- # @return [String]
47913
- attr_accessor :code
47914
-
47915
- # [Output Only] Metadata about this warning in key:
47916
- # value format. For example:
47917
- # "data": [
47918
- # `
47919
- # "key": "scope",
47920
- # "value": "zones/us-east1-d"
47921
- # `]
47922
- # Corresponds to the JSON property `data`
47923
- # @return [Array<Google::Apis::ComputePreview::PublicDelegatedPrefixesScopedList::Warning::Datum>]
47924
- attr_accessor :data
47925
-
47926
- # [Output Only] A human-readable description of the warning code.
47927
- # Corresponds to the JSON property `message`
47928
- # @return [String]
47929
- attr_accessor :message
47930
-
47931
- def initialize(**args)
47932
- update!(**args)
47933
- end
47934
-
47935
- # Update properties of this object
47936
- def update!(**args)
47937
- @code = args[:code] if args.key?(:code)
47938
- @data = args[:data] if args.key?(:data)
47939
- @message = args[:message] if args.key?(:message)
47940
- end
47941
-
47942
- #
47943
- class Datum
47944
- include Google::Apis::Core::Hashable
47945
-
47946
- # [Output Only] A key that provides more detail on the warning being
47947
- # returned. For example, for warnings where there are no results in a list
47948
- # request for a particular zone, this key might be scope and
47949
- # the key value might be the zone name. Other examples might be a key
47950
- # indicating a deprecated resource and a suggested replacement, or a
47951
- # warning about invalid network settings (for example, if an instance
47952
- # attempts to perform IP forwarding but is not enabled for IP forwarding).
47953
- # Corresponds to the JSON property `key`
47954
- # @return [String]
47955
- attr_accessor :key
47956
-
47957
- # [Output Only] A warning data value corresponding to the key.
47958
- # Corresponds to the JSON property `value`
47959
- # @return [String]
47960
- attr_accessor :value
47961
-
47962
- def initialize(**args)
47963
- update!(**args)
47964
- end
47965
-
47966
- # Update properties of this object
47967
- def update!(**args)
47968
- @key = args[:key] if args.key?(:key)
47969
- @value = args[:value] if args.key?(:value)
47970
- end
47971
- end
47972
- end
47973
- end
47974
-
47975
- # A quotas entry.
47976
- class Quota
48545
+ # Represents a sub PublicDelegatedPrefix.
48546
+ class PublicDelegatedPrefixPublicDelegatedSubPrefix
47977
48547
  include Google::Apis::Core::Hashable
47978
48548
 
47979
- # [Output Only] Quota limit for this metric.
47980
- # Corresponds to the JSON property `limit`
47981
- # @return [Float]
47982
- attr_accessor :limit
48549
+ # The allocatable prefix length supported by this PublicDelegatedSubPrefix.
48550
+ # Corresponds to the JSON property `allocatablePrefixLength`
48551
+ # @return [Fixnum]
48552
+ attr_accessor :allocatable_prefix_length
47983
48553
 
47984
- # [Output Only] Name of the quota metric.
47985
- # Corresponds to the JSON property `metric`
48554
+ # Name of the project scoping this PublicDelegatedSubPrefix.
48555
+ # Corresponds to the JSON property `delegateeProject`
47986
48556
  # @return [String]
47987
- attr_accessor :metric
48557
+ attr_accessor :delegatee_project
47988
48558
 
47989
- # [Output Only] Owning resource. This is the resource on which this quota
47990
- # is applied.
47991
- # Corresponds to the JSON property `owner`
48559
+ # An optional description of this resource. Provide this property when you
48560
+ # create the resource.
48561
+ # Corresponds to the JSON property `description`
47992
48562
  # @return [String]
47993
- attr_accessor :owner
48563
+ attr_accessor :description
47994
48564
 
47995
- # [Output Only] Current usage of this metric.
47996
- # Corresponds to the JSON property `usage`
47997
- # @return [Float]
47998
- attr_accessor :usage
48565
+ # Output only. [Output Only] Whether this PDP supports enhanced IPv4 allocations.
48566
+ # Applicable for IPv4 PDPs only.
48567
+ # Corresponds to the JSON property `enableEnhancedIpv4Allocation`
48568
+ # @return [Boolean]
48569
+ attr_accessor :enable_enhanced_ipv4_allocation
48570
+ alias_method :enable_enhanced_ipv4_allocation?, :enable_enhanced_ipv4_allocation
48571
+
48572
+ # The IP address range, in CIDR format, represented by this sub public
48573
+ # delegated prefix.
48574
+ # Corresponds to the JSON property `ipCidrRange`
48575
+ # @return [String]
48576
+ attr_accessor :ip_cidr_range
48577
+
48578
+ # Output only. [Output Only] The internet access type for IPv6 Public Delegated
48579
+ # Sub
48580
+ # Prefixes. Inherited from parent prefix.
48581
+ # Corresponds to the JSON property `ipv6AccessType`
48582
+ # @return [String]
48583
+ attr_accessor :ipv6_access_type
48584
+
48585
+ # Whether the sub prefix is delegated to create Address resources in the
48586
+ # delegatee project.
48587
+ # Corresponds to the JSON property `isAddress`
48588
+ # @return [Boolean]
48589
+ attr_accessor :is_address
48590
+ alias_method :is_address?, :is_address
48591
+
48592
+ # The PublicDelegatedSubPrefix mode for IPv6 only.
48593
+ # Corresponds to the JSON property `mode`
48594
+ # @return [String]
48595
+ attr_accessor :mode
48596
+
48597
+ # The name of the sub public delegated prefix.
48598
+ # Corresponds to the JSON property `name`
48599
+ # @return [String]
48600
+ attr_accessor :name
48601
+
48602
+ # Output only. [Output Only] The region of the sub public delegated prefix if it
48603
+ # is
48604
+ # regional. If absent, the sub prefix is global.
48605
+ # Corresponds to the JSON property `region`
48606
+ # @return [String]
48607
+ attr_accessor :region
48608
+
48609
+ # Output only. [Output Only] The status of the sub public delegated prefix.
48610
+ # Corresponds to the JSON property `status`
48611
+ # @return [String]
48612
+ attr_accessor :status
47999
48613
 
48000
48614
  def initialize(**args)
48001
48615
  update!(**args)
@@ -48003,10 +48617,165 @@ module Google
48003
48617
 
48004
48618
  # Update properties of this object
48005
48619
  def update!(**args)
48006
- @limit = args[:limit] if args.key?(:limit)
48007
- @metric = args[:metric] if args.key?(:metric)
48008
- @owner = args[:owner] if args.key?(:owner)
48009
- @usage = args[:usage] if args.key?(:usage)
48620
+ @allocatable_prefix_length = args[:allocatable_prefix_length] if args.key?(:allocatable_prefix_length)
48621
+ @delegatee_project = args[:delegatee_project] if args.key?(:delegatee_project)
48622
+ @description = args[:description] if args.key?(:description)
48623
+ @enable_enhanced_ipv4_allocation = args[:enable_enhanced_ipv4_allocation] if args.key?(:enable_enhanced_ipv4_allocation)
48624
+ @ip_cidr_range = args[:ip_cidr_range] if args.key?(:ip_cidr_range)
48625
+ @ipv6_access_type = args[:ipv6_access_type] if args.key?(:ipv6_access_type)
48626
+ @is_address = args[:is_address] if args.key?(:is_address)
48627
+ @mode = args[:mode] if args.key?(:mode)
48628
+ @name = args[:name] if args.key?(:name)
48629
+ @region = args[:region] if args.key?(:region)
48630
+ @status = args[:status] if args.key?(:status)
48631
+ end
48632
+ end
48633
+
48634
+ #
48635
+ class PublicDelegatedPrefixesScopedList
48636
+ include Google::Apis::Core::Hashable
48637
+
48638
+ # [Output Only] A list of PublicDelegatedPrefixes contained in this scope.
48639
+ # Corresponds to the JSON property `publicDelegatedPrefixes`
48640
+ # @return [Array<Google::Apis::ComputePreview::PublicDelegatedPrefix>]
48641
+ attr_accessor :public_delegated_prefixes
48642
+
48643
+ # [Output Only] Informational warning which replaces the list of
48644
+ # public delegated prefixes when the list is empty.
48645
+ # Corresponds to the JSON property `warning`
48646
+ # @return [Google::Apis::ComputePreview::PublicDelegatedPrefixesScopedList::Warning]
48647
+ attr_accessor :warning
48648
+
48649
+ def initialize(**args)
48650
+ update!(**args)
48651
+ end
48652
+
48653
+ # Update properties of this object
48654
+ def update!(**args)
48655
+ @public_delegated_prefixes = args[:public_delegated_prefixes] if args.key?(:public_delegated_prefixes)
48656
+ @warning = args[:warning] if args.key?(:warning)
48657
+ end
48658
+
48659
+ # [Output Only] Informational warning which replaces the list of
48660
+ # public delegated prefixes when the list is empty.
48661
+ class Warning
48662
+ include Google::Apis::Core::Hashable
48663
+
48664
+ # [Output Only] A warning code, if applicable. For example, Compute
48665
+ # Engine returns NO_RESULTS_ON_PAGE if there
48666
+ # are no results in the response.
48667
+ # Corresponds to the JSON property `code`
48668
+ # @return [String]
48669
+ attr_accessor :code
48670
+
48671
+ # [Output Only] Metadata about this warning in key:
48672
+ # value format. For example:
48673
+ # "data": [
48674
+ # `
48675
+ # "key": "scope",
48676
+ # "value": "zones/us-east1-d"
48677
+ # `]
48678
+ # Corresponds to the JSON property `data`
48679
+ # @return [Array<Google::Apis::ComputePreview::PublicDelegatedPrefixesScopedList::Warning::Datum>]
48680
+ attr_accessor :data
48681
+
48682
+ # [Output Only] A human-readable description of the warning code.
48683
+ # Corresponds to the JSON property `message`
48684
+ # @return [String]
48685
+ attr_accessor :message
48686
+
48687
+ def initialize(**args)
48688
+ update!(**args)
48689
+ end
48690
+
48691
+ # Update properties of this object
48692
+ def update!(**args)
48693
+ @code = args[:code] if args.key?(:code)
48694
+ @data = args[:data] if args.key?(:data)
48695
+ @message = args[:message] if args.key?(:message)
48696
+ end
48697
+
48698
+ #
48699
+ class Datum
48700
+ include Google::Apis::Core::Hashable
48701
+
48702
+ # [Output Only] A key that provides more detail on the warning being
48703
+ # returned. For example, for warnings where there are no results in a list
48704
+ # request for a particular zone, this key might be scope and
48705
+ # the key value might be the zone name. Other examples might be a key
48706
+ # indicating a deprecated resource and a suggested replacement, or a
48707
+ # warning about invalid network settings (for example, if an instance
48708
+ # attempts to perform IP forwarding but is not enabled for IP forwarding).
48709
+ # Corresponds to the JSON property `key`
48710
+ # @return [String]
48711
+ attr_accessor :key
48712
+
48713
+ # [Output Only] A warning data value corresponding to the key.
48714
+ # Corresponds to the JSON property `value`
48715
+ # @return [String]
48716
+ attr_accessor :value
48717
+
48718
+ def initialize(**args)
48719
+ update!(**args)
48720
+ end
48721
+
48722
+ # Update properties of this object
48723
+ def update!(**args)
48724
+ @key = args[:key] if args.key?(:key)
48725
+ @value = args[:value] if args.key?(:value)
48726
+ end
48727
+ end
48728
+ end
48729
+ end
48730
+
48731
+ # Query formability of a given set of reservation subblocks.
48732
+ class QueryFormabilityRequest
48733
+ include Google::Apis::Core::Hashable
48734
+
48735
+ # Explicit list of fully qualified reservation subblock resource URLs. Both
48736
+ # full and relative URIs are supported.
48737
+ # Corresponds to the JSON property `subblocks`
48738
+ # @return [Array<String>]
48739
+ attr_accessor :subblocks
48740
+
48741
+ def initialize(**args)
48742
+ update!(**args)
48743
+ end
48744
+
48745
+ # Update properties of this object
48746
+ def update!(**args)
48747
+ @subblocks = args[:subblocks] if args.key?(:subblocks)
48748
+ end
48749
+ end
48750
+
48751
+ # Response message for AcceleratorInterconnects.QueryFormability.
48752
+ class QueryFormabilityResponse
48753
+ include Google::Apis::Core::Hashable
48754
+
48755
+ # Flattened collection of hierarchical partitions and their formability
48756
+ # across all requested subblocks.
48757
+ # Corresponds to the JSON property `items`
48758
+ # @return [Array<Google::Apis::ComputePreview::PartitionFormability>]
48759
+ attr_accessor :items
48760
+
48761
+ # This token allows you to get the next page of results for
48762
+ # list requests. If the number of results is larger thanmaxResults, use the
48763
+ # nextPageToken as a value for
48764
+ # the query parameter pageToken in the next list request.
48765
+ # Subsequent list requests will have their own nextPageToken to
48766
+ # continue paging through the results.
48767
+ # Corresponds to the JSON property `nextPageToken`
48768
+ # @return [String]
48769
+ attr_accessor :next_page_token
48770
+
48771
+ def initialize(**args)
48772
+ update!(**args)
48773
+ end
48774
+
48775
+ # Update properties of this object
48776
+ def update!(**args)
48777
+ @items = args[:items] if args.key?(:items)
48778
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
48010
48779
  end
48011
48780
  end
48012
48781
 
@@ -48200,11 +48969,6 @@ module Google
48200
48969
  # @return [Google::Apis::ComputePreview::Region::QuotaStatusWarning]
48201
48970
  attr_accessor :quota_status_warning
48202
48971
 
48203
- # [Output Only] Quotas assigned to this region.
48204
- # Corresponds to the JSON property `quotas`
48205
- # @return [Array<Google::Apis::ComputePreview::Quota>]
48206
- attr_accessor :quotas
48207
-
48208
48972
  # [Output Only] Server-defined URL for the resource.
48209
48973
  # Corresponds to the JSON property `selfLink`
48210
48974
  # @return [String]
@@ -48240,7 +49004,6 @@ module Google
48240
49004
  @kind = args[:kind] if args.key?(:kind)
48241
49005
  @name = args[:name] if args.key?(:name)
48242
49006
  @quota_status_warning = args[:quota_status_warning] if args.key?(:quota_status_warning)
48243
- @quotas = args[:quotas] if args.key?(:quotas)
48244
49007
  @self_link = args[:self_link] if args.key?(:self_link)
48245
49008
  @status = args[:status] if args.key?(:status)
48246
49009
  @supports_pzs = args[:supports_pzs] if args.key?(:supports_pzs)
@@ -51024,6 +51787,14 @@ module Google
51024
51787
  # @return [String]
51025
51788
  attr_accessor :kind
51026
51789
 
51790
+ # Output only. [Output Only] The number of machines in the reservation block.
51791
+ # Only
51792
+ # populated for families where machine to host ratio is not 1:1 such as
51793
+ # TPU8i.
51794
+ # Corresponds to the JSON property `machineCount`
51795
+ # @return [Fixnum]
51796
+ attr_accessor :machine_count
51797
+
51027
51798
  # Output only. [Output Only] The name of this reservation block generated by
51028
51799
  # Google
51029
51800
  # Compute Engine. The name must be 1-63 characters long, and comply with
@@ -51093,6 +51864,7 @@ module Google
51093
51864
  @in_use_count = args[:in_use_count] if args.key?(:in_use_count)
51094
51865
  @in_use_host_count = args[:in_use_host_count] if args.key?(:in_use_host_count)
51095
51866
  @kind = args[:kind] if args.key?(:kind)
51867
+ @machine_count = args[:machine_count] if args.key?(:machine_count)
51096
51868
  @name = args[:name] if args.key?(:name)
51097
51869
  @physical_topology = args[:physical_topology] if args.key?(:physical_topology)
51098
51870
  @reservation_maintenance = args[:reservation_maintenance] if args.key?(:reservation_maintenance)
@@ -51270,6 +52042,12 @@ module Google
51270
52042
  # @return [String]
51271
52043
  attr_accessor :host
51272
52044
 
52045
+ # Machine hash for a given instance. Only populated for families where
52046
+ # machine-to-host ratio is not 1:1 such as TPU8i.
52047
+ # Corresponds to the JSON property `machine`
52048
+ # @return [String]
52049
+ attr_accessor :machine
52050
+
51273
52051
  # Sub block hash for a given instance
51274
52052
  # Corresponds to the JSON property `subBlock`
51275
52053
  # @return [String]
@@ -51282,6 +52060,7 @@ module Google
51282
52060
  # Update properties of this object
51283
52061
  def update!(**args)
51284
52062
  @host = args[:host] if args.key?(:host)
52063
+ @machine = args[:machine] if args.key?(:machine)
51285
52064
  @sub_block = args[:sub_block] if args.key?(:sub_block)
51286
52065
  end
51287
52066
  end
@@ -51949,6 +52728,14 @@ module Google
51949
52728
  # @return [String]
51950
52729
  attr_accessor :kind
51951
52730
 
52731
+ # Output only. [Output Only] The number of machines in the reservation subBlock.
52732
+ # Only
52733
+ # populated for families where machine to host ratio is not 1:1 such as
52734
+ # TPU8i.
52735
+ # Corresponds to the JSON property `machineCount`
52736
+ # @return [Fixnum]
52737
+ attr_accessor :machine_count
52738
+
51952
52739
  # Output only. [Output Only] The name of this reservation subBlock generated by
51953
52740
  # Google
51954
52741
  # Compute Engine. The name must be 1-63 characters long, and comply with
@@ -52008,6 +52795,7 @@ module Google
52008
52795
  @in_use_count = args[:in_use_count] if args.key?(:in_use_count)
52009
52796
  @in_use_host_count = args[:in_use_host_count] if args.key?(:in_use_host_count)
52010
52797
  @kind = args[:kind] if args.key?(:kind)
52798
+ @machine_count = args[:machine_count] if args.key?(:machine_count)
52011
52799
  @name = args[:name] if args.key?(:name)
52012
52800
  @physical_topology = args[:physical_topology] if args.key?(:physical_topology)
52013
52801
  @reservation_sub_block_maintenance = args[:reservation_sub_block_maintenance] if args.key?(:reservation_sub_block_maintenance)
@@ -56989,6 +57777,13 @@ module Google
56989
57777
  # @return [Google::Apis::ComputePreview::BfdStatus]
56990
57778
  attr_accessor :bfd_status
56991
57779
 
57780
+ # Output only. [Output Only] Indicates whether the BGP peer is in a
57781
+ # depreferenced state.
57782
+ # Corresponds to the JSON property `depreferenced`
57783
+ # @return [Boolean]
57784
+ attr_accessor :depreferenced
57785
+ alias_method :depreferenced?, :depreferenced
57786
+
56992
57787
  # Output only. Enable IPv4 traffic over BGP Peer.
56993
57788
  # It is enabled by default if the peerIpAddress is version 4.
56994
57789
  # Corresponds to the JSON property `enableIpv4`
@@ -57102,6 +57897,7 @@ module Google
57102
57897
  def update!(**args)
57103
57898
  @advertised_routes = args[:advertised_routes] if args.key?(:advertised_routes)
57104
57899
  @bfd_status = args[:bfd_status] if args.key?(:bfd_status)
57900
+ @depreferenced = args[:depreferenced] if args.key?(:depreferenced)
57105
57901
  @enable_ipv4 = args[:enable_ipv4] if args.key?(:enable_ipv4)
57106
57902
  @enable_ipv6 = args[:enable_ipv6] if args.key?(:enable_ipv6)
57107
57903
  @ip_address = args[:ip_address] if args.key?(:ip_address)
@@ -58789,6 +59585,11 @@ module Google
58789
59585
  # @return [String]
58790
59586
  attr_accessor :name
58791
59587
 
59588
+ # Additional security policy parameters.
59589
+ # Corresponds to the JSON property `params`
59590
+ # @return [Google::Apis::ComputePreview::SecurityPolicyParams]
59591
+ attr_accessor :params
59592
+
58792
59593
  # Output only. [Output Only] The parent of the security policy.
58793
59594
  # Corresponds to the JSON property `parent`
58794
59595
  # @return [String]
@@ -58892,6 +59693,7 @@ module Google
58892
59693
  @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint)
58893
59694
  @labels = args[:labels] if args.key?(:labels)
58894
59695
  @name = args[:name] if args.key?(:name)
59696
+ @params = args[:params] if args.key?(:params)
58895
59697
  @parent = args[:parent] if args.key?(:parent)
58896
59698
  @recaptcha_options_config = args[:recaptcha_options_config] if args.key?(:recaptcha_options_config)
58897
59699
  @region = args[:region] if args.key?(:region)
@@ -59360,6 +60162,38 @@ module Google
59360
60162
  end
59361
60163
  end
59362
60164
 
60165
+ # Additional security policy parameters.
60166
+ class SecurityPolicyParams
60167
+ include Google::Apis::Core::Hashable
60168
+
60169
+ # Tag keys/values directly bound to this resource.
60170
+ # Tag keys and values have the same definition as resource
60171
+ # manager tags. The field is allowed for INSERT
60172
+ # only. The keys/values to set on the resource should be specified in
60173
+ # either ID ` : ` or Namespaced format
60174
+ # ` : `.
60175
+ # For example the following are valid inputs:
60176
+ # * `"tagKeys/333" : "tagValues/444", "tagKeys/123" : "tagValues/456"`
60177
+ # * `"123/environment" : "production", "345/abc" : "xyz"`
60178
+ # Note:
60179
+ # * Invalid combinations of ID & namespaced format is not supported. For
60180
+ # instance: `"123/environment" : "tagValues/444"` is invalid.
60181
+ # * Inconsistent format is not supported. For instance:
60182
+ # `"tagKeys/333" : "tagValues/444", "123/env" : "prod"` is invalid.
60183
+ # Corresponds to the JSON property `resourceManagerTags`
60184
+ # @return [Hash<String,String>]
60185
+ attr_accessor :resource_manager_tags
60186
+
60187
+ def initialize(**args)
60188
+ update!(**args)
60189
+ end
60190
+
60191
+ # Update properties of this object
60192
+ def update!(**args)
60193
+ @resource_manager_tags = args[:resource_manager_tags] if args.key?(:resource_manager_tags)
60194
+ end
60195
+ end
60196
+
59363
60197
  #
59364
60198
  class SecurityPolicyRecaptchaOptionsConfig
59365
60199
  include Google::Apis::Core::Hashable
@@ -62630,6 +63464,17 @@ module Google
62630
63464
  # @return [String]
62631
63465
  attr_accessor :certificate
62632
63466
 
63467
+ # A value read into memory from a write-only private key file whose
63468
+ # contents have been encrypted using the appropriate HPKE key distributed
63469
+ # by Google. The underlying plaintext MUST be a PEM format private key. For
63470
+ # security, only insert requests include this field. Exactly
63471
+ # one of privateKey or encryptedPemPrivateKey
63472
+ # MUST be specified when creating a self-managed certificate.
63473
+ # Corresponds to the JSON property `encryptedPemPrivateKey`
63474
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
63475
+ # @return [String]
63476
+ attr_accessor :encrypted_pem_private_key
63477
+
62633
63478
  # A write-only private key in PEM format. Only insert
62634
63479
  # requests will include this field.
62635
63480
  # Corresponds to the JSON property `privateKey`
@@ -62643,6 +63488,7 @@ module Google
62643
63488
  # Update properties of this object
62644
63489
  def update!(**args)
62645
63490
  @certificate = args[:certificate] if args.key?(:certificate)
63491
+ @encrypted_pem_private_key = args[:encrypted_pem_private_key] if args.key?(:encrypted_pem_private_key)
62646
63492
  @private_key = args[:private_key] if args.key?(:private_key)
62647
63493
  end
62648
63494
  end