google-apis-compute_beta 0.117.0 → 0.119.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.
@@ -1324,6 +1324,11 @@ module Google
1324
1324
  class AllocationResourceStatus
1325
1325
  include Google::Apis::Core::Hashable
1326
1326
 
1327
+ # Health information for the reservation.
1328
+ # Corresponds to the JSON property `healthInfo`
1329
+ # @return [Google::Apis::ComputeBeta::AllocationResourceStatusHealthInfo]
1330
+ attr_accessor :health_info
1331
+
1327
1332
  # The number of reservation blocks associated with this reservation.
1328
1333
  # Corresponds to the JSON property `reservationBlockCount`
1329
1334
  # @return [Fixnum]
@@ -1345,12 +1350,44 @@ module Google
1345
1350
 
1346
1351
  # Update properties of this object
1347
1352
  def update!(**args)
1353
+ @health_info = args[:health_info] if args.key?(:health_info)
1348
1354
  @reservation_block_count = args[:reservation_block_count] if args.key?(:reservation_block_count)
1349
1355
  @reservation_maintenance = args[:reservation_maintenance] if args.key?(:reservation_maintenance)
1350
1356
  @specific_sku_allocation = args[:specific_sku_allocation] if args.key?(:specific_sku_allocation)
1351
1357
  end
1352
1358
  end
1353
1359
 
1360
+ # Health information for the reservation.
1361
+ class AllocationResourceStatusHealthInfo
1362
+ include Google::Apis::Core::Hashable
1363
+
1364
+ # The number of reservation blocks that are degraded.
1365
+ # Corresponds to the JSON property `degradedBlockCount`
1366
+ # @return [Fixnum]
1367
+ attr_accessor :degraded_block_count
1368
+
1369
+ # The health status of the reservation.
1370
+ # Corresponds to the JSON property `healthStatus`
1371
+ # @return [String]
1372
+ attr_accessor :health_status
1373
+
1374
+ # The number of reservation blocks that are healthy.
1375
+ # Corresponds to the JSON property `healthyBlockCount`
1376
+ # @return [Fixnum]
1377
+ attr_accessor :healthy_block_count
1378
+
1379
+ def initialize(**args)
1380
+ update!(**args)
1381
+ end
1382
+
1383
+ # Update properties of this object
1384
+ def update!(**args)
1385
+ @degraded_block_count = args[:degraded_block_count] if args.key?(:degraded_block_count)
1386
+ @health_status = args[:health_status] if args.key?(:health_status)
1387
+ @healthy_block_count = args[:healthy_block_count] if args.key?(:healthy_block_count)
1388
+ end
1389
+ end
1390
+
1354
1391
  # Contains Properties set for the reservation.
1355
1392
  class AllocationResourceStatusSpecificSkuAllocation
1356
1393
  include Google::Apis::Core::Hashable
@@ -3083,6 +3120,11 @@ module Google
3083
3120
  # @return [String]
3084
3121
  attr_accessor :name
3085
3122
 
3123
+ # Additional Backend Bucket parameters.
3124
+ # Corresponds to the JSON property `params`
3125
+ # @return [Google::Apis::ComputeBeta::BackendBucketParams]
3126
+ attr_accessor :params
3127
+
3086
3128
  # [Output Only] Server-defined URL for the resource.
3087
3129
  # Corresponds to the JSON property `selfLink`
3088
3130
  # @return [String]
@@ -3111,6 +3153,7 @@ module Google
3111
3153
  @kind = args[:kind] if args.key?(:kind)
3112
3154
  @load_balancing_scheme = args[:load_balancing_scheme] if args.key?(:load_balancing_scheme)
3113
3155
  @name = args[:name] if args.key?(:name)
3156
+ @params = args[:params] if args.key?(:params)
3114
3157
  @self_link = args[:self_link] if args.key?(:self_link)
3115
3158
  @used_by = args[:used_by] if args.key?(:used_by)
3116
3159
  end
@@ -3586,6 +3629,32 @@ module Google
3586
3629
  end
3587
3630
  end
3588
3631
 
3632
+ # Additional Backend Bucket parameters.
3633
+ class BackendBucketParams
3634
+ include Google::Apis::Core::Hashable
3635
+
3636
+ # Tag keys/values directly bound to this resource. Tag keys and values have the
3637
+ # same definition as resource manager tags. The field is allowed for INSERT only.
3638
+ # The keys/values to set on the resource should be specified in either ID ` : `
3639
+ # or Namespaced format ` : `. For example the following are valid inputs: * `"
3640
+ # tagKeys/333" : "tagValues/444", "tagKeys/123" : "tagValues/456"` * `"123/
3641
+ # environment" : "production", "345/abc" : "xyz"` Note: * Invalid combinations
3642
+ # of ID & namespaced format is not supported. For instance: `"123/environment" :
3643
+ # "tagValues/444"` is invalid.
3644
+ # Corresponds to the JSON property `resourceManagerTags`
3645
+ # @return [Hash<String,String>]
3646
+ attr_accessor :resource_manager_tags
3647
+
3648
+ def initialize(**args)
3649
+ update!(**args)
3650
+ end
3651
+
3652
+ # Update properties of this object
3653
+ def update!(**args)
3654
+ @resource_manager_tags = args[:resource_manager_tags] if args.key?(:resource_manager_tags)
3655
+ end
3656
+ end
3657
+
3589
3658
  #
3590
3659
  class BackendBucketUsedBy
3591
3660
  include Google::Apis::Core::Hashable
@@ -3623,7 +3692,7 @@ module Google
3623
3692
  attr_accessor :max_utilization
3624
3693
 
3625
3694
  # Name of a custom utilization signal. The name must be 1-64 characters long and
3626
- # match the regular expression [a-z]([-_.a-z0-9]*[a-z0-9])? which means the
3695
+ # match the regular expression [a-z]([-_.a-z0-9]*[a-z0-9])? which means that the
3627
3696
  # first character must be a lowercase letter, and all following characters must
3628
3697
  # be a dash, period, underscore, lowercase letter, or digit, except the last
3629
3698
  # character, which cannot be a dash, period, or underscore. For usage guidelines,
@@ -3911,11 +3980,16 @@ module Google
3911
3980
  # was redirected to the load balancer. - MAGLEV: used as a drop in replacement
3912
3981
  # for the ring hash load balancer. Maglev is not as stable as ring hash but has
3913
3982
  # faster table lookup build times and host selection times. For more information
3914
- # about Maglev, see https://ai.google/research/pubs/pub44824 This field is
3915
- # applicable to either: - A regional backend service with the service_protocol
3916
- # set to HTTP, HTTPS, HTTP2 or H2C, and load_balancing_scheme set to
3917
- # INTERNAL_MANAGED. - A global backend service with the load_balancing_scheme
3918
- # set to INTERNAL_SELF_MANAGED, INTERNAL_MANAGED, or EXTERNAL_MANAGED. If
3983
+ # about Maglev, see https://ai.google/research/pubs/pub44824 -
3984
+ # WEIGHTED_ROUND_ROBIN: Per-endpoint Weighted Round Robin Load Balancing using
3985
+ # weights computed from Backend reported Custom Metrics. If set, the Backend
3986
+ # Service responses are expected to contain non-standard HTTP response header
3987
+ # field Endpoint-Load-Metrics. The reported metrics to use for computing the
3988
+ # weights are specified via the customMetrics field. This field is applicable to
3989
+ # either: - A regional backend service with the service_protocol set to HTTP,
3990
+ # HTTPS, HTTP2 or H2C, and load_balancing_scheme set to INTERNAL_MANAGED. - A
3991
+ # global backend service with the load_balancing_scheme set to
3992
+ # INTERNAL_SELF_MANAGED, INTERNAL_MANAGED, or EXTERNAL_MANAGED. If
3919
3993
  # sessionAffinity is not configured—that is, if session affinity remains at the
3920
3994
  # default value of NONE—then the default value for localityLbPolicy is
3921
3995
  # ROUND_ROBIN. If session affinity is set to a value other than NONE, then the
@@ -3979,6 +4053,11 @@ module Google
3979
4053
  # @return [Google::Apis::ComputeBeta::OutlierDetection]
3980
4054
  attr_accessor :outlier_detection
3981
4055
 
4056
+ # Additional Backend Service parameters.
4057
+ # Corresponds to the JSON property `params`
4058
+ # @return [Google::Apis::ComputeBeta::BackendServiceParams]
4059
+ attr_accessor :params
4060
+
3982
4061
  # Deprecated in favor of portName. The TCP port to connect on the backend. The
3983
4062
  # default value is 80. For internal passthrough Network Load Balancers and
3984
4063
  # external passthrough Network Load Balancers, omit port.
@@ -4131,6 +4210,7 @@ module Google
4131
4210
  @network = args[:network] if args.key?(:network)
4132
4211
  @network_pass_through_lb_traffic_policy = args[:network_pass_through_lb_traffic_policy] if args.key?(:network_pass_through_lb_traffic_policy)
4133
4212
  @outlier_detection = args[:outlier_detection] if args.key?(:outlier_detection)
4213
+ @params = args[:params] if args.key?(:params)
4134
4214
  @port = args[:port] if args.key?(:port)
4135
4215
  @port_name = args[:port_name] if args.key?(:port_name)
4136
4216
  @protocol = args[:protocol] if args.key?(:protocol)
@@ -4558,7 +4638,7 @@ module Google
4558
4638
  alias_method :dry_run?, :dry_run
4559
4639
 
4560
4640
  # Name of a custom utilization signal. The name must be 1-64 characters long and
4561
- # match the regular expression [a-z]([-_.a-z0-9]*[a-z0-9])? which means the
4641
+ # match the regular expression [a-z]([-_.a-z0-9]*[a-z0-9])? which means that the
4562
4642
  # first character must be a lowercase letter, and all following characters must
4563
4643
  # be a dash, period, underscore, lowercase letter, or digit, except the last
4564
4644
  # character, which cannot be a dash, period, or underscore. For usage guidelines,
@@ -5347,6 +5427,32 @@ module Google
5347
5427
  end
5348
5428
  end
5349
5429
 
5430
+ # Additional Backend Service parameters.
5431
+ class BackendServiceParams
5432
+ include Google::Apis::Core::Hashable
5433
+
5434
+ # Tag keys/values directly bound to this resource. Tag keys and values have the
5435
+ # same definition as resource manager tags. The field is allowed for INSERT only.
5436
+ # The keys/values to set on the resource should be specified in either ID ` : `
5437
+ # or Namespaced format ` : `. For example the following are valid inputs: * `"
5438
+ # tagKeys/333" : "tagValues/444", "tagKeys/123" : "tagValues/456"` * `"123/
5439
+ # environment" : "production", "345/abc" : "xyz"` Note: * Invalid combinations
5440
+ # of ID & namespaced format is not supported. For instance: `"123/environment" :
5441
+ # "tagValues/444"` is invalid.
5442
+ # Corresponds to the JSON property `resourceManagerTags`
5443
+ # @return [Hash<String,String>]
5444
+ attr_accessor :resource_manager_tags
5445
+
5446
+ def initialize(**args)
5447
+ update!(**args)
5448
+ end
5449
+
5450
+ # Update properties of this object
5451
+ def update!(**args)
5452
+ @resource_manager_tags = args[:resource_manager_tags] if args.key?(:resource_manager_tags)
5453
+ end
5454
+ end
5455
+
5350
5456
  #
5351
5457
  class BackendServiceReference
5352
5458
  include Google::Apis::Core::Hashable
@@ -11395,7 +11501,8 @@ module Google
11395
11501
  # allowed to inject packets into the consumer's network. If set to true, the
11396
11502
  # target service attachment must have tunneling enabled and TunnelingConfig.
11397
11503
  # RoutingMode set to PACKET_INJECTION Non-PSC forwarding rules should not use
11398
- # this field.
11504
+ # this field. This field was never released to any customers and is deprecated
11505
+ # and will be removed in the future.
11399
11506
  # Corresponds to the JSON property `allowPscPacketInjection`
11400
11507
  # @return [Boolean]
11401
11508
  attr_accessor :allow_psc_packet_injection
@@ -28809,11 +28916,6 @@ module Google
28809
28916
  class MultiMigsList
28810
28917
  include Google::Apis::Core::Hashable
28811
28918
 
28812
- #
28813
- # Corresponds to the JSON property `etag`
28814
- # @return [String]
28815
- attr_accessor :etag
28816
-
28817
28919
  # Unique identifier for the resource; defined by the server.
28818
28920
  # Corresponds to the JSON property `id`
28819
28921
  # @return [String]
@@ -28842,11 +28944,6 @@ module Google
28842
28944
  # @return [String]
28843
28945
  attr_accessor :self_link
28844
28946
 
28845
- # [Output only] Unreachable resources.
28846
- # Corresponds to the JSON property `unreachables`
28847
- # @return [Array<String>]
28848
- attr_accessor :unreachables
28849
-
28850
28947
  # Informational warning message.
28851
28948
  # Corresponds to the JSON property `warning`
28852
28949
  # @return [Google::Apis::ComputeBeta::MultiMigsList::Warning]
@@ -28858,13 +28955,11 @@ module Google
28858
28955
 
28859
28956
  # Update properties of this object
28860
28957
  def update!(**args)
28861
- @etag = args[:etag] if args.key?(:etag)
28862
28958
  @id = args[:id] if args.key?(:id)
28863
28959
  @items = args[:items] if args.key?(:items)
28864
28960
  @kind = args[:kind] if args.key?(:kind)
28865
28961
  @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
28866
28962
  @self_link = args[:self_link] if args.key?(:self_link)
28867
- @unreachables = args[:unreachables] if args.key?(:unreachables)
28868
28963
  @warning = args[:warning] if args.key?(:warning)
28869
28964
  end
28870
28965
 
@@ -36707,16 +36802,11 @@ module Google
36707
36802
  class PreviewFeatureRolloutOperation
36708
36803
  include Google::Apis::Core::Hashable
36709
36804
 
36710
- #
36805
+ # Represents the input for the rollout operation.
36711
36806
  # Corresponds to the JSON property `rolloutInput`
36712
36807
  # @return [Google::Apis::ComputeBeta::PreviewFeatureRolloutOperationRolloutInput]
36713
36808
  attr_accessor :rollout_input
36714
36809
 
36715
- #
36716
- # Corresponds to the JSON property `rolloutStatus`
36717
- # @return [Google::Apis::ComputeBeta::PreviewFeatureRolloutOperationRolloutStatus]
36718
- attr_accessor :rollout_status
36719
-
36720
36810
  def initialize(**args)
36721
36811
  update!(**args)
36722
36812
  end
@@ -36724,11 +36814,10 @@ module Google
36724
36814
  # Update properties of this object
36725
36815
  def update!(**args)
36726
36816
  @rollout_input = args[:rollout_input] if args.key?(:rollout_input)
36727
- @rollout_status = args[:rollout_status] if args.key?(:rollout_status)
36728
36817
  end
36729
36818
  end
36730
36819
 
36731
- #
36820
+ # Represents the input for the rollout operation.
36732
36821
  class PreviewFeatureRolloutOperationRolloutInput
36733
36822
  include Google::Apis::Core::Hashable
36734
36823
 
@@ -36744,13 +36833,6 @@ module Google
36744
36833
  # @return [String]
36745
36834
  attr_accessor :predefined_rollout_plan
36746
36835
 
36747
- # The UUID of the retry action. Only needed if this is a retry for an existing
36748
- # rollout. This can be used after the user canceled a rollout and want to retry
36749
- # it with no changes.
36750
- # Corresponds to the JSON property `retryUuid`
36751
- # @return [String]
36752
- attr_accessor :retry_uuid
36753
-
36754
36836
  def initialize(**args)
36755
36837
  update!(**args)
36756
36838
  end
@@ -36759,68 +36841,6 @@ module Google
36759
36841
  def update!(**args)
36760
36842
  @name = args[:name] if args.key?(:name)
36761
36843
  @predefined_rollout_plan = args[:predefined_rollout_plan] if args.key?(:predefined_rollout_plan)
36762
- @retry_uuid = args[:retry_uuid] if args.key?(:retry_uuid)
36763
- end
36764
- end
36765
-
36766
- #
36767
- class PreviewFeatureRolloutOperationRolloutStatus
36768
- include Google::Apis::Core::Hashable
36769
-
36770
- # Output only. The ongoing rollout resources. There can be multiple ongoing
36771
- # rollouts for a resource.
36772
- # Corresponds to the JSON property `ongoingRollouts`
36773
- # @return [Array<Google::Apis::ComputeBeta::PreviewFeatureRolloutOperationRolloutStatusRolloutMetadata>]
36774
- attr_accessor :ongoing_rollouts
36775
-
36776
- # Output only. The last completed rollout resource. This field will not be
36777
- # populated until the first rollout is completed.
36778
- # Corresponds to the JSON property `previousRollout`
36779
- # @return [Google::Apis::ComputeBeta::PreviewFeatureRolloutOperationRolloutStatusRolloutMetadata]
36780
- attr_accessor :previous_rollout
36781
-
36782
- def initialize(**args)
36783
- update!(**args)
36784
- end
36785
-
36786
- # Update properties of this object
36787
- def update!(**args)
36788
- @ongoing_rollouts = args[:ongoing_rollouts] if args.key?(:ongoing_rollouts)
36789
- @previous_rollout = args[:previous_rollout] if args.key?(:previous_rollout)
36790
- end
36791
- end
36792
-
36793
- #
36794
- class PreviewFeatureRolloutOperationRolloutStatusRolloutMetadata
36795
- include Google::Apis::Core::Hashable
36796
-
36797
- # The name of the rollout Ex. organizations//locations/global/rollouts/ Ex.
36798
- # folders//locations/global/rollouts/ Ex. projects//locations/global/rollouts/.
36799
- # Corresponds to the JSON property `rollout`
36800
- # @return [String]
36801
- attr_accessor :rollout
36802
-
36803
- # The name of the rollout plan Ex. organizations//locations/global/rolloutPlans/
36804
- # Ex. folders//locations/global/rolloutPlans/ Ex. projects//locations/global/
36805
- # rolloutPlans/.
36806
- # Corresponds to the JSON property `rolloutPlan`
36807
- # @return [String]
36808
- attr_accessor :rollout_plan
36809
-
36810
- # [Output Only] The status of the feature.
36811
- # Corresponds to the JSON property `status`
36812
- # @return [Google::Apis::ComputeBeta::PreviewFeatureStatus]
36813
- attr_accessor :status
36814
-
36815
- def initialize(**args)
36816
- update!(**args)
36817
- end
36818
-
36819
- # Update properties of this object
36820
- def update!(**args)
36821
- @rollout = args[:rollout] if args.key?(:rollout)
36822
- @rollout_plan = args[:rollout_plan] if args.key?(:rollout_plan)
36823
- @status = args[:status] if args.key?(:status)
36824
36844
  end
36825
36845
  end
36826
36846
 
@@ -36833,7 +36853,12 @@ module Google
36833
36853
  # @return [String]
36834
36854
  attr_accessor :description
36835
36855
 
36836
- #
36856
+ # [Output Only] Link to the public documentation for the feature.
36857
+ # Corresponds to the JSON property `helpLink`
36858
+ # @return [String]
36859
+ attr_accessor :help_link
36860
+
36861
+ # [Output Only] The release status of the feature.
36837
36862
  # Corresponds to the JSON property `releaseStatus`
36838
36863
  # @return [Google::Apis::ComputeBeta::PreviewFeatureStatusReleaseStatus]
36839
36864
  attr_accessor :release_status
@@ -36845,11 +36870,12 @@ module Google
36845
36870
  # Update properties of this object
36846
36871
  def update!(**args)
36847
36872
  @description = args[:description] if args.key?(:description)
36873
+ @help_link = args[:help_link] if args.key?(:help_link)
36848
36874
  @release_status = args[:release_status] if args.key?(:release_status)
36849
36875
  end
36850
36876
  end
36851
36877
 
36852
- #
36878
+ # [Output Only] The release status of the feature.
36853
36879
  class PreviewFeatureStatusReleaseStatus
36854
36880
  include Google::Apis::Core::Hashable
36855
36881
 
@@ -40250,6 +40276,13 @@ module Google
40250
40276
  # @return [String]
40251
40277
  attr_accessor :name
40252
40278
 
40279
+ # Protection tier for the workload which specifies the workload expectations in
40280
+ # the event of infrastructure failures at data center (e.g. power and/or cooling
40281
+ # failures).
40282
+ # Corresponds to the JSON property `protectionTier`
40283
+ # @return [String]
40284
+ attr_accessor :protection_tier
40285
+
40253
40286
  # [Output only] Indicates the reservation mode of the reservation.
40254
40287
  # Corresponds to the JSON property `reservationMode`
40255
40288
  # @return [String]
@@ -40279,6 +40312,11 @@ module Google
40279
40312
  attr_accessor :satisfies_pzs
40280
40313
  alias_method :satisfies_pzs?, :satisfies_pzs
40281
40314
 
40315
+ # The type of maintenance for the reservation.
40316
+ # Corresponds to the JSON property `schedulingType`
40317
+ # @return [String]
40318
+ attr_accessor :scheduling_type
40319
+
40282
40320
  # [Output Only] Server-defined fully-qualified URL for this resource.
40283
40321
  # Corresponds to the JSON property `selfLink`
40284
40322
  # @return [String]
@@ -40334,11 +40372,13 @@ module Google
40334
40372
  @kind = args[:kind] if args.key?(:kind)
40335
40373
  @linked_commitments = args[:linked_commitments] if args.key?(:linked_commitments)
40336
40374
  @name = args[:name] if args.key?(:name)
40375
+ @protection_tier = args[:protection_tier] if args.key?(:protection_tier)
40337
40376
  @reservation_mode = args[:reservation_mode] if args.key?(:reservation_mode)
40338
40377
  @reservation_sharing_policy = args[:reservation_sharing_policy] if args.key?(:reservation_sharing_policy)
40339
40378
  @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
40340
40379
  @resource_status = args[:resource_status] if args.key?(:resource_status)
40341
40380
  @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
40381
+ @scheduling_type = args[:scheduling_type] if args.key?(:scheduling_type)
40342
40382
  @self_link = args[:self_link] if args.key?(:self_link)
40343
40383
  @share_settings = args[:share_settings] if args.key?(:share_settings)
40344
40384
  @specific_reservation = args[:specific_reservation] if args.key?(:specific_reservation)
@@ -40524,6 +40564,11 @@ module Google
40524
40564
  # @return [String]
40525
40565
  attr_accessor :creation_timestamp
40526
40566
 
40567
+ # Health information for the reservation block.
40568
+ # Corresponds to the JSON property `healthInfo`
40569
+ # @return [Google::Apis::ComputeBeta::ReservationBlockHealthInfo]
40570
+ attr_accessor :health_info
40571
+
40527
40572
  # [Output Only] The unique identifier for the resource. This identifier is
40528
40573
  # defined by the server.
40529
40574
  # Corresponds to the JSON property `id`
@@ -40600,6 +40645,7 @@ module Google
40600
40645
  def update!(**args)
40601
40646
  @count = args[:count] if args.key?(:count)
40602
40647
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
40648
+ @health_info = args[:health_info] if args.key?(:health_info)
40603
40649
  @id = args[:id] if args.key?(:id)
40604
40650
  @in_use_count = args[:in_use_count] if args.key?(:in_use_count)
40605
40651
  @kind = args[:kind] if args.key?(:kind)
@@ -40615,6 +40661,37 @@ module Google
40615
40661
  end
40616
40662
  end
40617
40663
 
40664
+ # Health information for the reservation block.
40665
+ class ReservationBlockHealthInfo
40666
+ include Google::Apis::Core::Hashable
40667
+
40668
+ # The number of subBlocks that are degraded.
40669
+ # Corresponds to the JSON property `degradedSubBlockCount`
40670
+ # @return [Fixnum]
40671
+ attr_accessor :degraded_sub_block_count
40672
+
40673
+ # The health status of the reservation block.
40674
+ # Corresponds to the JSON property `healthStatus`
40675
+ # @return [String]
40676
+ attr_accessor :health_status
40677
+
40678
+ # The number of subBlocks that are healthy.
40679
+ # Corresponds to the JSON property `healthySubBlockCount`
40680
+ # @return [Fixnum]
40681
+ attr_accessor :healthy_sub_block_count
40682
+
40683
+ def initialize(**args)
40684
+ update!(**args)
40685
+ end
40686
+
40687
+ # Update properties of this object
40688
+ def update!(**args)
40689
+ @degraded_sub_block_count = args[:degraded_sub_block_count] if args.key?(:degraded_sub_block_count)
40690
+ @health_status = args[:health_status] if args.key?(:health_status)
40691
+ @healthy_sub_block_count = args[:healthy_sub_block_count] if args.key?(:healthy_sub_block_count)
40692
+ end
40693
+ end
40694
+
40618
40695
  #
40619
40696
  class ReservationBlockPhysicalTopology
40620
40697
  include Google::Apis::Core::Hashable
@@ -40629,6 +40706,11 @@ module Google
40629
40706
  # @return [String]
40630
40707
  attr_accessor :cluster
40631
40708
 
40709
+ # The detailed instances information for a given Block
40710
+ # Corresponds to the JSON property `instances`
40711
+ # @return [Array<Google::Apis::ComputeBeta::ReservationBlockPhysicalTopologyInstance>]
40712
+ attr_accessor :instances
40713
+
40632
40714
  def initialize(**args)
40633
40715
  update!(**args)
40634
40716
  end
@@ -40637,6 +40719,63 @@ module Google
40637
40719
  def update!(**args)
40638
40720
  @block = args[:block] if args.key?(:block)
40639
40721
  @cluster = args[:cluster] if args.key?(:cluster)
40722
+ @instances = args[:instances] if args.key?(:instances)
40723
+ end
40724
+ end
40725
+
40726
+ # The instances information for a given Block
40727
+ class ReservationBlockPhysicalTopologyInstance
40728
+ include Google::Apis::Core::Hashable
40729
+
40730
+ # The InstanceId of the instance
40731
+ # Corresponds to the JSON property `instanceId`
40732
+ # @return [Fixnum]
40733
+ attr_accessor :instance_id
40734
+
40735
+ # The PhysicalHostTopology of the instance within a Block resource.
40736
+ # Corresponds to the JSON property `physicalHostTopology`
40737
+ # @return [Google::Apis::ComputeBeta::ReservationBlockPhysicalTopologyInstancePhysicalHostTopology]
40738
+ attr_accessor :physical_host_topology
40739
+
40740
+ # Project where the instance lives
40741
+ # Corresponds to the JSON property `projectId`
40742
+ # @return [Fixnum]
40743
+ attr_accessor :project_id
40744
+
40745
+ def initialize(**args)
40746
+ update!(**args)
40747
+ end
40748
+
40749
+ # Update properties of this object
40750
+ def update!(**args)
40751
+ @instance_id = args[:instance_id] if args.key?(:instance_id)
40752
+ @physical_host_topology = args[:physical_host_topology] if args.key?(:physical_host_topology)
40753
+ @project_id = args[:project_id] if args.key?(:project_id)
40754
+ end
40755
+ end
40756
+
40757
+ # The PhysicalHostTopology of the instance within a Block resource.
40758
+ class ReservationBlockPhysicalTopologyInstancePhysicalHostTopology
40759
+ include Google::Apis::Core::Hashable
40760
+
40761
+ # Host hash for a given instance
40762
+ # Corresponds to the JSON property `host`
40763
+ # @return [String]
40764
+ attr_accessor :host
40765
+
40766
+ # Sub block hash for a given instance
40767
+ # Corresponds to the JSON property `subBlock`
40768
+ # @return [String]
40769
+ attr_accessor :sub_block
40770
+
40771
+ def initialize(**args)
40772
+ update!(**args)
40773
+ end
40774
+
40775
+ # Update properties of this object
40776
+ def update!(**args)
40777
+ @host = args[:host] if args.key?(:host)
40778
+ @sub_block = args[:sub_block] if args.key?(:sub_block)
40640
40779
  end
40641
40780
  end
40642
40781
 
@@ -40911,6 +41050,11 @@ module Google
40911
41050
  # @return [String]
40912
41051
  attr_accessor :creation_timestamp
40913
41052
 
41053
+ # Health information for the reservation subBlock.
41054
+ # Corresponds to the JSON property `healthInfo`
41055
+ # @return [Google::Apis::ComputeBeta::ReservationSubBlockHealthInfo]
41056
+ attr_accessor :health_info
41057
+
40914
41058
  # [Output Only] The unique identifier for the resource. This identifier is
40915
41059
  # defined by the server.
40916
41060
  # Corresponds to the JSON property `id`
@@ -40974,6 +41118,7 @@ module Google
40974
41118
  def update!(**args)
40975
41119
  @count = args[:count] if args.key?(:count)
40976
41120
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
41121
+ @health_info = args[:health_info] if args.key?(:health_info)
40977
41122
  @id = args[:id] if args.key?(:id)
40978
41123
  @in_use_count = args[:in_use_count] if args.key?(:in_use_count)
40979
41124
  @kind = args[:kind] if args.key?(:kind)
@@ -40987,6 +41132,51 @@ module Google
40987
41132
  end
40988
41133
  end
40989
41134
 
41135
+ # Health information for the reservation subBlock.
41136
+ class ReservationSubBlockHealthInfo
41137
+ include Google::Apis::Core::Hashable
41138
+
41139
+ # The number of degraded hosts in the reservation subBlock.
41140
+ # Corresponds to the JSON property `degradedHostCount`
41141
+ # @return [Fixnum]
41142
+ attr_accessor :degraded_host_count
41143
+
41144
+ # The number of degraded infrastructure (e.g NV link domain) in the reservation
41145
+ # subblock.
41146
+ # Corresponds to the JSON property `degradedInfraCount`
41147
+ # @return [Fixnum]
41148
+ attr_accessor :degraded_infra_count
41149
+
41150
+ # The health status of the reservation subBlock.
41151
+ # Corresponds to the JSON property `healthStatus`
41152
+ # @return [String]
41153
+ attr_accessor :health_status
41154
+
41155
+ # The number of healthy hosts in the reservation subBlock.
41156
+ # Corresponds to the JSON property `healthyHostCount`
41157
+ # @return [Fixnum]
41158
+ attr_accessor :healthy_host_count
41159
+
41160
+ # The number of healthy infrastructure (e.g NV link domain) in the reservation
41161
+ # subblock.
41162
+ # Corresponds to the JSON property `healthyInfraCount`
41163
+ # @return [Fixnum]
41164
+ attr_accessor :healthy_infra_count
41165
+
41166
+ def initialize(**args)
41167
+ update!(**args)
41168
+ end
41169
+
41170
+ # Update properties of this object
41171
+ def update!(**args)
41172
+ @degraded_host_count = args[:degraded_host_count] if args.key?(:degraded_host_count)
41173
+ @degraded_infra_count = args[:degraded_infra_count] if args.key?(:degraded_infra_count)
41174
+ @health_status = args[:health_status] if args.key?(:health_status)
41175
+ @healthy_host_count = args[:healthy_host_count] if args.key?(:healthy_host_count)
41176
+ @healthy_infra_count = args[:healthy_infra_count] if args.key?(:healthy_infra_count)
41177
+ end
41178
+ end
41179
+
40990
41180
  #
40991
41181
  class ReservationSubBlockPhysicalTopology
40992
41182
  include Google::Apis::Core::Hashable
@@ -47328,7 +47518,9 @@ module Google
47328
47518
  # @return [String]
47329
47519
  attr_accessor :target
47330
47520
 
47331
- # Type of the redirect action.
47521
+ # Type of the redirect action. Possible values are: - GOOGLE_RECAPTCHA: redirect
47522
+ # to reCAPTCHA for manual challenge assessment. - EXTERNAL_302: redirect to a
47523
+ # different URL via a 302 response.
47332
47524
  # Corresponds to the JSON property `type`
47333
47525
  # @return [String]
47334
47526
  attr_accessor :type
@@ -47571,7 +47763,8 @@ module Google
47571
47763
  # service attachment. Each project or network has a connection limit. A given
47572
47764
  # service attachment can manage connections at either the project or network
47573
47765
  # level. Therefore, both the accept and reject lists for a given service
47574
- # attachment must contain either only projects or only networks.
47766
+ # attachment must contain either only projects or only networks or only
47767
+ # endpoints.
47575
47768
  # Corresponds to the JSON property `consumerAcceptLists`
47576
47769
  # @return [Array<Google::Apis::ComputeBeta::ServiceAttachmentConsumerProjectLimit>]
47577
47770
  attr_accessor :consumer_accept_lists
@@ -47635,6 +47828,11 @@ module Google
47635
47828
  # @return [String]
47636
47829
  attr_accessor :kind
47637
47830
 
47831
+ # Metadata of the service attachment.
47832
+ # Corresponds to the JSON property `metadata`
47833
+ # @return [Hash<String,String>]
47834
+ attr_accessor :metadata
47835
+
47638
47836
  # Name of the resource. Provided by the client when the resource is created. The
47639
47837
  # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
47640
47838
  # name must be 1-63 characters long and match the regular expression `[a-z]([-a-
@@ -47732,6 +47930,7 @@ module Google
47732
47930
  @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
47733
47931
  @id = args[:id] if args.key?(:id)
47734
47932
  @kind = args[:kind] if args.key?(:kind)
47933
+ @metadata = args[:metadata] if args.key?(:metadata)
47735
47934
  @name = args[:name] if args.key?(:name)
47736
47935
  @nat_subnets = args[:nat_subnets] if args.key?(:nat_subnets)
47737
47936
  @producer_forwarding_rule = args[:producer_forwarding_rule] if args.key?(:producer_forwarding_rule)
@@ -47916,7 +48115,8 @@ module Google
47916
48115
  class ServiceAttachmentConsumerProjectLimit
47917
48116
  include Google::Apis::Core::Hashable
47918
48117
 
47919
- # The value of the limit to set.
48118
+ # The value of the limit to set. For endpoint_url, the limit should be no more
48119
+ # than 1.
47920
48120
  # Corresponds to the JSON property `connectionLimit`
47921
48121
  # @return [Fixnum]
47922
48122
  attr_accessor :connection_limit
@@ -50775,7 +50975,7 @@ module Google
50775
50975
  # @return [String]
50776
50976
  attr_accessor :performance_provisioning_type
50777
50977
 
50778
- # Size, in GiB, of the storage pool. For more information about the size limits,
50978
+ # Size of the storage pool in GiB. For more information about the size limits,
50779
50979
  # see https://cloud.google.com/compute/docs/disks/storage-pools.
50780
50980
  # Corresponds to the JSON property `poolProvisionedCapacityGb`
50781
50981
  # @return [Fixnum]
@@ -50787,8 +50987,8 @@ module Google
50787
50987
  # @return [Fixnum]
50788
50988
  attr_accessor :pool_provisioned_iops
50789
50989
 
50790
- # Provisioned throughput of the storage pool. Only relevant if the storage pool
50791
- # type is hyperdisk-balanced or hyperdisk-throughput.
50990
+ # Provisioned throughput of the storage pool in MiB/s. Only relevant if the
50991
+ # storage pool type is hyperdisk-balanced or hyperdisk-throughput.
50792
50992
  # Corresponds to the JSON property `poolProvisionedThroughput`
50793
50993
  # @return [Fixnum]
50794
50994
  attr_accessor :pool_provisioned_throughput
@@ -51346,7 +51546,7 @@ module Google
51346
51546
  # @return [String]
51347
51547
  attr_accessor :last_resize_timestamp
51348
51548
 
51349
- # [Output Only] Maximum allowed aggregate disk size in gigabytes.
51549
+ # [Output Only] Maximum allowed aggregate disk size in GiB.
51350
51550
  # Corresponds to the JSON property `maxTotalProvisionedDiskCapacityGb`
51351
51551
  # @return [Fixnum]
51352
51552
  attr_accessor :max_total_provisioned_disk_capacity_gb
@@ -51365,7 +51565,7 @@ module Google
51365
51565
  # @return [Fixnum]
51366
51566
  attr_accessor :pool_used_iops
51367
51567
 
51368
- # [Output Only] Sum of all the disks' provisioned throughput in MB/s.
51568
+ # [Output Only] Sum of all the disks' provisioned throughput in MiB/s.
51369
51569
  # Corresponds to the JSON property `poolUsedThroughput`
51370
51570
  # @return [Fixnum]
51371
51571
  attr_accessor :pool_used_throughput
@@ -51375,8 +51575,8 @@ module Google
51375
51575
  # @return [Fixnum]
51376
51576
  attr_accessor :pool_user_written_bytes
51377
51577
 
51378
- # [Output Only] Sum of all the capacity provisioned in disks in this storage
51379
- # pool. A disk's provisioned capacity is the same as its total capacity.
51578
+ # [Output Only] Sum of all the disks' provisioned capacity (in GiB) in this
51579
+ # storage pool. A disk's provisioned capacity is the same as its total capacity.
51380
51580
  # Corresponds to the JSON property `totalProvisionedDiskCapacityGb`
51381
51581
  # @return [Fixnum]
51382
51582
  attr_accessor :total_provisioned_disk_capacity_gb
@@ -51386,9 +51586,9 @@ module Google
51386
51586
  # @return [Fixnum]
51387
51587
  attr_accessor :total_provisioned_disk_iops
51388
51588
 
51389
- # [Output Only] Sum of all the disks' provisioned throughput in MB/s, minus some
51390
- # amount that is allowed per disk that is not counted towards pool's throughput
51391
- # capacity.
51589
+ # [Output Only] Sum of all the disks' provisioned throughput in MiB/s, minus
51590
+ # some amount that is allowed per disk that is not counted towards pool's
51591
+ # throughput capacity.
51392
51592
  # Corresponds to the JSON property `totalProvisionedDiskThroughput`
51393
51593
  # @return [Fixnum]
51394
51594
  attr_accessor :total_provisioned_disk_throughput
@@ -52157,6 +52357,11 @@ module Google
52157
52357
  # @return [String]
52158
52358
  attr_accessor :reserved_internal_range
52159
52359
 
52360
+ # Configures subnet mask resolution for this subnetwork.
52361
+ # Corresponds to the JSON property `resolveSubnetMask`
52362
+ # @return [String]
52363
+ attr_accessor :resolve_subnet_mask
52364
+
52160
52365
  # The role of subnetwork. Currently, this field is only used when purpose is set
52161
52366
  # to GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY. The value can be set to
52162
52367
  # ACTIVE or BACKUP. An ACTIVE subnetwork is one that is currently being used for
@@ -52210,6 +52415,12 @@ module Google
52210
52415
  # @return [Array<String>]
52211
52416
  attr_accessor :system_reserved_internal_ipv6_ranges
52212
52417
 
52418
+ # The current IP utilization of all subnetwork ranges. Contains the total number
52419
+ # of allocated and free IPs in each range.
52420
+ # Corresponds to the JSON property `utilizationDetails`
52421
+ # @return [Google::Apis::ComputeBeta::SubnetworkUtilizationDetails]
52422
+ attr_accessor :utilization_details
52423
+
52213
52424
  def initialize(**args)
52214
52425
  update!(**args)
52215
52426
  end
@@ -52240,6 +52451,7 @@ module Google
52240
52451
  @purpose = args[:purpose] if args.key?(:purpose)
52241
52452
  @region = args[:region] if args.key?(:region)
52242
52453
  @reserved_internal_range = args[:reserved_internal_range] if args.key?(:reserved_internal_range)
52454
+ @resolve_subnet_mask = args[:resolve_subnet_mask] if args.key?(:resolve_subnet_mask)
52243
52455
  @role = args[:role] if args.key?(:role)
52244
52456
  @secondary_ip_ranges = args[:secondary_ip_ranges] if args.key?(:secondary_ip_ranges)
52245
52457
  @self_link = args[:self_link] if args.key?(:self_link)
@@ -52247,6 +52459,7 @@ module Google
52247
52459
  @state = args[:state] if args.key?(:state)
52248
52460
  @system_reserved_external_ipv6_ranges = args[:system_reserved_external_ipv6_ranges] if args.key?(:system_reserved_external_ipv6_ranges)
52249
52461
  @system_reserved_internal_ipv6_ranges = args[:system_reserved_internal_ipv6_ranges] if args.key?(:system_reserved_internal_ipv6_ranges)
52462
+ @utilization_details = args[:utilization_details] if args.key?(:utilization_details)
52250
52463
  end
52251
52464
  end
52252
52465
 
@@ -52621,6 +52834,101 @@ module Google
52621
52834
  end
52622
52835
  end
52623
52836
 
52837
+ # The current IP utilization of all subnetwork ranges. Contains the total number
52838
+ # of allocated and free IPs in each range.
52839
+ class SubnetworkUtilizationDetails
52840
+ include Google::Apis::Core::Hashable
52841
+
52842
+ # The IPV6 utilization of a single IP range.
52843
+ # Corresponds to the JSON property `externalIpv6InstanceUtilization`
52844
+ # @return [Google::Apis::ComputeBeta::SubnetworkUtilizationDetailsIpv6Utilization]
52845
+ attr_accessor :external_ipv6_instance_utilization
52846
+
52847
+ # The IPV6 utilization of a single IP range.
52848
+ # Corresponds to the JSON property `externalIpv6LbUtilization`
52849
+ # @return [Google::Apis::ComputeBeta::SubnetworkUtilizationDetailsIpv6Utilization]
52850
+ attr_accessor :external_ipv6_lb_utilization
52851
+
52852
+ # The IPV6 utilization of a single IP range.
52853
+ # Corresponds to the JSON property `internalIpv6Utilization`
52854
+ # @return [Google::Apis::ComputeBeta::SubnetworkUtilizationDetailsIpv6Utilization]
52855
+ attr_accessor :internal_ipv6_utilization
52856
+
52857
+ # Utilizations of all IPV4 IP ranges. For primary ranges, the range name will be
52858
+ # empty.
52859
+ # Corresponds to the JSON property `ipv4Utilizations`
52860
+ # @return [Array<Google::Apis::ComputeBeta::SubnetworkUtilizationDetailsIpv4Utilization>]
52861
+ attr_accessor :ipv4_utilizations
52862
+
52863
+ def initialize(**args)
52864
+ update!(**args)
52865
+ end
52866
+
52867
+ # Update properties of this object
52868
+ def update!(**args)
52869
+ @external_ipv6_instance_utilization = args[:external_ipv6_instance_utilization] if args.key?(:external_ipv6_instance_utilization)
52870
+ @external_ipv6_lb_utilization = args[:external_ipv6_lb_utilization] if args.key?(:external_ipv6_lb_utilization)
52871
+ @internal_ipv6_utilization = args[:internal_ipv6_utilization] if args.key?(:internal_ipv6_utilization)
52872
+ @ipv4_utilizations = args[:ipv4_utilizations] if args.key?(:ipv4_utilizations)
52873
+ end
52874
+ end
52875
+
52876
+ # The IPV4 utilization of a single IP range.
52877
+ class SubnetworkUtilizationDetailsIpv4Utilization
52878
+ include Google::Apis::Core::Hashable
52879
+
52880
+ # Will be set for secondary range. Empty for primary IPv4 range.
52881
+ # Corresponds to the JSON property `rangeName`
52882
+ # @return [String]
52883
+ attr_accessor :range_name
52884
+
52885
+ #
52886
+ # Corresponds to the JSON property `totalAllocatedIp`
52887
+ # @return [Fixnum]
52888
+ attr_accessor :total_allocated_ip
52889
+
52890
+ #
52891
+ # Corresponds to the JSON property `totalFreeIp`
52892
+ # @return [Fixnum]
52893
+ attr_accessor :total_free_ip
52894
+
52895
+ def initialize(**args)
52896
+ update!(**args)
52897
+ end
52898
+
52899
+ # Update properties of this object
52900
+ def update!(**args)
52901
+ @range_name = args[:range_name] if args.key?(:range_name)
52902
+ @total_allocated_ip = args[:total_allocated_ip] if args.key?(:total_allocated_ip)
52903
+ @total_free_ip = args[:total_free_ip] if args.key?(:total_free_ip)
52904
+ end
52905
+ end
52906
+
52907
+ # The IPV6 utilization of a single IP range.
52908
+ class SubnetworkUtilizationDetailsIpv6Utilization
52909
+ include Google::Apis::Core::Hashable
52910
+
52911
+ #
52912
+ # Corresponds to the JSON property `totalAllocatedIp`
52913
+ # @return [Google::Apis::ComputeBeta::Uint128]
52914
+ attr_accessor :total_allocated_ip
52915
+
52916
+ #
52917
+ # Corresponds to the JSON property `totalFreeIp`
52918
+ # @return [Google::Apis::ComputeBeta::Uint128]
52919
+ attr_accessor :total_free_ip
52920
+
52921
+ def initialize(**args)
52922
+ update!(**args)
52923
+ end
52924
+
52925
+ # Update properties of this object
52926
+ def update!(**args)
52927
+ @total_allocated_ip = args[:total_allocated_ip] if args.key?(:total_allocated_ip)
52928
+ @total_free_ip = args[:total_free_ip] if args.key?(:total_free_ip)
52929
+ end
52930
+ end
52931
+
52624
52932
  #
52625
52933
  class SubnetworksExpandIpCidrRangeRequest
52626
52934
  include Google::Apis::Core::Hashable
@@ -56704,6 +57012,11 @@ module Google
56704
57012
  attr_accessor :maintenance_on_shutdown
56705
57013
  alias_method :maintenance_on_shutdown?, :maintenance_on_shutdown
56706
57014
 
57015
+ # The reasons for the maintenance. Only valid for vms.
57016
+ # Corresponds to the JSON property `maintenanceReasons`
57017
+ # @return [Array<String>]
57018
+ attr_accessor :maintenance_reasons
57019
+
56707
57020
  #
56708
57021
  # Corresponds to the JSON property `maintenanceStatus`
56709
57022
  # @return [String]
@@ -56735,6 +57048,7 @@ module Google
56735
57048
  @can_reschedule = args[:can_reschedule] if args.key?(:can_reschedule)
56736
57049
  @latest_window_start_time = args[:latest_window_start_time] if args.key?(:latest_window_start_time)
56737
57050
  @maintenance_on_shutdown = args[:maintenance_on_shutdown] if args.key?(:maintenance_on_shutdown)
57051
+ @maintenance_reasons = args[:maintenance_reasons] if args.key?(:maintenance_reasons)
56738
57052
  @maintenance_status = args[:maintenance_status] if args.key?(:maintenance_status)
56739
57053
  @type = args[:type] if args.key?(:type)
56740
57054
  @window_end_time = args[:window_end_time] if args.key?(:window_end_time)