google-apis-compute_alpha 0.118.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.
@@ -1261,6 +1261,23 @@ module Google
1261
1261
  class AllocationAggregateReservation
1262
1262
  include Google::Apis::Core::Hashable
1263
1263
 
1264
+ # Count of reserved hosts of specified VM family. The host has fixed number of
1265
+ # accelerators based on the accelerator/vm-family selected.
1266
+ # Corresponds to the JSON property `hostCount`
1267
+ # @return [Fixnum]
1268
+ attr_accessor :host_count
1269
+
1270
+ # Number of hosts currently in use. If there is one or more Instances running on
1271
+ # the host, it is considered in use.
1272
+ # Corresponds to the JSON property `inUseHostCount`
1273
+ # @return [Fixnum]
1274
+ attr_accessor :in_use_host_count
1275
+
1276
+ # Number of instances currently in use in this reservation.
1277
+ # Corresponds to the JSON property `inUseInstanceCount`
1278
+ # @return [Fixnum]
1279
+ attr_accessor :in_use_instance_count
1280
+
1264
1281
  # [Output only] List of resources currently in use.
1265
1282
  # Corresponds to the JSON property `inUseResources`
1266
1283
  # @return [Array<Google::Apis::ComputeAlpha::AllocationAggregateReservationReservedResourceInfo>]
@@ -1288,6 +1305,9 @@ module Google
1288
1305
 
1289
1306
  # Update properties of this object
1290
1307
  def update!(**args)
1308
+ @host_count = args[:host_count] if args.key?(:host_count)
1309
+ @in_use_host_count = args[:in_use_host_count] if args.key?(:in_use_host_count)
1310
+ @in_use_instance_count = args[:in_use_instance_count] if args.key?(:in_use_instance_count)
1291
1311
  @in_use_resources = args[:in_use_resources] if args.key?(:in_use_resources)
1292
1312
  @reserved_resources = args[:reserved_resources] if args.key?(:reserved_resources)
1293
1313
  @vm_family = args[:vm_family] if args.key?(:vm_family)
@@ -3163,6 +3183,24 @@ module Google
3163
3183
  # @return [Fixnum]
3164
3184
  attr_accessor :max_connections_per_instance
3165
3185
 
3186
+ # Defines a maximum number of in-flight requests for the whole NEG or instance
3187
+ # group. Not available if backend's balancingMode is RATE or CONNECTION.
3188
+ # Corresponds to the JSON property `maxInFlightRequests`
3189
+ # @return [Fixnum]
3190
+ attr_accessor :max_in_flight_requests
3191
+
3192
+ # Defines a maximum number of in-flight requests for a single endpoint. Not
3193
+ # available if backend's balancingMode is RATE or CONNECTION.
3194
+ # Corresponds to the JSON property `maxInFlightRequestsPerEndpoint`
3195
+ # @return [Fixnum]
3196
+ attr_accessor :max_in_flight_requests_per_endpoint
3197
+
3198
+ # Defines a maximum number of in-flight requests for a single VM. Not available
3199
+ # if backend's balancingMode is RATE or CONNECTION.
3200
+ # Corresponds to the JSON property `maxInFlightRequestsPerInstance`
3201
+ # @return [Fixnum]
3202
+ attr_accessor :max_in_flight_requests_per_instance
3203
+
3166
3204
  # Defines a maximum number of HTTP requests per second (RPS). For usage
3167
3205
  # guidelines, see Rate balancing mode and Utilization balancing mode. Not
3168
3206
  # available if the backend's balancingMode is CONNECTION.
@@ -3201,6 +3239,11 @@ module Google
3201
3239
  # @return [String]
3202
3240
  attr_accessor :preference
3203
3241
 
3242
+ #
3243
+ # Corresponds to the JSON property `trafficDuration`
3244
+ # @return [String]
3245
+ attr_accessor :traffic_duration
3246
+
3204
3247
  def initialize(**args)
3205
3248
  update!(**args)
3206
3249
  end
@@ -3216,11 +3259,15 @@ module Google
3216
3259
  @max_connections = args[:max_connections] if args.key?(:max_connections)
3217
3260
  @max_connections_per_endpoint = args[:max_connections_per_endpoint] if args.key?(:max_connections_per_endpoint)
3218
3261
  @max_connections_per_instance = args[:max_connections_per_instance] if args.key?(:max_connections_per_instance)
3262
+ @max_in_flight_requests = args[:max_in_flight_requests] if args.key?(:max_in_flight_requests)
3263
+ @max_in_flight_requests_per_endpoint = args[:max_in_flight_requests_per_endpoint] if args.key?(:max_in_flight_requests_per_endpoint)
3264
+ @max_in_flight_requests_per_instance = args[:max_in_flight_requests_per_instance] if args.key?(:max_in_flight_requests_per_instance)
3219
3265
  @max_rate = args[:max_rate] if args.key?(:max_rate)
3220
3266
  @max_rate_per_endpoint = args[:max_rate_per_endpoint] if args.key?(:max_rate_per_endpoint)
3221
3267
  @max_rate_per_instance = args[:max_rate_per_instance] if args.key?(:max_rate_per_instance)
3222
3268
  @max_utilization = args[:max_utilization] if args.key?(:max_utilization)
3223
3269
  @preference = args[:preference] if args.key?(:preference)
3270
+ @traffic_duration = args[:traffic_duration] if args.key?(:traffic_duration)
3224
3271
  end
3225
3272
  end
3226
3273
 
@@ -7056,7 +7103,7 @@ module Google
7056
7103
  include Google::Apis::Core::Hashable
7057
7104
 
7058
7105
  # Initially the API will provide one recommendation which balances the
7059
- # individual scores according to Google's preference.
7106
+ # individual scores according to service provider's preference.
7060
7107
  # Corresponds to the JSON property `recommendations`
7061
7108
  # @return [Array<Google::Apis::ComputeAlpha::CapacityAdviceResponseRecommendation>]
7062
7109
  attr_accessor :recommendations
@@ -11301,6 +11348,12 @@ module Google
11301
11348
  # @return [String]
11302
11349
  attr_accessor :name
11303
11350
 
11351
+ # Input only. [Input Only] Additional params passed with the request, but not
11352
+ # persisted as part of resource payload.
11353
+ # Corresponds to the JSON property `params`
11354
+ # @return [Google::Apis::ComputeAlpha::ExternalVpnGatewayParams]
11355
+ attr_accessor :params
11356
+
11304
11357
  # Indicates the user-supplied redundancy type of this external VPN gateway.
11305
11358
  # Corresponds to the JSON property `redundancyType`
11306
11359
  # @return [String]
@@ -11325,6 +11378,7 @@ module Google
11325
11378
  @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint)
11326
11379
  @labels = args[:labels] if args.key?(:labels)
11327
11380
  @name = args[:name] if args.key?(:name)
11381
+ @params = args[:params] if args.key?(:params)
11328
11382
  @redundancy_type = args[:redundancy_type] if args.key?(:redundancy_type)
11329
11383
  @self_link = args[:self_link] if args.key?(:self_link)
11330
11384
  end
@@ -11496,6 +11550,33 @@ module Google
11496
11550
  end
11497
11551
  end
11498
11552
 
11553
+ #
11554
+ class ExternalVpnGatewayParams
11555
+ include Google::Apis::Core::Hashable
11556
+
11557
+ # Tag keys/values directly bound to this resource. Tag keys and values have the
11558
+ # same definition as resource manager tags. The field is allowed for INSERT only.
11559
+ # The keys/values to set on the resource should be specified in either ID ` : `
11560
+ # or Namespaced format ` : `. For example the following are valid inputs: * `"
11561
+ # tagKeys/333" : "tagValues/444", "tagKeys/123" : "tagValues/456"` * `"123/
11562
+ # environment" : "production", "345/abc" : "xyz"` Note: * Invalid combinations
11563
+ # of ID & namespaced format is not supported. For instance: `"123/environment" :
11564
+ # "tagValues/444"` is invalid. * Inconsistent format is not supported. For
11565
+ # instance: `"tagKeys/333" : "tagValues/444", "123/env" : "prod"` is invalid.
11566
+ # Corresponds to the JSON property `resourceManagerTags`
11567
+ # @return [Hash<String,String>]
11568
+ attr_accessor :resource_manager_tags
11569
+
11570
+ def initialize(**args)
11571
+ update!(**args)
11572
+ end
11573
+
11574
+ # Update properties of this object
11575
+ def update!(**args)
11576
+ @resource_manager_tags = args[:resource_manager_tags] if args.key?(:resource_manager_tags)
11577
+ end
11578
+ end
11579
+
11499
11580
  #
11500
11581
  class FileContentBuffer
11501
11582
  include Google::Apis::Core::Hashable
@@ -13796,6 +13877,11 @@ module Google
13796
13877
  # @return [String]
13797
13878
  attr_accessor :planning_status
13798
13879
 
13880
+ # Protection tier for the workload.
13881
+ # Corresponds to the JSON property `protectionTier`
13882
+ # @return [String]
13883
+ attr_accessor :protection_tier
13884
+
13799
13885
  # The reservation mode which determines reservation-termination behavior and
13800
13886
  # expected pricing.
13801
13887
  # Corresponds to the JSON property `reservationMode`
@@ -13880,6 +13966,7 @@ module Google
13880
13966
  @name = args[:name] if args.key?(:name)
13881
13967
  @name_prefix = args[:name_prefix] if args.key?(:name_prefix)
13882
13968
  @planning_status = args[:planning_status] if args.key?(:planning_status)
13969
+ @protection_tier = args[:protection_tier] if args.key?(:protection_tier)
13883
13970
  @reservation_mode = args[:reservation_mode] if args.key?(:reservation_mode)
13884
13971
  @reservation_name = args[:reservation_name] if args.key?(:reservation_name)
13885
13972
  @scheduling_type = args[:scheduling_type] if args.key?(:scheduling_type)
@@ -15702,6 +15789,604 @@ module Google
15702
15789
  end
15703
15790
  end
15704
15791
 
15792
+ # HaController handles failover for a VM Instance.
15793
+ class HaController
15794
+ include Google::Apis::Core::Hashable
15795
+
15796
+ # [Output Only] Creation timestamp in RFC3339 text format.
15797
+ # Corresponds to the JSON property `creationTimestamp`
15798
+ # @return [String]
15799
+ attr_accessor :creation_timestamp
15800
+
15801
+ # An optional description of this resource. Provide this property when you
15802
+ # create the resource.
15803
+ # Corresponds to the JSON property `description`
15804
+ # @return [String]
15805
+ attr_accessor :description
15806
+
15807
+ # Indicates how failover should be initiated.
15808
+ # Corresponds to the JSON property `failoverInitiation`
15809
+ # @return [String]
15810
+ attr_accessor :failover_initiation
15811
+
15812
+ # [Output Only] The unique identifier for the resource. This identifier is
15813
+ # defined by the server.
15814
+ # Corresponds to the JSON property `id`
15815
+ # @return [Fixnum]
15816
+ attr_accessor :id
15817
+
15818
+ # Name of the instance that HaController is in charge of. If not specified the
15819
+ # HaController's resource name will be used instead. The name must be 1-63
15820
+ # characters long, and comply with RFC1035. Specifically, the name must be 1-63
15821
+ # characters long and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?`
15822
+ # which means the first character must be a lowercase letter, and all following
15823
+ # characters must be a dash, lowercase letter, or digit, except the last
15824
+ # character, which cannot be a dash.
15825
+ # Corresponds to the JSON property `instanceName`
15826
+ # @return [String]
15827
+ attr_accessor :instance_name
15828
+
15829
+ # [Output Only] Type of the resource. Always compute#haController for
15830
+ # HaControllers.
15831
+ # Corresponds to the JSON property `kind`
15832
+ # @return [String]
15833
+ attr_accessor :kind
15834
+
15835
+ # Name of the resource. Provided by the client when the resource is created. The
15836
+ # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
15837
+ # name must be 1-63 characters long and match the regular expression `[a-z]([-a-
15838
+ # z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter,
15839
+ # and all following characters must be a dash, lowercase letter, or digit,
15840
+ # except the last character, which cannot be a dash.
15841
+ # Corresponds to the JSON property `name`
15842
+ # @return [String]
15843
+ attr_accessor :name
15844
+
15845
+ # [Output Only] URL of the region where the resource resides. You must specify
15846
+ # this field as part of the HTTP request URL. It is not settable as a field in
15847
+ # the request body.
15848
+ # Corresponds to the JSON property `region`
15849
+ # @return [String]
15850
+ attr_accessor :region
15851
+
15852
+ # Indicates the capacity guarantees in the secondary zone.
15853
+ # Corresponds to the JSON property `secondaryZoneCapacity`
15854
+ # @return [String]
15855
+ attr_accessor :secondary_zone_capacity
15856
+
15857
+ # [Output only] Server-defined URL for the resource.
15858
+ # Corresponds to the JSON property `selfLink`
15859
+ # @return [String]
15860
+ attr_accessor :self_link
15861
+
15862
+ # [Output Only] Server-defined URL for this resource with the resource id.
15863
+ # Corresponds to the JSON property `selfLinkWithId`
15864
+ # @return [String]
15865
+ attr_accessor :self_link_with_id
15866
+
15867
+ # Contains information about current status of the HaController.
15868
+ # Corresponds to the JSON property `status`
15869
+ # @return [Google::Apis::ComputeAlpha::HaControllerStatus]
15870
+ attr_accessor :status
15871
+
15872
+ # Map of zone configurations Key: name of the zone Value: ZoneConfiguration
15873
+ # Corresponds to the JSON property `zoneConfigurations`
15874
+ # @return [Hash<String,Google::Apis::ComputeAlpha::HaControllerZoneConfiguration>]
15875
+ attr_accessor :zone_configurations
15876
+
15877
+ def initialize(**args)
15878
+ update!(**args)
15879
+ end
15880
+
15881
+ # Update properties of this object
15882
+ def update!(**args)
15883
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
15884
+ @description = args[:description] if args.key?(:description)
15885
+ @failover_initiation = args[:failover_initiation] if args.key?(:failover_initiation)
15886
+ @id = args[:id] if args.key?(:id)
15887
+ @instance_name = args[:instance_name] if args.key?(:instance_name)
15888
+ @kind = args[:kind] if args.key?(:kind)
15889
+ @name = args[:name] if args.key?(:name)
15890
+ @region = args[:region] if args.key?(:region)
15891
+ @secondary_zone_capacity = args[:secondary_zone_capacity] if args.key?(:secondary_zone_capacity)
15892
+ @self_link = args[:self_link] if args.key?(:self_link)
15893
+ @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
15894
+ @status = args[:status] if args.key?(:status)
15895
+ @zone_configurations = args[:zone_configurations] if args.key?(:zone_configurations)
15896
+ end
15897
+ end
15898
+
15899
+ # Contains information about current status of the HaController.
15900
+ class HaControllerStatus
15901
+ include Google::Apis::Core::Hashable
15902
+
15903
+ # Contains information about the current failover operation.
15904
+ # Corresponds to the JSON property `failoverProgress`
15905
+ # @return [Google::Apis::ComputeAlpha::HaControllerStatusFailoverProgress]
15906
+ attr_accessor :failover_progress
15907
+
15908
+ # [Output Only] Indicates if the failover is currently in-progress.
15909
+ # Corresponds to the JSON property `ongoingFailover`
15910
+ # @return [Boolean]
15911
+ attr_accessor :ongoing_failover
15912
+ alias_method :ongoing_failover?, :ongoing_failover
15913
+
15914
+ # [Output Only] The URL to the instance that is intended to be primary at this
15915
+ # moment. Primary instance will be changed at the very beginning of a failover
15916
+ # operation.
15917
+ # Corresponds to the JSON property `primaryInstance`
15918
+ # @return [String]
15919
+ attr_accessor :primary_instance
15920
+
15921
+ # [Output Only] The name of the zone that is intended to be primary at this
15922
+ # moment. Primary zone will be changed at the very beginning of a failover
15923
+ # operation. The zone may not be operational in the middle of a failover
15924
+ # operation.
15925
+ # Corresponds to the JSON property `primaryZone`
15926
+ # @return [String]
15927
+ attr_accessor :primary_zone
15928
+
15929
+ # [Output Only] Indicates if the resource is ready for initiating a failover to
15930
+ # the secondary zone.
15931
+ # Corresponds to the JSON property `readyForFailover`
15932
+ # @return [Boolean]
15933
+ attr_accessor :ready_for_failover
15934
+ alias_method :ready_for_failover?, :ready_for_failover
15935
+
15936
+ # [Output Only] Map of zone statuses. Key: name of the zone Value: ZoneStatus
15937
+ # Corresponds to the JSON property `zoneStatus`
15938
+ # @return [Hash<String,Google::Apis::ComputeAlpha::HaControllerStatusZoneStatus>]
15939
+ attr_accessor :zone_status
15940
+
15941
+ def initialize(**args)
15942
+ update!(**args)
15943
+ end
15944
+
15945
+ # Update properties of this object
15946
+ def update!(**args)
15947
+ @failover_progress = args[:failover_progress] if args.key?(:failover_progress)
15948
+ @ongoing_failover = args[:ongoing_failover] if args.key?(:ongoing_failover)
15949
+ @primary_instance = args[:primary_instance] if args.key?(:primary_instance)
15950
+ @primary_zone = args[:primary_zone] if args.key?(:primary_zone)
15951
+ @ready_for_failover = args[:ready_for_failover] if args.key?(:ready_for_failover)
15952
+ @zone_status = args[:zone_status] if args.key?(:zone_status)
15953
+ end
15954
+ end
15955
+
15956
+ # Contains information about the current failover operation.
15957
+ class HaControllerStatusFailoverProgress
15958
+ include Google::Apis::Core::Hashable
15959
+
15960
+ # [Output Only] Indicates if failover has been triggered automatically or
15961
+ # manually.
15962
+ # Corresponds to the JSON property `failoverTrigger`
15963
+ # @return [String]
15964
+ attr_accessor :failover_trigger
15965
+
15966
+ # [Output Only] Timestamp of the last failover trigger.
15967
+ # Corresponds to the JSON property `failoverTriggerTimestamp`
15968
+ # @return [String]
15969
+ attr_accessor :failover_trigger_timestamp
15970
+
15971
+ # [Output Only] Contains details of the last failed failover. This field is
15972
+ # filled only if the current failover is failing
15973
+ # Corresponds to the JSON property `lastFailoverAttempt`
15974
+ # @return [Google::Apis::ComputeAlpha::HaControllerStatusFailoverProgressLastFailoverAttempt]
15975
+ attr_accessor :last_failover_attempt
15976
+
15977
+ def initialize(**args)
15978
+ update!(**args)
15979
+ end
15980
+
15981
+ # Update properties of this object
15982
+ def update!(**args)
15983
+ @failover_trigger = args[:failover_trigger] if args.key?(:failover_trigger)
15984
+ @failover_trigger_timestamp = args[:failover_trigger_timestamp] if args.key?(:failover_trigger_timestamp)
15985
+ @last_failover_attempt = args[:last_failover_attempt] if args.key?(:last_failover_attempt)
15986
+ end
15987
+ end
15988
+
15989
+ #
15990
+ class HaControllerStatusFailoverProgressLastFailoverAttempt
15991
+ include Google::Apis::Core::Hashable
15992
+
15993
+ # [Output Only] Encountered errors during the last attempt to process failover.
15994
+ # Corresponds to the JSON property `errors`
15995
+ # @return [Google::Apis::ComputeAlpha::HaControllerStatusFailoverProgressLastFailoverAttempt::Errors]
15996
+ attr_accessor :errors
15997
+
15998
+ # [Output Only] Show timestamp only if there is an error. RFC3339 text format.
15999
+ # Corresponds to the JSON property `timestamp`
16000
+ # @return [String]
16001
+ attr_accessor :timestamp
16002
+
16003
+ def initialize(**args)
16004
+ update!(**args)
16005
+ end
16006
+
16007
+ # Update properties of this object
16008
+ def update!(**args)
16009
+ @errors = args[:errors] if args.key?(:errors)
16010
+ @timestamp = args[:timestamp] if args.key?(:timestamp)
16011
+ end
16012
+
16013
+ # [Output Only] Encountered errors during the last attempt to process failover.
16014
+ class Errors
16015
+ include Google::Apis::Core::Hashable
16016
+
16017
+ # [Output Only] The array of errors encountered while processing this operation.
16018
+ # Corresponds to the JSON property `errors`
16019
+ # @return [Array<Google::Apis::ComputeAlpha::HaControllerStatusFailoverProgressLastFailoverAttempt::Errors::Error>]
16020
+ attr_accessor :errors
16021
+
16022
+ def initialize(**args)
16023
+ update!(**args)
16024
+ end
16025
+
16026
+ # Update properties of this object
16027
+ def update!(**args)
16028
+ @errors = args[:errors] if args.key?(:errors)
16029
+ end
16030
+
16031
+ #
16032
+ class Error
16033
+ include Google::Apis::Core::Hashable
16034
+
16035
+ # [Output Only] The error type identifier for this error.
16036
+ # Corresponds to the JSON property `code`
16037
+ # @return [String]
16038
+ attr_accessor :code
16039
+
16040
+ # [Output Only] An optional list of messages that contain the error details.
16041
+ # There is a set of defined message types to use for providing details.The
16042
+ # syntax depends on the error code. For example, QuotaExceededInfo will have
16043
+ # details when the error code is QUOTA_EXCEEDED.
16044
+ # Corresponds to the JSON property `errorDetails`
16045
+ # @return [Array<Google::Apis::ComputeAlpha::HaControllerStatusFailoverProgressLastFailoverAttempt::Errors::Error::ErrorDetail>]
16046
+ attr_accessor :error_details
16047
+
16048
+ # [Output Only] Indicates the field in the request that caused the error. This
16049
+ # property is optional.
16050
+ # Corresponds to the JSON property `location`
16051
+ # @return [String]
16052
+ attr_accessor :location
16053
+
16054
+ # [Output Only] An optional, human-readable error message.
16055
+ # Corresponds to the JSON property `message`
16056
+ # @return [String]
16057
+ attr_accessor :message
16058
+
16059
+ def initialize(**args)
16060
+ update!(**args)
16061
+ end
16062
+
16063
+ # Update properties of this object
16064
+ def update!(**args)
16065
+ @code = args[:code] if args.key?(:code)
16066
+ @error_details = args[:error_details] if args.key?(:error_details)
16067
+ @location = args[:location] if args.key?(:location)
16068
+ @message = args[:message] if args.key?(:message)
16069
+ end
16070
+
16071
+ #
16072
+ class ErrorDetail
16073
+ include Google::Apis::Core::Hashable
16074
+
16075
+ # Describes the cause of the error with structured details. Example of an error
16076
+ # when contacting the "pubsub.googleapis.com" API when it is not enabled: ` "
16077
+ # reason": "API_DISABLED" "domain": "googleapis.com" "metadata": ` "resource": "
16078
+ # projects/123", "service": "pubsub.googleapis.com" ` ` This response indicates
16079
+ # that the pubsub.googleapis.com API is not enabled. Example of an error that is
16080
+ # returned when attempting to create a Spanner instance in a region that is out
16081
+ # of stock: ` "reason": "STOCKOUT" "domain": "spanner.googleapis.com", "metadata"
16082
+ # : ` "availableRegions": "us-central1,us-east2" ` `
16083
+ # Corresponds to the JSON property `errorInfo`
16084
+ # @return [Google::Apis::ComputeAlpha::ErrorInfo]
16085
+ attr_accessor :error_info
16086
+
16087
+ # Provides links to documentation or for performing an out of band action. For
16088
+ # example, if a quota check failed with an error indicating the calling project
16089
+ # hasn't enabled the accessed service, this can contain a URL pointing directly
16090
+ # to the right place in the developer console to flip the bit.
16091
+ # Corresponds to the JSON property `help`
16092
+ # @return [Google::Apis::ComputeAlpha::Help]
16093
+ attr_accessor :help
16094
+
16095
+ # Provides a localized error message that is safe to return to the user which
16096
+ # can be attached to an RPC error.
16097
+ # Corresponds to the JSON property `localizedMessage`
16098
+ # @return [Google::Apis::ComputeAlpha::LocalizedMessage]
16099
+ attr_accessor :localized_message
16100
+
16101
+ # Additional details for quota exceeded error for resource quota.
16102
+ # Corresponds to the JSON property `quotaInfo`
16103
+ # @return [Google::Apis::ComputeAlpha::QuotaExceededInfo]
16104
+ attr_accessor :quota_info
16105
+
16106
+ def initialize(**args)
16107
+ update!(**args)
16108
+ end
16109
+
16110
+ # Update properties of this object
16111
+ def update!(**args)
16112
+ @error_info = args[:error_info] if args.key?(:error_info)
16113
+ @help = args[:help] if args.key?(:help)
16114
+ @localized_message = args[:localized_message] if args.key?(:localized_message)
16115
+ @quota_info = args[:quota_info] if args.key?(:quota_info)
16116
+ end
16117
+ end
16118
+ end
16119
+ end
16120
+ end
16121
+
16122
+ # Contains the status of a specific zone.
16123
+ class HaControllerStatusZoneStatus
16124
+ include Google::Apis::Core::Hashable
16125
+
16126
+ # [Output Only] Indicates if the zone is primary at this moment.
16127
+ # Corresponds to the JSON property `isPrimary`
16128
+ # @return [Boolean]
16129
+ attr_accessor :is_primary
16130
+ alias_method :is_primary?, :is_primary
16131
+
16132
+ # [Output Only] Indicates if the zone is ready for initiating a failover.
16133
+ # Corresponds to the JSON property `isZoneReady`
16134
+ # @return [Boolean]
16135
+ attr_accessor :is_zone_ready
16136
+ alias_method :is_zone_ready?, :is_zone_ready
16137
+
16138
+ # Contains details of the last failed operation.
16139
+ # Corresponds to the JSON property `lastError`
16140
+ # @return [Google::Apis::ComputeAlpha::HaControllerStatusZoneStatusLastError]
16141
+ attr_accessor :last_error
16142
+
16143
+ def initialize(**args)
16144
+ update!(**args)
16145
+ end
16146
+
16147
+ # Update properties of this object
16148
+ def update!(**args)
16149
+ @is_primary = args[:is_primary] if args.key?(:is_primary)
16150
+ @is_zone_ready = args[:is_zone_ready] if args.key?(:is_zone_ready)
16151
+ @last_error = args[:last_error] if args.key?(:last_error)
16152
+ end
16153
+ end
16154
+
16155
+ # Contains details of the last failed operation.
16156
+ class HaControllerStatusZoneStatusLastError
16157
+ include Google::Apis::Core::Hashable
16158
+
16159
+ # [Output Only] Encountered errors.
16160
+ # Corresponds to the JSON property `errors`
16161
+ # @return [Google::Apis::ComputeAlpha::HaControllerStatusZoneStatusLastError::Errors]
16162
+ attr_accessor :errors
16163
+
16164
+ # [Output Only] Show timestamp only if there is an error. RFC3339 text format.
16165
+ # Corresponds to the JSON property `timestamp`
16166
+ # @return [String]
16167
+ attr_accessor :timestamp
16168
+
16169
+ def initialize(**args)
16170
+ update!(**args)
16171
+ end
16172
+
16173
+ # Update properties of this object
16174
+ def update!(**args)
16175
+ @errors = args[:errors] if args.key?(:errors)
16176
+ @timestamp = args[:timestamp] if args.key?(:timestamp)
16177
+ end
16178
+
16179
+ # [Output Only] Encountered errors.
16180
+ class Errors
16181
+ include Google::Apis::Core::Hashable
16182
+
16183
+ # [Output Only] The array of errors encountered while processing this operation.
16184
+ # Corresponds to the JSON property `errors`
16185
+ # @return [Array<Google::Apis::ComputeAlpha::HaControllerStatusZoneStatusLastError::Errors::Error>]
16186
+ attr_accessor :errors
16187
+
16188
+ def initialize(**args)
16189
+ update!(**args)
16190
+ end
16191
+
16192
+ # Update properties of this object
16193
+ def update!(**args)
16194
+ @errors = args[:errors] if args.key?(:errors)
16195
+ end
16196
+
16197
+ #
16198
+ class Error
16199
+ include Google::Apis::Core::Hashable
16200
+
16201
+ # [Output Only] The error type identifier for this error.
16202
+ # Corresponds to the JSON property `code`
16203
+ # @return [String]
16204
+ attr_accessor :code
16205
+
16206
+ # [Output Only] An optional list of messages that contain the error details.
16207
+ # There is a set of defined message types to use for providing details.The
16208
+ # syntax depends on the error code. For example, QuotaExceededInfo will have
16209
+ # details when the error code is QUOTA_EXCEEDED.
16210
+ # Corresponds to the JSON property `errorDetails`
16211
+ # @return [Array<Google::Apis::ComputeAlpha::HaControllerStatusZoneStatusLastError::Errors::Error::ErrorDetail>]
16212
+ attr_accessor :error_details
16213
+
16214
+ # [Output Only] Indicates the field in the request that caused the error. This
16215
+ # property is optional.
16216
+ # Corresponds to the JSON property `location`
16217
+ # @return [String]
16218
+ attr_accessor :location
16219
+
16220
+ # [Output Only] An optional, human-readable error message.
16221
+ # Corresponds to the JSON property `message`
16222
+ # @return [String]
16223
+ attr_accessor :message
16224
+
16225
+ def initialize(**args)
16226
+ update!(**args)
16227
+ end
16228
+
16229
+ # Update properties of this object
16230
+ def update!(**args)
16231
+ @code = args[:code] if args.key?(:code)
16232
+ @error_details = args[:error_details] if args.key?(:error_details)
16233
+ @location = args[:location] if args.key?(:location)
16234
+ @message = args[:message] if args.key?(:message)
16235
+ end
16236
+
16237
+ #
16238
+ class ErrorDetail
16239
+ include Google::Apis::Core::Hashable
16240
+
16241
+ # Describes the cause of the error with structured details. Example of an error
16242
+ # when contacting the "pubsub.googleapis.com" API when it is not enabled: ` "
16243
+ # reason": "API_DISABLED" "domain": "googleapis.com" "metadata": ` "resource": "
16244
+ # projects/123", "service": "pubsub.googleapis.com" ` ` This response indicates
16245
+ # that the pubsub.googleapis.com API is not enabled. Example of an error that is
16246
+ # returned when attempting to create a Spanner instance in a region that is out
16247
+ # of stock: ` "reason": "STOCKOUT" "domain": "spanner.googleapis.com", "metadata"
16248
+ # : ` "availableRegions": "us-central1,us-east2" ` `
16249
+ # Corresponds to the JSON property `errorInfo`
16250
+ # @return [Google::Apis::ComputeAlpha::ErrorInfo]
16251
+ attr_accessor :error_info
16252
+
16253
+ # Provides links to documentation or for performing an out of band action. For
16254
+ # example, if a quota check failed with an error indicating the calling project
16255
+ # hasn't enabled the accessed service, this can contain a URL pointing directly
16256
+ # to the right place in the developer console to flip the bit.
16257
+ # Corresponds to the JSON property `help`
16258
+ # @return [Google::Apis::ComputeAlpha::Help]
16259
+ attr_accessor :help
16260
+
16261
+ # Provides a localized error message that is safe to return to the user which
16262
+ # can be attached to an RPC error.
16263
+ # Corresponds to the JSON property `localizedMessage`
16264
+ # @return [Google::Apis::ComputeAlpha::LocalizedMessage]
16265
+ attr_accessor :localized_message
16266
+
16267
+ # Additional details for quota exceeded error for resource quota.
16268
+ # Corresponds to the JSON property `quotaInfo`
16269
+ # @return [Google::Apis::ComputeAlpha::QuotaExceededInfo]
16270
+ attr_accessor :quota_info
16271
+
16272
+ def initialize(**args)
16273
+ update!(**args)
16274
+ end
16275
+
16276
+ # Update properties of this object
16277
+ def update!(**args)
16278
+ @error_info = args[:error_info] if args.key?(:error_info)
16279
+ @help = args[:help] if args.key?(:help)
16280
+ @localized_message = args[:localized_message] if args.key?(:localized_message)
16281
+ @quota_info = args[:quota_info] if args.key?(:quota_info)
16282
+ end
16283
+ end
16284
+ end
16285
+ end
16286
+ end
16287
+
16288
+ # Config for a zone that the HaController may use for running the VM instance.
16289
+ class HaControllerZoneConfiguration
16290
+ include Google::Apis::Core::Hashable
16291
+
16292
+ # A set of node affinity configurations. Refer to Configuring node affinity for
16293
+ # more information. Overrides reservationAffinity.
16294
+ # Corresponds to the JSON property `nodeAffinities`
16295
+ # @return [Array<Google::Apis::ComputeAlpha::HaControllerZoneConfigurationNodeAffinity>]
16296
+ attr_accessor :node_affinities
16297
+
16298
+ # Specifies the reservations that this instance can consume from. This message
16299
+ # should be an exact copy of the Instances representation of AllocationAffinity.
16300
+ # LINT.IfChange(HaControllerAllocationAffinityMixer)
16301
+ # Corresponds to the JSON property `reservationAffinity`
16302
+ # @return [Google::Apis::ComputeAlpha::HaControllerZoneConfigurationReservationAffinity]
16303
+ attr_accessor :reservation_affinity
16304
+
16305
+ def initialize(**args)
16306
+ update!(**args)
16307
+ end
16308
+
16309
+ # Update properties of this object
16310
+ def update!(**args)
16311
+ @node_affinities = args[:node_affinities] if args.key?(:node_affinities)
16312
+ @reservation_affinity = args[:reservation_affinity] if args.key?(:reservation_affinity)
16313
+ end
16314
+ end
16315
+
16316
+ # Node Affinity: the configuration of desired nodes onto which the Instance
16317
+ # could be scheduled. This message should be an exact copy of the Instances
16318
+ # representation of NodeAffinity. LINT.IfChange(HaControllerNodeAffinityMixer)
16319
+ class HaControllerZoneConfigurationNodeAffinity
16320
+ include Google::Apis::Core::Hashable
16321
+
16322
+ # Corresponds to the label key of Node resource.
16323
+ # Corresponds to the JSON property `key`
16324
+ # @return [String]
16325
+ attr_accessor :key
16326
+
16327
+ # Defines the operation of node selection. Valid operators are IN for affinity
16328
+ # and NOT_IN for anti-affinity.
16329
+ # Corresponds to the JSON property `operator`
16330
+ # @return [String]
16331
+ attr_accessor :operator
16332
+
16333
+ # Corresponds to the label values of Node resource.
16334
+ # Corresponds to the JSON property `values`
16335
+ # @return [Array<String>]
16336
+ attr_accessor :values
16337
+
16338
+ def initialize(**args)
16339
+ update!(**args)
16340
+ end
16341
+
16342
+ # Update properties of this object
16343
+ def update!(**args)
16344
+ @key = args[:key] if args.key?(:key)
16345
+ @operator = args[:operator] if args.key?(:operator)
16346
+ @values = args[:values] if args.key?(:values)
16347
+ end
16348
+ end
16349
+
16350
+ # Specifies the reservations that this instance can consume from. This message
16351
+ # should be an exact copy of the Instances representation of AllocationAffinity.
16352
+ # LINT.IfChange(HaControllerAllocationAffinityMixer)
16353
+ class HaControllerZoneConfigurationReservationAffinity
16354
+ include Google::Apis::Core::Hashable
16355
+
16356
+ # Specifies the type of reservation from which this instance can consume
16357
+ # resources: ANY_RESERVATION (default), SPECIFIC_RESERVATION, or NO_RESERVATION.
16358
+ # See Consuming reserved instances for examples.
16359
+ # Corresponds to the JSON property `consumeReservationType`
16360
+ # @return [String]
16361
+ attr_accessor :consume_reservation_type
16362
+
16363
+ # Corresponds to the label key of a reservation resource. To target a
16364
+ # SPECIFIC_RESERVATION by name, specify googleapis.com/reservation-name as the
16365
+ # key and specify the name of your reservation as its value.
16366
+ # Corresponds to the JSON property `key`
16367
+ # @return [String]
16368
+ attr_accessor :key
16369
+
16370
+ # Corresponds to the label values of a reservation resource. This can be either
16371
+ # a name to a reservation in the same project or "projects/different-project/
16372
+ # reservations/some-reservation-name" to target a shared reservation in the same
16373
+ # zone but in a different project.
16374
+ # Corresponds to the JSON property `values`
16375
+ # @return [Array<String>]
16376
+ attr_accessor :values
16377
+
16378
+ def initialize(**args)
16379
+ update!(**args)
16380
+ end
16381
+
16382
+ # Update properties of this object
16383
+ def update!(**args)
16384
+ @consume_reservation_type = args[:consume_reservation_type] if args.key?(:consume_reservation_type)
16385
+ @key = args[:key] if args.key?(:key)
16386
+ @values = args[:values] if args.key?(:values)
16387
+ end
16388
+ end
16389
+
15705
16390
  #
15706
16391
  class HaControllersFailoverRequest
15707
16392
  include Google::Apis::Core::Hashable
@@ -15721,6 +16406,219 @@ module Google
15721
16406
  end
15722
16407
  end
15723
16408
 
16409
+ #
16410
+ class HaControllersList
16411
+ include Google::Apis::Core::Hashable
16412
+
16413
+ #
16414
+ # Corresponds to the JSON property `etag`
16415
+ # @return [String]
16416
+ attr_accessor :etag
16417
+
16418
+ # Unique identifier for the resource; defined by the server.
16419
+ # Corresponds to the JSON property `id`
16420
+ # @return [String]
16421
+ attr_accessor :id
16422
+
16423
+ # A list of HaControllers in the specified project and region.
16424
+ # Corresponds to the JSON property `items`
16425
+ # @return [Array<Google::Apis::ComputeAlpha::HaController>]
16426
+ attr_accessor :items
16427
+
16428
+ # This token allows you to get the next page of results for maxResults, use the
16429
+ # nextPageToken as a value for the query parameter pageToken in the next list
16430
+ # request. Subsequent list requests will have their own nextPageToken to
16431
+ # continue paging through the results.
16432
+ # Corresponds to the JSON property `nextPageToken`
16433
+ # @return [String]
16434
+ attr_accessor :next_page_token
16435
+
16436
+ # [Output only] Server-defined URL for this resource.
16437
+ # Corresponds to the JSON property `selfLink`
16438
+ # @return [String]
16439
+ attr_accessor :self_link
16440
+
16441
+ # [Output only] Unreachable resources.
16442
+ # Corresponds to the JSON property `unreachables`
16443
+ # @return [Array<String>]
16444
+ attr_accessor :unreachables
16445
+
16446
+ # Informational warning message.
16447
+ # Corresponds to the JSON property `warning`
16448
+ # @return [Google::Apis::ComputeAlpha::HaControllersList::Warning]
16449
+ attr_accessor :warning
16450
+
16451
+ def initialize(**args)
16452
+ update!(**args)
16453
+ end
16454
+
16455
+ # Update properties of this object
16456
+ def update!(**args)
16457
+ @etag = args[:etag] if args.key?(:etag)
16458
+ @id = args[:id] if args.key?(:id)
16459
+ @items = args[:items] if args.key?(:items)
16460
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
16461
+ @self_link = args[:self_link] if args.key?(:self_link)
16462
+ @unreachables = args[:unreachables] if args.key?(:unreachables)
16463
+ @warning = args[:warning] if args.key?(:warning)
16464
+ end
16465
+
16466
+ # Informational warning message.
16467
+ class Warning
16468
+ include Google::Apis::Core::Hashable
16469
+
16470
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
16471
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
16472
+ # Corresponds to the JSON property `code`
16473
+ # @return [String]
16474
+ attr_accessor :code
16475
+
16476
+ # [Output Only] Metadata about this warning in key: value format. For example: "
16477
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
16478
+ # Corresponds to the JSON property `data`
16479
+ # @return [Array<Google::Apis::ComputeAlpha::HaControllersList::Warning::Datum>]
16480
+ attr_accessor :data
16481
+
16482
+ # [Output Only] A human-readable description of the warning code.
16483
+ # Corresponds to the JSON property `message`
16484
+ # @return [String]
16485
+ attr_accessor :message
16486
+
16487
+ def initialize(**args)
16488
+ update!(**args)
16489
+ end
16490
+
16491
+ # Update properties of this object
16492
+ def update!(**args)
16493
+ @code = args[:code] if args.key?(:code)
16494
+ @data = args[:data] if args.key?(:data)
16495
+ @message = args[:message] if args.key?(:message)
16496
+ end
16497
+
16498
+ #
16499
+ class Datum
16500
+ include Google::Apis::Core::Hashable
16501
+
16502
+ # [Output Only] A key that provides more detail on the warning being returned.
16503
+ # For example, for warnings where there are no results in a list request for a
16504
+ # particular zone, this key might be scope and the key value might be the zone
16505
+ # name. Other examples might be a key indicating a deprecated resource and a
16506
+ # suggested replacement, or a warning about invalid network settings (for
16507
+ # example, if an instance attempts to perform IP forwarding but is not enabled
16508
+ # for IP forwarding).
16509
+ # Corresponds to the JSON property `key`
16510
+ # @return [String]
16511
+ attr_accessor :key
16512
+
16513
+ # [Output Only] A warning data value corresponding to the key.
16514
+ # Corresponds to the JSON property `value`
16515
+ # @return [String]
16516
+ attr_accessor :value
16517
+
16518
+ def initialize(**args)
16519
+ update!(**args)
16520
+ end
16521
+
16522
+ # Update properties of this object
16523
+ def update!(**args)
16524
+ @key = args[:key] if args.key?(:key)
16525
+ @value = args[:value] if args.key?(:value)
16526
+ end
16527
+ end
16528
+ end
16529
+ end
16530
+
16531
+ #
16532
+ class HealthAggregationPoliciesScopedList
16533
+ include Google::Apis::Core::Hashable
16534
+
16535
+ # A list of HealthAggregationPolicys contained in this scope.
16536
+ # Corresponds to the JSON property `healthAggregationPolicies`
16537
+ # @return [Array<Google::Apis::ComputeAlpha::HealthAggregationPolicy>]
16538
+ attr_accessor :health_aggregation_policies
16539
+
16540
+ # Informational warning which replaces the list of health aggregation policies
16541
+ # when the list is empty.
16542
+ # Corresponds to the JSON property `warning`
16543
+ # @return [Google::Apis::ComputeAlpha::HealthAggregationPoliciesScopedList::Warning]
16544
+ attr_accessor :warning
16545
+
16546
+ def initialize(**args)
16547
+ update!(**args)
16548
+ end
16549
+
16550
+ # Update properties of this object
16551
+ def update!(**args)
16552
+ @health_aggregation_policies = args[:health_aggregation_policies] if args.key?(:health_aggregation_policies)
16553
+ @warning = args[:warning] if args.key?(:warning)
16554
+ end
16555
+
16556
+ # Informational warning which replaces the list of health aggregation policies
16557
+ # when the list is empty.
16558
+ class Warning
16559
+ include Google::Apis::Core::Hashable
16560
+
16561
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
16562
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
16563
+ # Corresponds to the JSON property `code`
16564
+ # @return [String]
16565
+ attr_accessor :code
16566
+
16567
+ # [Output Only] Metadata about this warning in key: value format. For example: "
16568
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
16569
+ # Corresponds to the JSON property `data`
16570
+ # @return [Array<Google::Apis::ComputeAlpha::HealthAggregationPoliciesScopedList::Warning::Datum>]
16571
+ attr_accessor :data
16572
+
16573
+ # [Output Only] A human-readable description of the warning code.
16574
+ # Corresponds to the JSON property `message`
16575
+ # @return [String]
16576
+ attr_accessor :message
16577
+
16578
+ def initialize(**args)
16579
+ update!(**args)
16580
+ end
16581
+
16582
+ # Update properties of this object
16583
+ def update!(**args)
16584
+ @code = args[:code] if args.key?(:code)
16585
+ @data = args[:data] if args.key?(:data)
16586
+ @message = args[:message] if args.key?(:message)
16587
+ end
16588
+
16589
+ #
16590
+ class Datum
16591
+ include Google::Apis::Core::Hashable
16592
+
16593
+ # [Output Only] A key that provides more detail on the warning being returned.
16594
+ # For example, for warnings where there are no results in a list request for a
16595
+ # particular zone, this key might be scope and the key value might be the zone
16596
+ # name. Other examples might be a key indicating a deprecated resource and a
16597
+ # suggested replacement, or a warning about invalid network settings (for
16598
+ # example, if an instance attempts to perform IP forwarding but is not enabled
16599
+ # for IP forwarding).
16600
+ # Corresponds to the JSON property `key`
16601
+ # @return [String]
16602
+ attr_accessor :key
16603
+
16604
+ # [Output Only] A warning data value corresponding to the key.
16605
+ # Corresponds to the JSON property `value`
16606
+ # @return [String]
16607
+ attr_accessor :value
16608
+
16609
+ def initialize(**args)
16610
+ update!(**args)
16611
+ end
16612
+
16613
+ # Update properties of this object
16614
+ def update!(**args)
16615
+ @key = args[:key] if args.key?(:key)
16616
+ @value = args[:value] if args.key?(:value)
16617
+ end
16618
+ end
16619
+ end
16620
+ end
16621
+
15724
16622
  # Represents a health aggregation policy. A health aggregation policy resource
15725
16623
  # defines a policy to aggregate health. For more information, see Health checks
15726
16624
  # overview.
@@ -15844,6 +16742,129 @@ module Google
15844
16742
  end
15845
16743
  end
15846
16744
 
16745
+ # Contains a list of HealthAggregationPoliciesScopedList.
16746
+ class HealthAggregationPolicyAggregatedList
16747
+ include Google::Apis::Core::Hashable
16748
+
16749
+ # [Output Only] Unique identifier for the resource; defined by the server.
16750
+ # Corresponds to the JSON property `id`
16751
+ # @return [String]
16752
+ attr_accessor :id
16753
+
16754
+ # A list of HealthAggregationPoliciesScopedList resources.
16755
+ # Corresponds to the JSON property `items`
16756
+ # @return [Hash<String,Google::Apis::ComputeAlpha::HealthAggregationPoliciesScopedList>]
16757
+ attr_accessor :items
16758
+
16759
+ # Type of resource.
16760
+ # Corresponds to the JSON property `kind`
16761
+ # @return [String]
16762
+ attr_accessor :kind
16763
+
16764
+ # [Output Only] This token allows you to get the next page of results for list
16765
+ # requests. If the number of results is larger than maxResults, use the
16766
+ # nextPageToken as a value for the query parameter pageToken in the next list
16767
+ # request. Subsequent list requests will have their own nextPageToken to
16768
+ # continue paging through the results.
16769
+ # Corresponds to the JSON property `nextPageToken`
16770
+ # @return [String]
16771
+ attr_accessor :next_page_token
16772
+
16773
+ # [Output Only] Server-defined URL for this resource.
16774
+ # Corresponds to the JSON property `selfLink`
16775
+ # @return [String]
16776
+ attr_accessor :self_link
16777
+
16778
+ # [Output Only] Unreachable resources.
16779
+ # Corresponds to the JSON property `unreachables`
16780
+ # @return [Array<String>]
16781
+ attr_accessor :unreachables
16782
+
16783
+ # [Output Only] Informational warning message.
16784
+ # Corresponds to the JSON property `warning`
16785
+ # @return [Google::Apis::ComputeAlpha::HealthAggregationPolicyAggregatedList::Warning]
16786
+ attr_accessor :warning
16787
+
16788
+ def initialize(**args)
16789
+ update!(**args)
16790
+ end
16791
+
16792
+ # Update properties of this object
16793
+ def update!(**args)
16794
+ @id = args[:id] if args.key?(:id)
16795
+ @items = args[:items] if args.key?(:items)
16796
+ @kind = args[:kind] if args.key?(:kind)
16797
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
16798
+ @self_link = args[:self_link] if args.key?(:self_link)
16799
+ @unreachables = args[:unreachables] if args.key?(:unreachables)
16800
+ @warning = args[:warning] if args.key?(:warning)
16801
+ end
16802
+
16803
+ # [Output Only] Informational warning message.
16804
+ class Warning
16805
+ include Google::Apis::Core::Hashable
16806
+
16807
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
16808
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
16809
+ # Corresponds to the JSON property `code`
16810
+ # @return [String]
16811
+ attr_accessor :code
16812
+
16813
+ # [Output Only] Metadata about this warning in key: value format. For example: "
16814
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
16815
+ # Corresponds to the JSON property `data`
16816
+ # @return [Array<Google::Apis::ComputeAlpha::HealthAggregationPolicyAggregatedList::Warning::Datum>]
16817
+ attr_accessor :data
16818
+
16819
+ # [Output Only] A human-readable description of the warning code.
16820
+ # Corresponds to the JSON property `message`
16821
+ # @return [String]
16822
+ attr_accessor :message
16823
+
16824
+ def initialize(**args)
16825
+ update!(**args)
16826
+ end
16827
+
16828
+ # Update properties of this object
16829
+ def update!(**args)
16830
+ @code = args[:code] if args.key?(:code)
16831
+ @data = args[:data] if args.key?(:data)
16832
+ @message = args[:message] if args.key?(:message)
16833
+ end
16834
+
16835
+ #
16836
+ class Datum
16837
+ include Google::Apis::Core::Hashable
16838
+
16839
+ # [Output Only] A key that provides more detail on the warning being returned.
16840
+ # For example, for warnings where there are no results in a list request for a
16841
+ # particular zone, this key might be scope and the key value might be the zone
16842
+ # name. Other examples might be a key indicating a deprecated resource and a
16843
+ # suggested replacement, or a warning about invalid network settings (for
16844
+ # example, if an instance attempts to perform IP forwarding but is not enabled
16845
+ # for IP forwarding).
16846
+ # Corresponds to the JSON property `key`
16847
+ # @return [String]
16848
+ attr_accessor :key
16849
+
16850
+ # [Output Only] A warning data value corresponding to the key.
16851
+ # Corresponds to the JSON property `value`
16852
+ # @return [String]
16853
+ attr_accessor :value
16854
+
16855
+ def initialize(**args)
16856
+ update!(**args)
16857
+ end
16858
+
16859
+ # Update properties of this object
16860
+ def update!(**args)
16861
+ @key = args[:key] if args.key?(:key)
16862
+ @value = args[:value] if args.key?(:value)
16863
+ end
16864
+ end
16865
+ end
16866
+ end
16867
+
15847
16868
  #
15848
16869
  class HealthAggregationPolicyList
15849
16870
  include Google::Apis::Core::Hashable
@@ -33657,6 +34678,12 @@ module Google
33657
34678
  class MultiMigStatus
33658
34679
  include Google::Apis::Core::Hashable
33659
34680
 
34681
+ # [Output Only] The accelerator topology applied to this multi-MIG. Currently
34682
+ # only one accelerator topology is supported.
34683
+ # Corresponds to the JSON property `appliedAcceleratorTopologies`
34684
+ # @return [Array<Google::Apis::ComputeAlpha::MultiMigStatusAcceleratorTopology>]
34685
+ attr_accessor :applied_accelerator_topologies
34686
+
33660
34687
  #
33661
34688
  # Corresponds to the JSON property `memberInstanceGroupManagers`
33662
34689
  # @return [Array<String>]
@@ -33673,11 +34700,178 @@ module Google
33673
34700
 
33674
34701
  # Update properties of this object
33675
34702
  def update!(**args)
34703
+ @applied_accelerator_topologies = args[:applied_accelerator_topologies] if args.key?(:applied_accelerator_topologies)
33676
34704
  @member_instance_group_managers = args[:member_instance_group_managers] if args.key?(:member_instance_group_managers)
33677
34705
  @members_count = args[:members_count] if args.key?(:members_count)
33678
34706
  end
33679
34707
  end
33680
34708
 
34709
+ #
34710
+ class MultiMigStatusAcceleratorTopology
34711
+ include Google::Apis::Core::Hashable
34712
+
34713
+ # [Output Only] Topology in the format of: "16x16", "4x4x4", etc. The value is
34714
+ # the same as configured in the WorkloadPolicy.
34715
+ # Corresponds to the JSON property `acceleratorTopology`
34716
+ # @return [String]
34717
+ attr_accessor :accelerator_topology
34718
+
34719
+ # [Output Only] The state of the accelerator topology.
34720
+ # Corresponds to the JSON property `acceleratorTopologyState`
34721
+ # @return [String]
34722
+ attr_accessor :accelerator_topology_state
34723
+
34724
+ # [Output Only] The result of the latest accelerator topology state check.
34725
+ # Corresponds to the JSON property `acceleratorTopologyStateLastCheck`
34726
+ # @return [Google::Apis::ComputeAlpha::MultiMigStatusAcceleratorTopologyAcceleratorTopologyStateLastCheck]
34727
+ attr_accessor :accelerator_topology_state_last_check
34728
+
34729
+ def initialize(**args)
34730
+ update!(**args)
34731
+ end
34732
+
34733
+ # Update properties of this object
34734
+ def update!(**args)
34735
+ @accelerator_topology = args[:accelerator_topology] if args.key?(:accelerator_topology)
34736
+ @accelerator_topology_state = args[:accelerator_topology_state] if args.key?(:accelerator_topology_state)
34737
+ @accelerator_topology_state_last_check = args[:accelerator_topology_state_last_check] if args.key?(:accelerator_topology_state_last_check)
34738
+ end
34739
+ end
34740
+
34741
+ #
34742
+ class MultiMigStatusAcceleratorTopologyAcceleratorTopologyStateLastCheck
34743
+ include Google::Apis::Core::Hashable
34744
+
34745
+ # [Output Only] Encountered errors on the last state check.
34746
+ # Corresponds to the JSON property `error`
34747
+ # @return [Google::Apis::ComputeAlpha::MultiMigStatusAcceleratorTopologyAcceleratorTopologyStateLastCheck::Error]
34748
+ attr_accessor :error
34749
+
34750
+ # [Output Only] Timestamp is shown only if there is an error. The field has //
34751
+ # RFC3339 // text format.
34752
+ # Corresponds to the JSON property `timestamp`
34753
+ # @return [String]
34754
+ attr_accessor :timestamp
34755
+
34756
+ def initialize(**args)
34757
+ update!(**args)
34758
+ end
34759
+
34760
+ # Update properties of this object
34761
+ def update!(**args)
34762
+ @error = args[:error] if args.key?(:error)
34763
+ @timestamp = args[:timestamp] if args.key?(:timestamp)
34764
+ end
34765
+
34766
+ # [Output Only] Encountered errors on the last state check.
34767
+ class Error
34768
+ include Google::Apis::Core::Hashable
34769
+
34770
+ # [Output Only] The array of errors encountered while processing this operation.
34771
+ # Corresponds to the JSON property `errors`
34772
+ # @return [Array<Google::Apis::ComputeAlpha::MultiMigStatusAcceleratorTopologyAcceleratorTopologyStateLastCheck::Error::Error>]
34773
+ attr_accessor :errors
34774
+
34775
+ def initialize(**args)
34776
+ update!(**args)
34777
+ end
34778
+
34779
+ # Update properties of this object
34780
+ def update!(**args)
34781
+ @errors = args[:errors] if args.key?(:errors)
34782
+ end
34783
+
34784
+ #
34785
+ class Error
34786
+ include Google::Apis::Core::Hashable
34787
+
34788
+ # [Output Only] The error type identifier for this error.
34789
+ # Corresponds to the JSON property `code`
34790
+ # @return [String]
34791
+ attr_accessor :code
34792
+
34793
+ # [Output Only] An optional list of messages that contain the error details.
34794
+ # There is a set of defined message types to use for providing details.The
34795
+ # syntax depends on the error code. For example, QuotaExceededInfo will have
34796
+ # details when the error code is QUOTA_EXCEEDED.
34797
+ # Corresponds to the JSON property `errorDetails`
34798
+ # @return [Array<Google::Apis::ComputeAlpha::MultiMigStatusAcceleratorTopologyAcceleratorTopologyStateLastCheck::Error::Error::ErrorDetail>]
34799
+ attr_accessor :error_details
34800
+
34801
+ # [Output Only] Indicates the field in the request that caused the error. This
34802
+ # property is optional.
34803
+ # Corresponds to the JSON property `location`
34804
+ # @return [String]
34805
+ attr_accessor :location
34806
+
34807
+ # [Output Only] An optional, human-readable error message.
34808
+ # Corresponds to the JSON property `message`
34809
+ # @return [String]
34810
+ attr_accessor :message
34811
+
34812
+ def initialize(**args)
34813
+ update!(**args)
34814
+ end
34815
+
34816
+ # Update properties of this object
34817
+ def update!(**args)
34818
+ @code = args[:code] if args.key?(:code)
34819
+ @error_details = args[:error_details] if args.key?(:error_details)
34820
+ @location = args[:location] if args.key?(:location)
34821
+ @message = args[:message] if args.key?(:message)
34822
+ end
34823
+
34824
+ #
34825
+ class ErrorDetail
34826
+ include Google::Apis::Core::Hashable
34827
+
34828
+ # Describes the cause of the error with structured details. Example of an error
34829
+ # when contacting the "pubsub.googleapis.com" API when it is not enabled: ` "
34830
+ # reason": "API_DISABLED" "domain": "googleapis.com" "metadata": ` "resource": "
34831
+ # projects/123", "service": "pubsub.googleapis.com" ` ` This response indicates
34832
+ # that the pubsub.googleapis.com API is not enabled. Example of an error that is
34833
+ # returned when attempting to create a Spanner instance in a region that is out
34834
+ # of stock: ` "reason": "STOCKOUT" "domain": "spanner.googleapis.com", "metadata"
34835
+ # : ` "availableRegions": "us-central1,us-east2" ` `
34836
+ # Corresponds to the JSON property `errorInfo`
34837
+ # @return [Google::Apis::ComputeAlpha::ErrorInfo]
34838
+ attr_accessor :error_info
34839
+
34840
+ # Provides links to documentation or for performing an out of band action. For
34841
+ # example, if a quota check failed with an error indicating the calling project
34842
+ # hasn't enabled the accessed service, this can contain a URL pointing directly
34843
+ # to the right place in the developer console to flip the bit.
34844
+ # Corresponds to the JSON property `help`
34845
+ # @return [Google::Apis::ComputeAlpha::Help]
34846
+ attr_accessor :help
34847
+
34848
+ # Provides a localized error message that is safe to return to the user which
34849
+ # can be attached to an RPC error.
34850
+ # Corresponds to the JSON property `localizedMessage`
34851
+ # @return [Google::Apis::ComputeAlpha::LocalizedMessage]
34852
+ attr_accessor :localized_message
34853
+
34854
+ # Additional details for quota exceeded error for resource quota.
34855
+ # Corresponds to the JSON property `quotaInfo`
34856
+ # @return [Google::Apis::ComputeAlpha::QuotaExceededInfo]
34857
+ attr_accessor :quota_info
34858
+
34859
+ def initialize(**args)
34860
+ update!(**args)
34861
+ end
34862
+
34863
+ # Update properties of this object
34864
+ def update!(**args)
34865
+ @error_info = args[:error_info] if args.key?(:error_info)
34866
+ @help = args[:help] if args.key?(:help)
34867
+ @localized_message = args[:localized_message] if args.key?(:localized_message)
34868
+ @quota_info = args[:quota_info] if args.key?(:quota_info)
34869
+ end
34870
+ end
34871
+ end
34872
+ end
34873
+ end
34874
+
33681
34875
  #
33682
34876
  class MultiMigsList
33683
34877
  include Google::Apis::Core::Hashable
@@ -36956,6 +38150,11 @@ module Google
36956
38150
  # @return [String]
36957
38151
  attr_accessor :allow_external_ip_access
36958
38152
 
38153
+ # Specifies whether firewall policy can be attached to the network.
38154
+ # Corresponds to the JSON property `allowFirewallPolicy`
38155
+ # @return [String]
38156
+ attr_accessor :allow_firewall_policy
38157
+
36959
38158
  # Specifies whether Cloud Interconnect creation is allowed.
36960
38159
  # Corresponds to the JSON property `allowInterconnect`
36961
38160
  # @return [String]
@@ -37016,6 +38215,11 @@ module Google
37016
38215
  # @return [String]
37017
38216
  attr_accessor :allow_sub_interfaces
37018
38217
 
38218
+ # Specifies whether VPC firewall rules can be created under the network.
38219
+ # Corresponds to the JSON property `allowVpcFirewallRules`
38220
+ # @return [String]
38221
+ attr_accessor :allow_vpc_firewall_rules
38222
+
37019
38223
  # Specifies whether VPC peering is allowed.
37020
38224
  # Corresponds to the JSON property `allowVpcPeering`
37021
38225
  # @return [String]
@@ -37026,6 +38230,11 @@ module Google
37026
38230
  # @return [String]
37027
38231
  attr_accessor :allow_vpn
37028
38232
 
38233
+ #
38234
+ # Corresponds to the JSON property `firewallPolicyTypes`
38235
+ # @return [Array<String>]
38236
+ attr_accessor :firewall_policy_types
38237
+
37029
38238
  # If set, limits the interface types that the network supports. If empty, all
37030
38239
  # interface types are supported.
37031
38240
  # Corresponds to the JSON property `interfaceTypes`
@@ -37071,6 +38280,7 @@ module Google
37071
38280
  @allow_cloud_router = args[:allow_cloud_router] if args.key?(:allow_cloud_router)
37072
38281
  @allow_default_nic_attachment = args[:allow_default_nic_attachment] if args.key?(:allow_default_nic_attachment)
37073
38282
  @allow_external_ip_access = args[:allow_external_ip_access] if args.key?(:allow_external_ip_access)
38283
+ @allow_firewall_policy = args[:allow_firewall_policy] if args.key?(:allow_firewall_policy)
37074
38284
  @allow_interconnect = args[:allow_interconnect] if args.key?(:allow_interconnect)
37075
38285
  @allow_ip_forwarding = args[:allow_ip_forwarding] if args.key?(:allow_ip_forwarding)
37076
38286
  @allow_load_balancing = args[:allow_load_balancing] if args.key?(:allow_load_balancing)
@@ -37083,8 +38293,10 @@ module Google
37083
38293
  @allow_same_network_unicast = args[:allow_same_network_unicast] if args.key?(:allow_same_network_unicast)
37084
38294
  @allow_static_routes = args[:allow_static_routes] if args.key?(:allow_static_routes)
37085
38295
  @allow_sub_interfaces = args[:allow_sub_interfaces] if args.key?(:allow_sub_interfaces)
38296
+ @allow_vpc_firewall_rules = args[:allow_vpc_firewall_rules] if args.key?(:allow_vpc_firewall_rules)
37086
38297
  @allow_vpc_peering = args[:allow_vpc_peering] if args.key?(:allow_vpc_peering)
37087
38298
  @allow_vpn = args[:allow_vpn] if args.key?(:allow_vpn)
38299
+ @firewall_policy_types = args[:firewall_policy_types] if args.key?(:firewall_policy_types)
37088
38300
  @interface_types = args[:interface_types] if args.key?(:interface_types)
37089
38301
  @subnet_purposes = args[:subnet_purposes] if args.key?(:subnet_purposes)
37090
38302
  @subnet_stack_types = args[:subnet_stack_types] if args.key?(:subnet_stack_types)
@@ -47844,6 +49056,12 @@ module Google
47844
49056
  # @return [Fixnum]
47845
49057
  attr_accessor :in_use_count
47846
49058
 
49059
+ # Number of hosts currently in use. If there is one or more Instances running on
49060
+ # the host, it is considered in use.
49061
+ # Corresponds to the JSON property `inUseHostCount`
49062
+ # @return [Fixnum]
49063
+ attr_accessor :in_use_host_count
49064
+
47847
49065
  # [Output Only] Type of the resource. Always compute#reservationBlock for
47848
49066
  # reservation blocks.
47849
49067
  # Corresponds to the JSON property `kind`
@@ -47919,6 +49137,7 @@ module Google
47919
49137
  @health_info = args[:health_info] if args.key?(:health_info)
47920
49138
  @id = args[:id] if args.key?(:id)
47921
49139
  @in_use_count = args[:in_use_count] if args.key?(:in_use_count)
49140
+ @in_use_host_count = args[:in_use_host_count] if args.key?(:in_use_host_count)
47922
49141
  @kind = args[:kind] if args.key?(:kind)
47923
49142
  @location_prefix = args[:location_prefix] if args.key?(:location_prefix)
47924
49143
  @name = args[:name] if args.key?(:name)
@@ -48307,187 +49526,341 @@ module Google
48307
49526
  end
48308
49527
  end
48309
49528
 
48310
- # Represents a reservation subBlock resource.
48311
- class ReservationSubBlock
48312
- include Google::Apis::Core::Hashable
48313
-
48314
- # [Output Only] The number of hosts that are allocated in this reservation
48315
- # subBlock.
48316
- # Corresponds to the JSON property `count`
48317
- # @return [Fixnum]
48318
- attr_accessor :count
48319
-
48320
- # [Output Only] Creation timestamp in RFC3339 text format.
48321
- # Corresponds to the JSON property `creationTimestamp`
48322
- # @return [String]
48323
- attr_accessor :creation_timestamp
48324
-
48325
- # Health information for the reservation subBlock.
48326
- # Corresponds to the JSON property `healthInfo`
48327
- # @return [Google::Apis::ComputeAlpha::ReservationSubBlockHealthInfo]
48328
- attr_accessor :health_info
48329
-
48330
- # [Output Only] The unique identifier for the resource. This identifier is
48331
- # defined by the server.
48332
- # Corresponds to the JSON property `id`
48333
- # @return [Fixnum]
48334
- attr_accessor :id
48335
-
48336
- # [Output Only] The number of instances that are currently in use on this
48337
- # reservation subBlock.
48338
- # Corresponds to the JSON property `inUseCount`
48339
- # @return [Fixnum]
48340
- attr_accessor :in_use_count
48341
-
48342
- # [Output Only] Type of the resource. Always compute#reservationSubBlock for
48343
- # reservation subBlocks.
48344
- # Corresponds to the JSON property `kind`
48345
- # @return [String]
48346
- attr_accessor :kind
48347
-
48348
- # [Output Only] The name of this reservation subBlock generated by Google
48349
- # Compute Engine. The name must be 1-63 characters long, and comply with RFC1035
48350
- # @pattern [a-z](?:[-a-z0-9]`0,61`[a-z0-9])?
48351
- # Corresponds to the JSON property `name`
48352
- # @return [String]
48353
- attr_accessor :name
48354
-
48355
- # [Output Only] The physical topology of the reservation subBlock.
48356
- # Corresponds to the JSON property `physicalTopology`
48357
- # @return [Google::Apis::ComputeAlpha::ReservationSubBlockPhysicalTopology]
48358
- attr_accessor :physical_topology
48359
-
48360
- # Maintenance Info for ReservationBlocks.
48361
- # Corresponds to the JSON property `reservationSubBlockMaintenance`
48362
- # @return [Google::Apis::ComputeAlpha::GroupMaintenanceInfo]
48363
- attr_accessor :reservation_sub_block_maintenance
48364
-
48365
- # [Output Only] Server-defined fully-qualified URL for this resource.
48366
- # Corresponds to the JSON property `selfLink`
48367
- # @return [String]
48368
- attr_accessor :self_link
48369
-
48370
- # [Output Only] Server-defined URL for this resource with the resource id.
48371
- # Corresponds to the JSON property `selfLinkWithId`
48372
- # @return [String]
48373
- attr_accessor :self_link_with_id
48374
-
48375
- # [Output Only] Status of the reservation subBlock.
48376
- # Corresponds to the JSON property `status`
48377
- # @return [String]
48378
- attr_accessor :status
48379
-
48380
- # [Output Only] Zone in which the reservation subBlock resides.
48381
- # Corresponds to the JSON property `zone`
48382
- # @return [String]
48383
- attr_accessor :zone
48384
-
48385
- def initialize(**args)
48386
- update!(**args)
48387
- end
48388
-
48389
- # Update properties of this object
48390
- def update!(**args)
48391
- @count = args[:count] if args.key?(:count)
48392
- @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
48393
- @health_info = args[:health_info] if args.key?(:health_info)
48394
- @id = args[:id] if args.key?(:id)
48395
- @in_use_count = args[:in_use_count] if args.key?(:in_use_count)
48396
- @kind = args[:kind] if args.key?(:kind)
48397
- @name = args[:name] if args.key?(:name)
48398
- @physical_topology = args[:physical_topology] if args.key?(:physical_topology)
48399
- @reservation_sub_block_maintenance = args[:reservation_sub_block_maintenance] if args.key?(:reservation_sub_block_maintenance)
48400
- @self_link = args[:self_link] if args.key?(:self_link)
48401
- @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
48402
- @status = args[:status] if args.key?(:status)
48403
- @zone = args[:zone] if args.key?(:zone)
48404
- end
48405
- end
48406
-
48407
- # Health information for the reservation subBlock.
48408
- class ReservationSubBlockHealthInfo
48409
- include Google::Apis::Core::Hashable
48410
-
48411
- # The number of degraded hosts in the reservation subBlock.
48412
- # Corresponds to the JSON property `degradedHostCount`
48413
- # @return [Fixnum]
48414
- attr_accessor :degraded_host_count
48415
-
48416
- # The number of degraded infrastructure (e.g NV link domain) in the reservation
48417
- # subblock.
48418
- # Corresponds to the JSON property `degradedInfraCount`
48419
- # @return [Fixnum]
48420
- attr_accessor :degraded_infra_count
48421
-
48422
- # The health status of the reservation subBlock.
48423
- # Corresponds to the JSON property `healthStatus`
48424
- # @return [String]
48425
- attr_accessor :health_status
48426
-
48427
- # The number of healthy hosts in the reservation subBlock.
48428
- # Corresponds to the JSON property `healthyHostCount`
48429
- # @return [Fixnum]
48430
- attr_accessor :healthy_host_count
48431
-
48432
- # The number of healthy infrastructure (e.g NV link domain) in the reservation
48433
- # subblock.
48434
- # Corresponds to the JSON property `healthyInfraCount`
48435
- # @return [Fixnum]
48436
- attr_accessor :healthy_infra_count
48437
-
48438
- def initialize(**args)
48439
- update!(**args)
48440
- end
48441
-
48442
- # Update properties of this object
48443
- def update!(**args)
48444
- @degraded_host_count = args[:degraded_host_count] if args.key?(:degraded_host_count)
48445
- @degraded_infra_count = args[:degraded_infra_count] if args.key?(:degraded_infra_count)
48446
- @health_status = args[:health_status] if args.key?(:health_status)
48447
- @healthy_host_count = args[:healthy_host_count] if args.key?(:healthy_host_count)
48448
- @healthy_infra_count = args[:healthy_infra_count] if args.key?(:healthy_infra_count)
48449
- end
48450
- end
48451
-
49529
+ # Represents a reservation subBlock resource.
49530
+ class ReservationSubBlock
49531
+ include Google::Apis::Core::Hashable
49532
+
49533
+ # [Output Only] The number of hosts that are allocated in this reservation
49534
+ # subBlock.
49535
+ # Corresponds to the JSON property `count`
49536
+ # @return [Fixnum]
49537
+ attr_accessor :count
49538
+
49539
+ # [Output Only] Creation timestamp in RFC3339 text format.
49540
+ # Corresponds to the JSON property `creationTimestamp`
49541
+ # @return [String]
49542
+ attr_accessor :creation_timestamp
49543
+
49544
+ # Health information for the reservation subBlock.
49545
+ # Corresponds to the JSON property `healthInfo`
49546
+ # @return [Google::Apis::ComputeAlpha::ReservationSubBlockHealthInfo]
49547
+ attr_accessor :health_info
49548
+
49549
+ # [Output Only] The unique identifier for the resource. This identifier is
49550
+ # defined by the server.
49551
+ # Corresponds to the JSON property `id`
49552
+ # @return [Fixnum]
49553
+ attr_accessor :id
49554
+
49555
+ # [Output Only] The number of instances that are currently in use on this
49556
+ # reservation subBlock.
49557
+ # Corresponds to the JSON property `inUseCount`
49558
+ # @return [Fixnum]
49559
+ attr_accessor :in_use_count
49560
+
49561
+ # Number of hosts currently in use. If there is one or more Instances running on
49562
+ # the host, it is considered in use.
49563
+ # Corresponds to the JSON property `inUseHostCount`
49564
+ # @return [Fixnum]
49565
+ attr_accessor :in_use_host_count
49566
+
49567
+ # [Output Only] Type of the resource. Always compute#reservationSubBlock for
49568
+ # reservation subBlocks.
49569
+ # Corresponds to the JSON property `kind`
49570
+ # @return [String]
49571
+ attr_accessor :kind
49572
+
49573
+ # [Output Only] The name of this reservation subBlock generated by Google
49574
+ # Compute Engine. The name must be 1-63 characters long, and comply with RFC1035
49575
+ # @pattern [a-z](?:[-a-z0-9]`0,61`[a-z0-9])?
49576
+ # Corresponds to the JSON property `name`
49577
+ # @return [String]
49578
+ attr_accessor :name
49579
+
49580
+ # [Output Only] The physical topology of the reservation subBlock.
49581
+ # Corresponds to the JSON property `physicalTopology`
49582
+ # @return [Google::Apis::ComputeAlpha::ReservationSubBlockPhysicalTopology]
49583
+ attr_accessor :physical_topology
49584
+
49585
+ # Maintenance Info for ReservationBlocks.
49586
+ # Corresponds to the JSON property `reservationSubBlockMaintenance`
49587
+ # @return [Google::Apis::ComputeAlpha::GroupMaintenanceInfo]
49588
+ attr_accessor :reservation_sub_block_maintenance
49589
+
49590
+ # [Output Only] Server-defined fully-qualified URL for this resource.
49591
+ # Corresponds to the JSON property `selfLink`
49592
+ # @return [String]
49593
+ attr_accessor :self_link
49594
+
49595
+ # [Output Only] Server-defined URL for this resource with the resource id.
49596
+ # Corresponds to the JSON property `selfLinkWithId`
49597
+ # @return [String]
49598
+ attr_accessor :self_link_with_id
49599
+
49600
+ # [Output Only] Status of the reservation subBlock.
49601
+ # Corresponds to the JSON property `status`
49602
+ # @return [String]
49603
+ attr_accessor :status
49604
+
49605
+ # [Output Only] Zone in which the reservation subBlock resides.
49606
+ # Corresponds to the JSON property `zone`
49607
+ # @return [String]
49608
+ attr_accessor :zone
49609
+
49610
+ def initialize(**args)
49611
+ update!(**args)
49612
+ end
49613
+
49614
+ # Update properties of this object
49615
+ def update!(**args)
49616
+ @count = args[:count] if args.key?(:count)
49617
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
49618
+ @health_info = args[:health_info] if args.key?(:health_info)
49619
+ @id = args[:id] if args.key?(:id)
49620
+ @in_use_count = args[:in_use_count] if args.key?(:in_use_count)
49621
+ @in_use_host_count = args[:in_use_host_count] if args.key?(:in_use_host_count)
49622
+ @kind = args[:kind] if args.key?(:kind)
49623
+ @name = args[:name] if args.key?(:name)
49624
+ @physical_topology = args[:physical_topology] if args.key?(:physical_topology)
49625
+ @reservation_sub_block_maintenance = args[:reservation_sub_block_maintenance] if args.key?(:reservation_sub_block_maintenance)
49626
+ @self_link = args[:self_link] if args.key?(:self_link)
49627
+ @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
49628
+ @status = args[:status] if args.key?(:status)
49629
+ @zone = args[:zone] if args.key?(:zone)
49630
+ end
49631
+ end
49632
+
49633
+ # Health information for the reservation subBlock.
49634
+ class ReservationSubBlockHealthInfo
49635
+ include Google::Apis::Core::Hashable
49636
+
49637
+ # The number of degraded hosts in the reservation subBlock.
49638
+ # Corresponds to the JSON property `degradedHostCount`
49639
+ # @return [Fixnum]
49640
+ attr_accessor :degraded_host_count
49641
+
49642
+ # The number of degraded infrastructure (e.g NV link domain) in the reservation
49643
+ # subblock.
49644
+ # Corresponds to the JSON property `degradedInfraCount`
49645
+ # @return [Fixnum]
49646
+ attr_accessor :degraded_infra_count
49647
+
49648
+ # The health status of the reservation subBlock.
49649
+ # Corresponds to the JSON property `healthStatus`
49650
+ # @return [String]
49651
+ attr_accessor :health_status
49652
+
49653
+ # The number of healthy hosts in the reservation subBlock.
49654
+ # Corresponds to the JSON property `healthyHostCount`
49655
+ # @return [Fixnum]
49656
+ attr_accessor :healthy_host_count
49657
+
49658
+ # The number of healthy infrastructure (e.g NV link domain) in the reservation
49659
+ # subblock.
49660
+ # Corresponds to the JSON property `healthyInfraCount`
49661
+ # @return [Fixnum]
49662
+ attr_accessor :healthy_infra_count
49663
+
49664
+ def initialize(**args)
49665
+ update!(**args)
49666
+ end
49667
+
49668
+ # Update properties of this object
49669
+ def update!(**args)
49670
+ @degraded_host_count = args[:degraded_host_count] if args.key?(:degraded_host_count)
49671
+ @degraded_infra_count = args[:degraded_infra_count] if args.key?(:degraded_infra_count)
49672
+ @health_status = args[:health_status] if args.key?(:health_status)
49673
+ @healthy_host_count = args[:healthy_host_count] if args.key?(:healthy_host_count)
49674
+ @healthy_infra_count = args[:healthy_infra_count] if args.key?(:healthy_infra_count)
49675
+ end
49676
+ end
49677
+
49678
+ #
49679
+ class ReservationSubBlockPhysicalTopology
49680
+ include Google::Apis::Core::Hashable
49681
+
49682
+ # The hash of the capacity block within the cluster.
49683
+ # Corresponds to the JSON property `block`
49684
+ # @return [String]
49685
+ attr_accessor :block
49686
+
49687
+ # The cluster name of the reservation subBlock.
49688
+ # Corresponds to the JSON property `cluster`
49689
+ # @return [String]
49690
+ attr_accessor :cluster
49691
+
49692
+ # The hash of the capacity sub-block within the capacity block.
49693
+ # Corresponds to the JSON property `subBlock`
49694
+ # @return [String]
49695
+ attr_accessor :sub_block
49696
+
49697
+ def initialize(**args)
49698
+ update!(**args)
49699
+ end
49700
+
49701
+ # Update properties of this object
49702
+ def update!(**args)
49703
+ @block = args[:block] if args.key?(:block)
49704
+ @cluster = args[:cluster] if args.key?(:cluster)
49705
+ @sub_block = args[:sub_block] if args.key?(:sub_block)
49706
+ end
49707
+ end
49708
+
49709
+ #
49710
+ class ReservationSubBlocksGetResponse
49711
+ include Google::Apis::Core::Hashable
49712
+
49713
+ # Represents a reservation subBlock resource.
49714
+ # Corresponds to the JSON property `resource`
49715
+ # @return [Google::Apis::ComputeAlpha::ReservationSubBlock]
49716
+ attr_accessor :resource
49717
+
49718
+ def initialize(**args)
49719
+ update!(**args)
49720
+ end
49721
+
49722
+ # Update properties of this object
49723
+ def update!(**args)
49724
+ @resource = args[:resource] if args.key?(:resource)
49725
+ end
49726
+ end
49727
+
49728
+ # A list of reservation subBlocks under a single reservation.
49729
+ class ReservationSubBlocksListResponse
49730
+ include Google::Apis::Core::Hashable
49731
+
49732
+ # Unique identifier for the resource; defined by the server.
49733
+ # Corresponds to the JSON property `id`
49734
+ # @return [String]
49735
+ attr_accessor :id
49736
+
49737
+ # A list of reservation subBlock resources.
49738
+ # Corresponds to the JSON property `items`
49739
+ # @return [Array<Google::Apis::ComputeAlpha::ReservationSubBlock>]
49740
+ attr_accessor :items
49741
+
49742
+ # Type of the resource. Always compute#reservationSubBlock for a list of
49743
+ # reservation subBlocks.
49744
+ # Corresponds to the JSON property `kind`
49745
+ # @return [String]
49746
+ attr_accessor :kind
49747
+
49748
+ # This token allows you to get the next page of results for list requests. If
49749
+ # the number of results is larger than maxResults, use the nextPageToken as a
49750
+ # value for the query parameter pageToken in the next list request. Subsequent
49751
+ # list requests will have their own nextPageToken to continue paging through the
49752
+ # results.
49753
+ # Corresponds to the JSON property `nextPageToken`
49754
+ # @return [String]
49755
+ attr_accessor :next_page_token
49756
+
49757
+ # Server-defined URL for this resource.
49758
+ # Corresponds to the JSON property `selfLink`
49759
+ # @return [String]
49760
+ attr_accessor :self_link
49761
+
49762
+ # Informational warning message.
49763
+ # Corresponds to the JSON property `warning`
49764
+ # @return [Google::Apis::ComputeAlpha::ReservationSubBlocksListResponse::Warning]
49765
+ attr_accessor :warning
49766
+
49767
+ def initialize(**args)
49768
+ update!(**args)
49769
+ end
49770
+
49771
+ # Update properties of this object
49772
+ def update!(**args)
49773
+ @id = args[:id] if args.key?(:id)
49774
+ @items = args[:items] if args.key?(:items)
49775
+ @kind = args[:kind] if args.key?(:kind)
49776
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
49777
+ @self_link = args[:self_link] if args.key?(:self_link)
49778
+ @warning = args[:warning] if args.key?(:warning)
49779
+ end
49780
+
49781
+ # Informational warning message.
49782
+ class Warning
49783
+ include Google::Apis::Core::Hashable
49784
+
49785
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
49786
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
49787
+ # Corresponds to the JSON property `code`
49788
+ # @return [String]
49789
+ attr_accessor :code
49790
+
49791
+ # [Output Only] Metadata about this warning in key: value format. For example: "
49792
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
49793
+ # Corresponds to the JSON property `data`
49794
+ # @return [Array<Google::Apis::ComputeAlpha::ReservationSubBlocksListResponse::Warning::Datum>]
49795
+ attr_accessor :data
49796
+
49797
+ # [Output Only] A human-readable description of the warning code.
49798
+ # Corresponds to the JSON property `message`
49799
+ # @return [String]
49800
+ attr_accessor :message
49801
+
49802
+ def initialize(**args)
49803
+ update!(**args)
49804
+ end
49805
+
49806
+ # Update properties of this object
49807
+ def update!(**args)
49808
+ @code = args[:code] if args.key?(:code)
49809
+ @data = args[:data] if args.key?(:data)
49810
+ @message = args[:message] if args.key?(:message)
49811
+ end
49812
+
49813
+ #
49814
+ class Datum
49815
+ include Google::Apis::Core::Hashable
49816
+
49817
+ # [Output Only] A key that provides more detail on the warning being returned.
49818
+ # For example, for warnings where there are no results in a list request for a
49819
+ # particular zone, this key might be scope and the key value might be the zone
49820
+ # name. Other examples might be a key indicating a deprecated resource and a
49821
+ # suggested replacement, or a warning about invalid network settings (for
49822
+ # example, if an instance attempts to perform IP forwarding but is not enabled
49823
+ # for IP forwarding).
49824
+ # Corresponds to the JSON property `key`
49825
+ # @return [String]
49826
+ attr_accessor :key
49827
+
49828
+ # [Output Only] A warning data value corresponding to the key.
49829
+ # Corresponds to the JSON property `value`
49830
+ # @return [String]
49831
+ attr_accessor :value
49832
+
49833
+ def initialize(**args)
49834
+ update!(**args)
49835
+ end
49836
+
49837
+ # Update properties of this object
49838
+ def update!(**args)
49839
+ @key = args[:key] if args.key?(:key)
49840
+ @value = args[:value] if args.key?(:value)
49841
+ end
49842
+ end
49843
+ end
49844
+ end
49845
+
48452
49846
  #
48453
- class ReservationSubBlockPhysicalTopology
49847
+ class ReservationSubBlocksReportFaultyRequest
48454
49848
  include Google::Apis::Core::Hashable
48455
49849
 
48456
- # The hash of the capacity block within the cluster.
48457
- # Corresponds to the JSON property `block`
48458
- # @return [String]
48459
- attr_accessor :block
48460
-
48461
- # The cluster name of the reservation subBlock.
48462
- # Corresponds to the JSON property `cluster`
49850
+ # The disruption schedule for the subBlock.
49851
+ # Corresponds to the JSON property `disruptionSchedule`
48463
49852
  # @return [String]
48464
- attr_accessor :cluster
49853
+ attr_accessor :disruption_schedule
48465
49854
 
48466
- # The hash of the capacity sub-block within the capacity block.
48467
- # Corresponds to the JSON property `subBlock`
49855
+ # The component that experienced the fault.
49856
+ # Corresponds to the JSON property `failureComponent`
48468
49857
  # @return [String]
48469
- attr_accessor :sub_block
48470
-
48471
- def initialize(**args)
48472
- update!(**args)
48473
- end
48474
-
48475
- # Update properties of this object
48476
- def update!(**args)
48477
- @block = args[:block] if args.key?(:block)
48478
- @cluster = args[:cluster] if args.key?(:cluster)
48479
- @sub_block = args[:sub_block] if args.key?(:sub_block)
48480
- end
48481
- end
49858
+ attr_accessor :failure_component
48482
49859
 
48483
- #
48484
- class ReservationSubBlocksGetResponse
48485
- include Google::Apis::Core::Hashable
48486
-
48487
- # Represents a reservation subBlock resource.
48488
- # Corresponds to the JSON property `resource`
48489
- # @return [Google::Apis::ComputeAlpha::ReservationSubBlock]
48490
- attr_accessor :resource
49860
+ # The reasons for the fault experienced with the subBlock.
49861
+ # Corresponds to the JSON property `faultReasons`
49862
+ # @return [Array<Google::Apis::ComputeAlpha::ReservationSubBlocksReportFaultyRequestFaultReason>]
49863
+ attr_accessor :fault_reasons
48491
49864
 
48492
49865
  def initialize(**args)
48493
49866
  update!(**args)
@@ -48495,48 +49868,25 @@ module Google
48495
49868
 
48496
49869
  # Update properties of this object
48497
49870
  def update!(**args)
48498
- @resource = args[:resource] if args.key?(:resource)
49871
+ @disruption_schedule = args[:disruption_schedule] if args.key?(:disruption_schedule)
49872
+ @failure_component = args[:failure_component] if args.key?(:failure_component)
49873
+ @fault_reasons = args[:fault_reasons] if args.key?(:fault_reasons)
48499
49874
  end
48500
49875
  end
48501
49876
 
48502
- # A list of reservation subBlocks under a single reservation.
48503
- class ReservationSubBlocksListResponse
49877
+ # The reason for the fault experienced with the subBlock.
49878
+ class ReservationSubBlocksReportFaultyRequestFaultReason
48504
49879
  include Google::Apis::Core::Hashable
48505
49880
 
48506
- # Unique identifier for the resource; defined by the server.
48507
- # Corresponds to the JSON property `id`
48508
- # @return [String]
48509
- attr_accessor :id
48510
-
48511
- # A list of reservation subBlock resources.
48512
- # Corresponds to the JSON property `items`
48513
- # @return [Array<Google::Apis::ComputeAlpha::ReservationSubBlock>]
48514
- attr_accessor :items
48515
-
48516
- # Type of the resource. Always compute#reservationSubBlock for a list of
48517
- # reservation subBlocks.
48518
- # Corresponds to the JSON property `kind`
48519
- # @return [String]
48520
- attr_accessor :kind
48521
-
48522
- # This token allows you to get the next page of results for list requests. If
48523
- # the number of results is larger than maxResults, use the nextPageToken as a
48524
- # value for the query parameter pageToken in the next list request. Subsequent
48525
- # list requests will have their own nextPageToken to continue paging through the
48526
- # results.
48527
- # Corresponds to the JSON property `nextPageToken`
49881
+ # The behavior of the fault experienced with the subBlock.
49882
+ # Corresponds to the JSON property `behavior`
48528
49883
  # @return [String]
48529
- attr_accessor :next_page_token
49884
+ attr_accessor :behavior
48530
49885
 
48531
- # Server-defined URL for this resource.
48532
- # Corresponds to the JSON property `selfLink`
49886
+ # The description of the fault experienced with the subBlock.
49887
+ # Corresponds to the JSON property `description`
48533
49888
  # @return [String]
48534
- attr_accessor :self_link
48535
-
48536
- # Informational warning message.
48537
- # Corresponds to the JSON property `warning`
48538
- # @return [Google::Apis::ComputeAlpha::ReservationSubBlocksListResponse::Warning]
48539
- attr_accessor :warning
49889
+ attr_accessor :description
48540
49890
 
48541
49891
  def initialize(**args)
48542
49892
  update!(**args)
@@ -48544,76 +49894,8 @@ module Google
48544
49894
 
48545
49895
  # Update properties of this object
48546
49896
  def update!(**args)
48547
- @id = args[:id] if args.key?(:id)
48548
- @items = args[:items] if args.key?(:items)
48549
- @kind = args[:kind] if args.key?(:kind)
48550
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
48551
- @self_link = args[:self_link] if args.key?(:self_link)
48552
- @warning = args[:warning] if args.key?(:warning)
48553
- end
48554
-
48555
- # Informational warning message.
48556
- class Warning
48557
- include Google::Apis::Core::Hashable
48558
-
48559
- # [Output Only] A warning code, if applicable. For example, Compute Engine
48560
- # returns NO_RESULTS_ON_PAGE if there are no results in the response.
48561
- # Corresponds to the JSON property `code`
48562
- # @return [String]
48563
- attr_accessor :code
48564
-
48565
- # [Output Only] Metadata about this warning in key: value format. For example: "
48566
- # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
48567
- # Corresponds to the JSON property `data`
48568
- # @return [Array<Google::Apis::ComputeAlpha::ReservationSubBlocksListResponse::Warning::Datum>]
48569
- attr_accessor :data
48570
-
48571
- # [Output Only] A human-readable description of the warning code.
48572
- # Corresponds to the JSON property `message`
48573
- # @return [String]
48574
- attr_accessor :message
48575
-
48576
- def initialize(**args)
48577
- update!(**args)
48578
- end
48579
-
48580
- # Update properties of this object
48581
- def update!(**args)
48582
- @code = args[:code] if args.key?(:code)
48583
- @data = args[:data] if args.key?(:data)
48584
- @message = args[:message] if args.key?(:message)
48585
- end
48586
-
48587
- #
48588
- class Datum
48589
- include Google::Apis::Core::Hashable
48590
-
48591
- # [Output Only] A key that provides more detail on the warning being returned.
48592
- # For example, for warnings where there are no results in a list request for a
48593
- # particular zone, this key might be scope and the key value might be the zone
48594
- # name. Other examples might be a key indicating a deprecated resource and a
48595
- # suggested replacement, or a warning about invalid network settings (for
48596
- # example, if an instance attempts to perform IP forwarding but is not enabled
48597
- # for IP forwarding).
48598
- # Corresponds to the JSON property `key`
48599
- # @return [String]
48600
- attr_accessor :key
48601
-
48602
- # [Output Only] A warning data value corresponding to the key.
48603
- # Corresponds to the JSON property `value`
48604
- # @return [String]
48605
- attr_accessor :value
48606
-
48607
- def initialize(**args)
48608
- update!(**args)
48609
- end
48610
-
48611
- # Update properties of this object
48612
- def update!(**args)
48613
- @key = args[:key] if args.key?(:key)
48614
- @value = args[:value] if args.key?(:value)
48615
- end
48616
- end
49897
+ @behavior = args[:behavior] if args.key?(:behavior)
49898
+ @description = args[:description] if args.key?(:description)
48617
49899
  end
48618
49900
  end
48619
49901
 
@@ -49832,17 +51114,18 @@ module Google
49832
51114
  class ResourcePolicyWorkloadPolicy
49833
51115
  include Google::Apis::Core::Hashable
49834
51116
 
49835
- #
51117
+ # Specifies the topology required to create a partition for VMs that have
51118
+ # interconnected GPUs.
49836
51119
  # Corresponds to the JSON property `acceleratorTopology`
49837
51120
  # @return [String]
49838
51121
  attr_accessor :accelerator_topology
49839
51122
 
49840
- #
51123
+ # Specifies the maximum distance between instances.
49841
51124
  # Corresponds to the JSON property `maxTopologyDistance`
49842
51125
  # @return [String]
49843
51126
  attr_accessor :max_topology_distance
49844
51127
 
49845
- #
51128
+ # Specifies the intent of the instance placement in the MIG.
49846
51129
  # Corresponds to the JSON property `type`
49847
51130
  # @return [String]
49848
51131
  attr_accessor :type
@@ -65295,6 +66578,12 @@ module Google
65295
66578
  # @return [String]
65296
66579
  attr_accessor :network
65297
66580
 
66581
+ # Input only. [Input Only] Additional params passed with the request, but not
66582
+ # persisted as part of resource payload.
66583
+ # Corresponds to the JSON property `params`
66584
+ # @return [Google::Apis::ComputeAlpha::TargetVpnGatewayParams]
66585
+ attr_accessor :params
66586
+
65298
66587
  # [Output Only] URL of the region where the target VPN gateway resides. You must
65299
66588
  # specify this field as part of the HTTP request URL. It is not settable as a
65300
66589
  # field in the request body.
@@ -65334,6 +66623,7 @@ module Google
65334
66623
  @labels = args[:labels] if args.key?(:labels)
65335
66624
  @name = args[:name] if args.key?(:name)
65336
66625
  @network = args[:network] if args.key?(:network)
66626
+ @params = args[:params] if args.key?(:params)
65337
66627
  @region = args[:region] if args.key?(:region)
65338
66628
  @self_link = args[:self_link] if args.key?(:self_link)
65339
66629
  @status = args[:status] if args.key?(:status)
@@ -65583,6 +66873,33 @@ module Google
65583
66873
  end
65584
66874
  end
65585
66875
 
66876
+ #
66877
+ class TargetVpnGatewayParams
66878
+ include Google::Apis::Core::Hashable
66879
+
66880
+ # Tag keys/values directly bound to this resource. Tag keys and values have the
66881
+ # same definition as resource manager tags. The field is allowed for INSERT only.
66882
+ # The keys/values to set on the resource should be specified in either ID ` : `
66883
+ # or Namespaced format ` : `. For example the following are valid inputs: * `"
66884
+ # tagKeys/333" : "tagValues/444", "tagKeys/123" : "tagValues/456"` * `"123/
66885
+ # environment" : "production", "345/abc" : "xyz"` Note: * Invalid combinations
66886
+ # of ID & namespaced format is not supported. For instance: `"123/environment" :
66887
+ # "tagValues/444"` is invalid. * Inconsistent format is not supported. For
66888
+ # instance: `"tagKeys/333" : "tagValues/444", "123/env" : "prod"` is invalid.
66889
+ # Corresponds to the JSON property `resourceManagerTags`
66890
+ # @return [Hash<String,String>]
66891
+ attr_accessor :resource_manager_tags
66892
+
66893
+ def initialize(**args)
66894
+ update!(**args)
66895
+ end
66896
+
66897
+ # Update properties of this object
66898
+ def update!(**args)
66899
+ @resource_manager_tags = args[:resource_manager_tags] if args.key?(:resource_manager_tags)
66900
+ end
66901
+ end
66902
+
65586
66903
  #
65587
66904
  class TargetVpnGatewaysScopedList
65588
66905
  include Google::Apis::Core::Hashable
@@ -67715,124 +69032,254 @@ module Google
67715
69032
  end
67716
69033
  end
67717
69034
 
67718
- # Represents a HA VPN gateway. HA VPN is a high-availability (HA) Cloud VPN
67719
- # solution that lets you securely connect your on-premises network to your
67720
- # Google Cloud Virtual Private Cloud network through an IPsec VPN connection in
67721
- # a single region. For more information about Cloud HA VPN solutions, see Cloud
67722
- # VPN topologies .
67723
- class VpnGateway
67724
- include Google::Apis::Core::Hashable
67725
-
67726
- # [Output Only] Creation timestamp in RFC3339 text format.
67727
- # Corresponds to the JSON property `creationTimestamp`
67728
- # @return [String]
67729
- attr_accessor :creation_timestamp
67730
-
67731
- # An optional description of this resource. Provide this property when you
67732
- # create the resource.
67733
- # Corresponds to the JSON property `description`
67734
- # @return [String]
67735
- attr_accessor :description
67736
-
67737
- # The IP family of the gateway IPs for the HA-VPN gateway interfaces. If not
67738
- # specified, IPV4 will be used.
67739
- # Corresponds to the JSON property `gatewayIpVersion`
67740
- # @return [String]
67741
- attr_accessor :gateway_ip_version
67742
-
67743
- # [Output Only] The unique identifier for the resource. This identifier is
67744
- # defined by the server.
67745
- # Corresponds to the JSON property `id`
67746
- # @return [Fixnum]
67747
- attr_accessor :id
67748
-
67749
- # [Output Only] Type of resource. Always compute#vpnGateway for VPN gateways.
67750
- # Corresponds to the JSON property `kind`
67751
- # @return [String]
67752
- attr_accessor :kind
67753
-
67754
- # A fingerprint for the labels being applied to this VpnGateway, which is
67755
- # essentially a hash of the labels set used for optimistic locking. The
67756
- # fingerprint is initially generated by Compute Engine and changes after every
67757
- # request to modify or update labels. You must always provide an up-to-date
67758
- # fingerprint hash in order to update or change labels, otherwise the request
67759
- # will fail with error 412 conditionNotMet. To see the latest fingerprint, make
67760
- # a get() request to retrieve a VpnGateway.
67761
- # Corresponds to the JSON property `labelFingerprint`
67762
- # NOTE: Values are automatically base64 encoded/decoded in the client library.
67763
- # @return [String]
67764
- attr_accessor :label_fingerprint
67765
-
67766
- # Labels for this resource. These can only be added or modified by the setLabels
67767
- # method. Each label key/value pair must comply with RFC1035. Label values may
67768
- # be empty.
67769
- # Corresponds to the JSON property `labels`
67770
- # @return [Hash<String,String>]
67771
- attr_accessor :labels
67772
-
67773
- # Name of the resource. Provided by the client when the resource is created. The
67774
- # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
67775
- # name must be 1-63 characters long and match the regular expression `[a-z]([-a-
67776
- # z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter,
67777
- # and all following characters must be a dash, lowercase letter, or digit,
67778
- # except the last character, which cannot be a dash.
67779
- # Corresponds to the JSON property `name`
67780
- # @return [String]
67781
- attr_accessor :name
67782
-
67783
- # URL of the network to which this VPN gateway is attached. Provided by the
67784
- # client when the VPN gateway is created.
67785
- # Corresponds to the JSON property `network`
67786
- # @return [String]
67787
- attr_accessor :network
67788
-
67789
- # [Output Only] URL of the region where the VPN gateway resides.
67790
- # Corresponds to the JSON property `region`
67791
- # @return [String]
67792
- attr_accessor :region
67793
-
67794
- # [Output Only] Server-defined URL for the resource.
67795
- # Corresponds to the JSON property `selfLink`
67796
- # @return [String]
67797
- attr_accessor :self_link
67798
-
67799
- # The stack type for this VPN gateway to identify the IP protocols that are
67800
- # enabled. Possible values are: IPV4_ONLY, IPV4_IPV6, IPV6_ONLY. If not
67801
- # specified, IPV4_ONLY is used if the gateway IP version is IPV4, or IPV4_IPV6
67802
- # if the gateway IP version is IPV6.
67803
- # Corresponds to the JSON property `stackType`
67804
- # @return [String]
67805
- attr_accessor :stack_type
67806
-
67807
- # The list of VPN interfaces associated with this VPN gateway.
67808
- # Corresponds to the JSON property `vpnInterfaces`
67809
- # @return [Array<Google::Apis::ComputeAlpha::VpnGatewayVpnGatewayInterface>]
67810
- attr_accessor :vpn_interfaces
67811
-
67812
- def initialize(**args)
67813
- update!(**args)
67814
- end
67815
-
67816
- # Update properties of this object
67817
- def update!(**args)
67818
- @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
67819
- @description = args[:description] if args.key?(:description)
67820
- @gateway_ip_version = args[:gateway_ip_version] if args.key?(:gateway_ip_version)
67821
- @id = args[:id] if args.key?(:id)
67822
- @kind = args[:kind] if args.key?(:kind)
67823
- @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint)
67824
- @labels = args[:labels] if args.key?(:labels)
67825
- @name = args[:name] if args.key?(:name)
67826
- @network = args[:network] if args.key?(:network)
67827
- @region = args[:region] if args.key?(:region)
67828
- @self_link = args[:self_link] if args.key?(:self_link)
67829
- @stack_type = args[:stack_type] if args.key?(:stack_type)
67830
- @vpn_interfaces = args[:vpn_interfaces] if args.key?(:vpn_interfaces)
67831
- end
67832
- end
67833
-
67834
- #
67835
- class VpnGatewayAggregatedList
69035
+ # Represents a HA VPN gateway. HA VPN is a high-availability (HA) Cloud VPN
69036
+ # solution that lets you securely connect your on-premises network to your
69037
+ # Google Cloud Virtual Private Cloud network through an IPsec VPN connection in
69038
+ # a single region. For more information about Cloud HA VPN solutions, see Cloud
69039
+ # VPN topologies .
69040
+ class VpnGateway
69041
+ include Google::Apis::Core::Hashable
69042
+
69043
+ # [Output Only] Creation timestamp in RFC3339 text format.
69044
+ # Corresponds to the JSON property `creationTimestamp`
69045
+ # @return [String]
69046
+ attr_accessor :creation_timestamp
69047
+
69048
+ # An optional description of this resource. Provide this property when you
69049
+ # create the resource.
69050
+ # Corresponds to the JSON property `description`
69051
+ # @return [String]
69052
+ attr_accessor :description
69053
+
69054
+ # The IP family of the gateway IPs for the HA-VPN gateway interfaces. If not
69055
+ # specified, IPV4 will be used.
69056
+ # Corresponds to the JSON property `gatewayIpVersion`
69057
+ # @return [String]
69058
+ attr_accessor :gateway_ip_version
69059
+
69060
+ # [Output Only] The unique identifier for the resource. This identifier is
69061
+ # defined by the server.
69062
+ # Corresponds to the JSON property `id`
69063
+ # @return [Fixnum]
69064
+ attr_accessor :id
69065
+
69066
+ # [Output Only] Type of resource. Always compute#vpnGateway for VPN gateways.
69067
+ # Corresponds to the JSON property `kind`
69068
+ # @return [String]
69069
+ attr_accessor :kind
69070
+
69071
+ # A fingerprint for the labels being applied to this VpnGateway, which is
69072
+ # essentially a hash of the labels set used for optimistic locking. The
69073
+ # fingerprint is initially generated by Compute Engine and changes after every
69074
+ # request to modify or update labels. You must always provide an up-to-date
69075
+ # fingerprint hash in order to update or change labels, otherwise the request
69076
+ # will fail with error 412 conditionNotMet. To see the latest fingerprint, make
69077
+ # a get() request to retrieve a VpnGateway.
69078
+ # Corresponds to the JSON property `labelFingerprint`
69079
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
69080
+ # @return [String]
69081
+ attr_accessor :label_fingerprint
69082
+
69083
+ # Labels for this resource. These can only be added or modified by the setLabels
69084
+ # method. Each label key/value pair must comply with RFC1035. Label values may
69085
+ # be empty.
69086
+ # Corresponds to the JSON property `labels`
69087
+ # @return [Hash<String,String>]
69088
+ attr_accessor :labels
69089
+
69090
+ # Name of the resource. Provided by the client when the resource is created. The
69091
+ # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
69092
+ # name must be 1-63 characters long and match the regular expression `[a-z]([-a-
69093
+ # z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter,
69094
+ # and all following characters must be a dash, lowercase letter, or digit,
69095
+ # except the last character, which cannot be a dash.
69096
+ # Corresponds to the JSON property `name`
69097
+ # @return [String]
69098
+ attr_accessor :name
69099
+
69100
+ # URL of the network to which this VPN gateway is attached. Provided by the
69101
+ # client when the VPN gateway is created.
69102
+ # Corresponds to the JSON property `network`
69103
+ # @return [String]
69104
+ attr_accessor :network
69105
+
69106
+ # Input only. [Input Only] Additional params passed with the request, but not
69107
+ # persisted as part of resource payload.
69108
+ # Corresponds to the JSON property `params`
69109
+ # @return [Google::Apis::ComputeAlpha::VpnGatewayParams]
69110
+ attr_accessor :params
69111
+
69112
+ # [Output Only] URL of the region where the VPN gateway resides.
69113
+ # Corresponds to the JSON property `region`
69114
+ # @return [String]
69115
+ attr_accessor :region
69116
+
69117
+ # [Output Only] Server-defined URL for the resource.
69118
+ # Corresponds to the JSON property `selfLink`
69119
+ # @return [String]
69120
+ attr_accessor :self_link
69121
+
69122
+ # The stack type for this VPN gateway to identify the IP protocols that are
69123
+ # enabled. Possible values are: IPV4_ONLY, IPV4_IPV6, IPV6_ONLY. If not
69124
+ # specified, IPV4_ONLY is used if the gateway IP version is IPV4, or IPV4_IPV6
69125
+ # if the gateway IP version is IPV6.
69126
+ # Corresponds to the JSON property `stackType`
69127
+ # @return [String]
69128
+ attr_accessor :stack_type
69129
+
69130
+ # The list of VPN interfaces associated with this VPN gateway.
69131
+ # Corresponds to the JSON property `vpnInterfaces`
69132
+ # @return [Array<Google::Apis::ComputeAlpha::VpnGatewayVpnGatewayInterface>]
69133
+ attr_accessor :vpn_interfaces
69134
+
69135
+ def initialize(**args)
69136
+ update!(**args)
69137
+ end
69138
+
69139
+ # Update properties of this object
69140
+ def update!(**args)
69141
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
69142
+ @description = args[:description] if args.key?(:description)
69143
+ @gateway_ip_version = args[:gateway_ip_version] if args.key?(:gateway_ip_version)
69144
+ @id = args[:id] if args.key?(:id)
69145
+ @kind = args[:kind] if args.key?(:kind)
69146
+ @label_fingerprint = args[:label_fingerprint] if args.key?(:label_fingerprint)
69147
+ @labels = args[:labels] if args.key?(:labels)
69148
+ @name = args[:name] if args.key?(:name)
69149
+ @network = args[:network] if args.key?(:network)
69150
+ @params = args[:params] if args.key?(:params)
69151
+ @region = args[:region] if args.key?(:region)
69152
+ @self_link = args[:self_link] if args.key?(:self_link)
69153
+ @stack_type = args[:stack_type] if args.key?(:stack_type)
69154
+ @vpn_interfaces = args[:vpn_interfaces] if args.key?(:vpn_interfaces)
69155
+ end
69156
+ end
69157
+
69158
+ #
69159
+ class VpnGatewayAggregatedList
69160
+ include Google::Apis::Core::Hashable
69161
+
69162
+ # [Output Only] Unique identifier for the resource; defined by the server.
69163
+ # Corresponds to the JSON property `id`
69164
+ # @return [String]
69165
+ attr_accessor :id
69166
+
69167
+ # A list of VpnGateway resources.
69168
+ # Corresponds to the JSON property `items`
69169
+ # @return [Hash<String,Google::Apis::ComputeAlpha::VpnGatewaysScopedList>]
69170
+ attr_accessor :items
69171
+
69172
+ # [Output Only] Type of resource. Always compute#vpnGateway for VPN gateways.
69173
+ # Corresponds to the JSON property `kind`
69174
+ # @return [String]
69175
+ attr_accessor :kind
69176
+
69177
+ # [Output Only] This token allows you to get the next page of results for list
69178
+ # requests. If the number of results is larger than maxResults, use the
69179
+ # nextPageToken as a value for the query parameter pageToken in the next list
69180
+ # request. Subsequent list requests will have their own nextPageToken to
69181
+ # continue paging through the results.
69182
+ # Corresponds to the JSON property `nextPageToken`
69183
+ # @return [String]
69184
+ attr_accessor :next_page_token
69185
+
69186
+ # [Output Only] Server-defined URL for this resource.
69187
+ # Corresponds to the JSON property `selfLink`
69188
+ # @return [String]
69189
+ attr_accessor :self_link
69190
+
69191
+ # [Output Only] Unreachable resources.
69192
+ # Corresponds to the JSON property `unreachables`
69193
+ # @return [Array<String>]
69194
+ attr_accessor :unreachables
69195
+
69196
+ # [Output Only] Informational warning message.
69197
+ # Corresponds to the JSON property `warning`
69198
+ # @return [Google::Apis::ComputeAlpha::VpnGatewayAggregatedList::Warning]
69199
+ attr_accessor :warning
69200
+
69201
+ def initialize(**args)
69202
+ update!(**args)
69203
+ end
69204
+
69205
+ # Update properties of this object
69206
+ def update!(**args)
69207
+ @id = args[:id] if args.key?(:id)
69208
+ @items = args[:items] if args.key?(:items)
69209
+ @kind = args[:kind] if args.key?(:kind)
69210
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
69211
+ @self_link = args[:self_link] if args.key?(:self_link)
69212
+ @unreachables = args[:unreachables] if args.key?(:unreachables)
69213
+ @warning = args[:warning] if args.key?(:warning)
69214
+ end
69215
+
69216
+ # [Output Only] Informational warning message.
69217
+ class Warning
69218
+ include Google::Apis::Core::Hashable
69219
+
69220
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
69221
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
69222
+ # Corresponds to the JSON property `code`
69223
+ # @return [String]
69224
+ attr_accessor :code
69225
+
69226
+ # [Output Only] Metadata about this warning in key: value format. For example: "
69227
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
69228
+ # Corresponds to the JSON property `data`
69229
+ # @return [Array<Google::Apis::ComputeAlpha::VpnGatewayAggregatedList::Warning::Datum>]
69230
+ attr_accessor :data
69231
+
69232
+ # [Output Only] A human-readable description of the warning code.
69233
+ # Corresponds to the JSON property `message`
69234
+ # @return [String]
69235
+ attr_accessor :message
69236
+
69237
+ def initialize(**args)
69238
+ update!(**args)
69239
+ end
69240
+
69241
+ # Update properties of this object
69242
+ def update!(**args)
69243
+ @code = args[:code] if args.key?(:code)
69244
+ @data = args[:data] if args.key?(:data)
69245
+ @message = args[:message] if args.key?(:message)
69246
+ end
69247
+
69248
+ #
69249
+ class Datum
69250
+ include Google::Apis::Core::Hashable
69251
+
69252
+ # [Output Only] A key that provides more detail on the warning being returned.
69253
+ # For example, for warnings where there are no results in a list request for a
69254
+ # particular zone, this key might be scope and the key value might be the zone
69255
+ # name. Other examples might be a key indicating a deprecated resource and a
69256
+ # suggested replacement, or a warning about invalid network settings (for
69257
+ # example, if an instance attempts to perform IP forwarding but is not enabled
69258
+ # for IP forwarding).
69259
+ # Corresponds to the JSON property `key`
69260
+ # @return [String]
69261
+ attr_accessor :key
69262
+
69263
+ # [Output Only] A warning data value corresponding to the key.
69264
+ # Corresponds to the JSON property `value`
69265
+ # @return [String]
69266
+ attr_accessor :value
69267
+
69268
+ def initialize(**args)
69269
+ update!(**args)
69270
+ end
69271
+
69272
+ # Update properties of this object
69273
+ def update!(**args)
69274
+ @key = args[:key] if args.key?(:key)
69275
+ @value = args[:value] if args.key?(:value)
69276
+ end
69277
+ end
69278
+ end
69279
+ end
69280
+
69281
+ # Contains a list of VpnGateway resources.
69282
+ class VpnGatewayList
67836
69283
  include Google::Apis::Core::Hashable
67837
69284
 
67838
69285
  # [Output Only] Unique identifier for the resource; defined by the server.
@@ -67842,7 +69289,7 @@ module Google
67842
69289
 
67843
69290
  # A list of VpnGateway resources.
67844
69291
  # Corresponds to the JSON property `items`
67845
- # @return [Hash<String,Google::Apis::ComputeAlpha::VpnGatewaysScopedList>]
69292
+ # @return [Array<Google::Apis::ComputeAlpha::VpnGateway>]
67846
69293
  attr_accessor :items
67847
69294
 
67848
69295
  # [Output Only] Type of resource. Always compute#vpnGateway for VPN gateways.
@@ -67864,14 +69311,9 @@ module Google
67864
69311
  # @return [String]
67865
69312
  attr_accessor :self_link
67866
69313
 
67867
- # [Output Only] Unreachable resources.
67868
- # Corresponds to the JSON property `unreachables`
67869
- # @return [Array<String>]
67870
- attr_accessor :unreachables
67871
-
67872
69314
  # [Output Only] Informational warning message.
67873
69315
  # Corresponds to the JSON property `warning`
67874
- # @return [Google::Apis::ComputeAlpha::VpnGatewayAggregatedList::Warning]
69316
+ # @return [Google::Apis::ComputeAlpha::VpnGatewayList::Warning]
67875
69317
  attr_accessor :warning
67876
69318
 
67877
69319
  def initialize(**args)
@@ -67885,7 +69327,6 @@ module Google
67885
69327
  @kind = args[:kind] if args.key?(:kind)
67886
69328
  @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
67887
69329
  @self_link = args[:self_link] if args.key?(:self_link)
67888
- @unreachables = args[:unreachables] if args.key?(:unreachables)
67889
69330
  @warning = args[:warning] if args.key?(:warning)
67890
69331
  end
67891
69332
 
@@ -67902,7 +69343,7 @@ module Google
67902
69343
  # [Output Only] Metadata about this warning in key: value format. For example: "
67903
69344
  # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
67904
69345
  # Corresponds to the JSON property `data`
67905
- # @return [Array<Google::Apis::ComputeAlpha::VpnGatewayAggregatedList::Warning::Datum>]
69346
+ # @return [Array<Google::Apis::ComputeAlpha::VpnGatewayList::Warning::Datum>]
67906
69347
  attr_accessor :data
67907
69348
 
67908
69349
  # [Output Only] A human-readable description of the warning code.
@@ -67954,43 +69395,22 @@ module Google
67954
69395
  end
67955
69396
  end
67956
69397
 
67957
- # Contains a list of VpnGateway resources.
67958
- class VpnGatewayList
69398
+ #
69399
+ class VpnGatewayParams
67959
69400
  include Google::Apis::Core::Hashable
67960
69401
 
67961
- # [Output Only] Unique identifier for the resource; defined by the server.
67962
- # Corresponds to the JSON property `id`
67963
- # @return [String]
67964
- attr_accessor :id
67965
-
67966
- # A list of VpnGateway resources.
67967
- # Corresponds to the JSON property `items`
67968
- # @return [Array<Google::Apis::ComputeAlpha::VpnGateway>]
67969
- attr_accessor :items
67970
-
67971
- # [Output Only] Type of resource. Always compute#vpnGateway for VPN gateways.
67972
- # Corresponds to the JSON property `kind`
67973
- # @return [String]
67974
- attr_accessor :kind
67975
-
67976
- # [Output Only] This token allows you to get the next page of results for list
67977
- # requests. If the number of results is larger than maxResults, use the
67978
- # nextPageToken as a value for the query parameter pageToken in the next list
67979
- # request. Subsequent list requests will have their own nextPageToken to
67980
- # continue paging through the results.
67981
- # Corresponds to the JSON property `nextPageToken`
67982
- # @return [String]
67983
- attr_accessor :next_page_token
67984
-
67985
- # [Output Only] Server-defined URL for this resource.
67986
- # Corresponds to the JSON property `selfLink`
67987
- # @return [String]
67988
- attr_accessor :self_link
67989
-
67990
- # [Output Only] Informational warning message.
67991
- # Corresponds to the JSON property `warning`
67992
- # @return [Google::Apis::ComputeAlpha::VpnGatewayList::Warning]
67993
- attr_accessor :warning
69402
+ # Tag keys/values directly bound to this resource. Tag keys and values have the
69403
+ # same definition as resource manager tags. The field is allowed for INSERT only.
69404
+ # The keys/values to set on the resource should be specified in either ID ` : `
69405
+ # or Namespaced format ` : `. For example the following are valid inputs: * `"
69406
+ # tagKeys/333" : "tagValues/444", "tagKeys/123" : "tagValues/456"` * `"123/
69407
+ # environment" : "production", "345/abc" : "xyz"` Note: * Invalid combinations
69408
+ # of ID & namespaced format is not supported. For instance: `"123/environment" :
69409
+ # "tagValues/444"` is invalid. * Inconsistent format is not supported. For
69410
+ # instance: `"tagKeys/333" : "tagValues/444", "123/env" : "prod"` is invalid.
69411
+ # Corresponds to the JSON property `resourceManagerTags`
69412
+ # @return [Hash<String,String>]
69413
+ attr_accessor :resource_manager_tags
67994
69414
 
67995
69415
  def initialize(**args)
67996
69416
  update!(**args)
@@ -67998,76 +69418,7 @@ module Google
67998
69418
 
67999
69419
  # Update properties of this object
68000
69420
  def update!(**args)
68001
- @id = args[:id] if args.key?(:id)
68002
- @items = args[:items] if args.key?(:items)
68003
- @kind = args[:kind] if args.key?(:kind)
68004
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
68005
- @self_link = args[:self_link] if args.key?(:self_link)
68006
- @warning = args[:warning] if args.key?(:warning)
68007
- end
68008
-
68009
- # [Output Only] Informational warning message.
68010
- class Warning
68011
- include Google::Apis::Core::Hashable
68012
-
68013
- # [Output Only] A warning code, if applicable. For example, Compute Engine
68014
- # returns NO_RESULTS_ON_PAGE if there are no results in the response.
68015
- # Corresponds to the JSON property `code`
68016
- # @return [String]
68017
- attr_accessor :code
68018
-
68019
- # [Output Only] Metadata about this warning in key: value format. For example: "
68020
- # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
68021
- # Corresponds to the JSON property `data`
68022
- # @return [Array<Google::Apis::ComputeAlpha::VpnGatewayList::Warning::Datum>]
68023
- attr_accessor :data
68024
-
68025
- # [Output Only] A human-readable description of the warning code.
68026
- # Corresponds to the JSON property `message`
68027
- # @return [String]
68028
- attr_accessor :message
68029
-
68030
- def initialize(**args)
68031
- update!(**args)
68032
- end
68033
-
68034
- # Update properties of this object
68035
- def update!(**args)
68036
- @code = args[:code] if args.key?(:code)
68037
- @data = args[:data] if args.key?(:data)
68038
- @message = args[:message] if args.key?(:message)
68039
- end
68040
-
68041
- #
68042
- class Datum
68043
- include Google::Apis::Core::Hashable
68044
-
68045
- # [Output Only] A key that provides more detail on the warning being returned.
68046
- # For example, for warnings where there are no results in a list request for a
68047
- # particular zone, this key might be scope and the key value might be the zone
68048
- # name. Other examples might be a key indicating a deprecated resource and a
68049
- # suggested replacement, or a warning about invalid network settings (for
68050
- # example, if an instance attempts to perform IP forwarding but is not enabled
68051
- # for IP forwarding).
68052
- # Corresponds to the JSON property `key`
68053
- # @return [String]
68054
- attr_accessor :key
68055
-
68056
- # [Output Only] A warning data value corresponding to the key.
68057
- # Corresponds to the JSON property `value`
68058
- # @return [String]
68059
- attr_accessor :value
68060
-
68061
- def initialize(**args)
68062
- update!(**args)
68063
- end
68064
-
68065
- # Update properties of this object
68066
- def update!(**args)
68067
- @key = args[:key] if args.key?(:key)
68068
- @value = args[:value] if args.key?(:value)
68069
- end
68070
- end
69421
+ @resource_manager_tags = args[:resource_manager_tags] if args.key?(:resource_manager_tags)
68071
69422
  end
68072
69423
  end
68073
69424
 
@@ -68437,6 +69788,12 @@ module Google
68437
69788
  # @return [String]
68438
69789
  attr_accessor :name
68439
69790
 
69791
+ # Input only. [Input Only] Additional params passed with the request, but not
69792
+ # persisted as part of resource payload.
69793
+ # Corresponds to the JSON property `params`
69794
+ # @return [Google::Apis::ComputeAlpha::VpnTunnelParams]
69795
+ attr_accessor :params
69796
+
68440
69797
  # URL of the peer side external VPN gateway to which this VPN tunnel is
68441
69798
  # connected. Provided by the client when the VPN tunnel is created. This field
68442
69799
  # is exclusive with the field peerGcpGateway.
@@ -68563,6 +69920,7 @@ module Google
68563
69920
  @labels = args[:labels] if args.key?(:labels)
68564
69921
  @local_traffic_selector = args[:local_traffic_selector] if args.key?(:local_traffic_selector)
68565
69922
  @name = args[:name] if args.key?(:name)
69923
+ @params = args[:params] if args.key?(:params)
68566
69924
  @peer_external_gateway = args[:peer_external_gateway] if args.key?(:peer_external_gateway)
68567
69925
  @peer_external_gateway_interface = args[:peer_external_gateway_interface] if args.key?(:peer_external_gateway_interface)
68568
69926
  @peer_gcp_gateway = args[:peer_gcp_gateway] if args.key?(:peer_gcp_gateway)
@@ -68845,6 +70203,33 @@ module Google
68845
70203
  end
68846
70204
  end
68847
70205
 
70206
+ #
70207
+ class VpnTunnelParams
70208
+ include Google::Apis::Core::Hashable
70209
+
70210
+ # Tag keys/values directly bound to this resource. Tag keys and values have the
70211
+ # same definition as resource manager tags. The field is allowed for INSERT only.
70212
+ # The keys/values to set on the resource should be specified in either ID ` : `
70213
+ # or Namespaced format ` : `. For example the following are valid inputs: * `"
70214
+ # tagKeys/333" : "tagValues/444", "tagKeys/123" : "tagValues/456"` * `"123/
70215
+ # environment" : "production", "345/abc" : "xyz"` Note: * Invalid combinations
70216
+ # of ID & namespaced format is not supported. For instance: `"123/environment" :
70217
+ # "tagValues/444"` is invalid. * Inconsistent format is not supported. For
70218
+ # instance: `"tagKeys/333" : "tagValues/444", "123/env" : "prod"` is invalid.
70219
+ # Corresponds to the JSON property `resourceManagerTags`
70220
+ # @return [Hash<String,String>]
70221
+ attr_accessor :resource_manager_tags
70222
+
70223
+ def initialize(**args)
70224
+ update!(**args)
70225
+ end
70226
+
70227
+ # Update properties of this object
70228
+ def update!(**args)
70229
+ @resource_manager_tags = args[:resource_manager_tags] if args.key?(:resource_manager_tags)
70230
+ end
70231
+ end
70232
+
68848
70233
  #
68849
70234
  class VpnTunnelPhase1Algorithms
68850
70235
  include Google::Apis::Core::Hashable