google-apis-compute_alpha 0.37.0 → 0.40.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.
@@ -7837,6 +7837,56 @@ module Google
7837
7837
  end
7838
7838
  end
7839
7839
 
7840
+ # Describes the cause of the error with structured details. Example of an error
7841
+ # when contacting the "pubsub.googleapis.com" API when it is not enabled: ` "
7842
+ # reason": "API_DISABLED" "domain": "googleapis.com" "metadata": ` "resource": "
7843
+ # projects/123", "service": "pubsub.googleapis.com" ` ` This response indicates
7844
+ # that the pubsub.googleapis.com API is not enabled. Example of an error that is
7845
+ # returned when attempting to create a Spanner instance in a region that is out
7846
+ # of stock: ` "reason": "STOCKOUT" "domain": "spanner.googleapis.com", "metadata"
7847
+ # : ` "availableRegions": "us-central1,us-east2" ` `
7848
+ class ErrorInfo
7849
+ include Google::Apis::Core::Hashable
7850
+
7851
+ # The logical grouping to which the "reason" belongs. The error domain is
7852
+ # typically the registered service name of the tool or product that generates
7853
+ # the error. Example: "pubsub.googleapis.com". If the error is generated by some
7854
+ # common infrastructure, the error domain must be a globally unique value that
7855
+ # identifies the infrastructure. For Google API infrastructure, the error domain
7856
+ # is "googleapis.com".
7857
+ # Corresponds to the JSON property `domain`
7858
+ # @return [String]
7859
+ attr_accessor :domain
7860
+
7861
+ # Additional structured details about this error. Keys should match /[a-zA-Z0-9-
7862
+ # _]/ and be limited to 64 characters in length. When identifying the current
7863
+ # value of an exceeded limit, the units should be contained in the key, not the
7864
+ # value. For example, rather than `"instanceLimit": "100/request"`, should be
7865
+ # returned as, `"instanceLimitPerRequest": "100"`, if the client exceeds the
7866
+ # number of instances that can be created in a single (batch) request.
7867
+ # Corresponds to the JSON property `metadatas`
7868
+ # @return [Hash<String,String>]
7869
+ attr_accessor :metadatas
7870
+
7871
+ # The reason of the error. This is a constant value that identifies the
7872
+ # proximate cause of the error. Error reasons are unique within a particular
7873
+ # domain of errors. This should be at most 63 characters and match /[A-Z0-9_]+/.
7874
+ # Corresponds to the JSON property `reason`
7875
+ # @return [String]
7876
+ attr_accessor :reason
7877
+
7878
+ def initialize(**args)
7879
+ update!(**args)
7880
+ end
7881
+
7882
+ # Update properties of this object
7883
+ def update!(**args)
7884
+ @domain = args[:domain] if args.key?(:domain)
7885
+ @metadatas = args[:metadatas] if args.key?(:metadatas)
7886
+ @reason = args[:reason] if args.key?(:reason)
7887
+ end
7888
+ end
7889
+
7840
7890
  #
7841
7891
  class ExchangedPeeringRoute
7842
7892
  include Google::Apis::Core::Hashable
@@ -9150,6 +9200,14 @@ module Google
9150
9200
  # @return [Fixnum]
9151
9201
  attr_accessor :rule_tuple_count
9152
9202
 
9203
+ # A fully-qualified URL of a SecurityProfile resource instance. Example: https://
9204
+ # networksecurity.googleapis.com/v1/projects/`project`/locations/`location`/
9205
+ # securityProfileGroups/my-security-profile-group Must be specified if action = '
9206
+ # apply_profile_group' and cannot be specified for other actions.
9207
+ # Corresponds to the JSON property `securityProfileGroup`
9208
+ # @return [String]
9209
+ attr_accessor :security_profile_group
9210
+
9153
9211
  # A list of network resource URLs to which this rule applies. This field allows
9154
9212
  # you to control which network's VMs get this rule. If this field is left blank,
9155
9213
  # all VMs within the organization will receive the rule.
@@ -9191,6 +9249,7 @@ module Google
9191
9249
  @priority = args[:priority] if args.key?(:priority)
9192
9250
  @rule_name = args[:rule_name] if args.key?(:rule_name)
9193
9251
  @rule_tuple_count = args[:rule_tuple_count] if args.key?(:rule_tuple_count)
9252
+ @security_profile_group = args[:security_profile_group] if args.key?(:security_profile_group)
9194
9253
  @target_resources = args[:target_resources] if args.key?(:target_resources)
9195
9254
  @target_secure_tags = args[:target_secure_tags] if args.key?(:target_secure_tags)
9196
9255
  @target_service_accounts = args[:target_service_accounts] if args.key?(:target_service_accounts)
@@ -9500,8 +9559,7 @@ module Google
9500
9559
  attr_accessor :id
9501
9560
 
9502
9561
  # The IP Version that will be used by this forwarding rule. Valid options are
9503
- # IPV4 or IPV6. This can only be specified for an external global forwarding
9504
- # rule.
9562
+ # IPV4 or IPV6.
9505
9563
  # Corresponds to the JSON property `ipVersion`
9506
9564
  # @return [String]
9507
9565
  attr_accessor :ip_version
@@ -10766,6 +10824,37 @@ module Google
10766
10824
  end
10767
10825
  end
10768
10826
 
10827
+ #
10828
+ class GlobalAddressesMoveRequest
10829
+ include Google::Apis::Core::Hashable
10830
+
10831
+ # An optional destination address description if intended to be different from
10832
+ # the source.
10833
+ # Corresponds to the JSON property `description`
10834
+ # @return [String]
10835
+ attr_accessor :description
10836
+
10837
+ # The URL of the destination address to move to. This can be a full or partial
10838
+ # URL. For example, the following are all valid URLs to a address: - https://www.
10839
+ # googleapis.com/compute/v1/projects/project /global/addresses/address -
10840
+ # projects/project/global/addresses/address Note that destination project must
10841
+ # be different from the source project. So /global/addresses/address is not
10842
+ # valid partial url.
10843
+ # Corresponds to the JSON property `destinationAddress`
10844
+ # @return [String]
10845
+ attr_accessor :destination_address
10846
+
10847
+ def initialize(**args)
10848
+ update!(**args)
10849
+ end
10850
+
10851
+ # Update properties of this object
10852
+ def update!(**args)
10853
+ @description = args[:description] if args.key?(:description)
10854
+ @destination_address = args[:destination_address] if args.key?(:destination_address)
10855
+ end
10856
+ end
10857
+
10769
10858
  #
10770
10859
  class GlobalNetworkEndpointGroupsAttachEndpointsRequest
10771
10860
  include Google::Apis::Core::Hashable
@@ -12495,6 +12584,53 @@ module Google
12495
12584
  end
12496
12585
  end
12497
12586
 
12587
+ # Provides links to documentation or for performing an out of band action. For
12588
+ # example, if a quota check failed with an error indicating the calling project
12589
+ # hasn't enabled the accessed service, this can contain a URL pointing directly
12590
+ # to the right place in the developer console to flip the bit.
12591
+ class Help
12592
+ include Google::Apis::Core::Hashable
12593
+
12594
+ # URL(s) pointing to additional information on handling the current error.
12595
+ # Corresponds to the JSON property `links`
12596
+ # @return [Array<Google::Apis::ComputeAlpha::HelpLink>]
12597
+ attr_accessor :links
12598
+
12599
+ def initialize(**args)
12600
+ update!(**args)
12601
+ end
12602
+
12603
+ # Update properties of this object
12604
+ def update!(**args)
12605
+ @links = args[:links] if args.key?(:links)
12606
+ end
12607
+ end
12608
+
12609
+ # Describes a URL link.
12610
+ class HelpLink
12611
+ include Google::Apis::Core::Hashable
12612
+
12613
+ # Describes what the link offers.
12614
+ # Corresponds to the JSON property `description`
12615
+ # @return [String]
12616
+ attr_accessor :description
12617
+
12618
+ # The URL of the link.
12619
+ # Corresponds to the JSON property `url`
12620
+ # @return [String]
12621
+ attr_accessor :url
12622
+
12623
+ def initialize(**args)
12624
+ update!(**args)
12625
+ end
12626
+
12627
+ # Update properties of this object
12628
+ def update!(**args)
12629
+ @description = args[:description] if args.key?(:description)
12630
+ @url = args[:url] if args.key?(:url)
12631
+ end
12632
+ end
12633
+
12498
12634
  # UrlMaps A host-matching rule for a URL. If matched, will use the named
12499
12635
  # PathMatcher to select the BackendService.
12500
12636
  class HostRule
@@ -15498,6 +15634,14 @@ module Google
15498
15634
  # @return [Fixnum]
15499
15635
  attr_accessor :creating
15500
15636
 
15637
+ # [Output Only] The number of instances that the managed instance group will
15638
+ # attempt to create atomically, in a batch mode. If the desired count of
15639
+ # instances can not be created, entire batch will be deleted and the group will
15640
+ # decrease its targetSize value accordingly.
15641
+ # Corresponds to the JSON property `creatingAtomically`
15642
+ # @return [Fixnum]
15643
+ attr_accessor :creating_atomically
15644
+
15501
15645
  # [Output Only] The number of instances that the managed instance group will
15502
15646
  # attempt to create. The group attempts to create each instance only once. If
15503
15647
  # the group fails to create any of these instances, it decreases the group's
@@ -15578,6 +15722,7 @@ module Google
15578
15722
  def update!(**args)
15579
15723
  @abandoning = args[:abandoning] if args.key?(:abandoning)
15580
15724
  @creating = args[:creating] if args.key?(:creating)
15725
+ @creating_atomically = args[:creating_atomically] if args.key?(:creating_atomically)
15581
15726
  @creating_without_retries = args[:creating_without_retries] if args.key?(:creating_without_retries)
15582
15727
  @deleting = args[:deleting] if args.key?(:deleting)
15583
15728
  @none = args[:none] if args.key?(:none)
@@ -15980,6 +16125,239 @@ module Google
15980
16125
  end
15981
16126
  end
15982
16127
 
16128
+ # InstanceGroupManagerResizeRequest represents a request to create a number of
16129
+ # VMs: either immediately or by queuing the request for the specified time. This
16130
+ # resize request is nested under InstanceGroupManager and the VMs created by
16131
+ # this request are added to the owning InstanceGroupManager.
16132
+ class InstanceGroupManagerResizeRequest
16133
+ include Google::Apis::Core::Hashable
16134
+
16135
+ # The count of instances to create as part of this resize request.
16136
+ # Corresponds to the JSON property `count`
16137
+ # @return [Fixnum]
16138
+ attr_accessor :count
16139
+
16140
+ # [Output Only] The creation timestamp for this resize request in RFC3339 text
16141
+ # format.
16142
+ # Corresponds to the JSON property `creationTimestamp`
16143
+ # @return [String]
16144
+ attr_accessor :creation_timestamp
16145
+
16146
+ # An optional description of this resource.
16147
+ # Corresponds to the JSON property `description`
16148
+ # @return [String]
16149
+ attr_accessor :description
16150
+
16151
+ # [Output Only] A unique identifier for this resource type. The server generates
16152
+ # this identifier.
16153
+ # Corresponds to the JSON property `id`
16154
+ # @return [Fixnum]
16155
+ attr_accessor :id
16156
+
16157
+ # [Output Only] The resource type, which is always compute#
16158
+ # instanceGroupManagerResizeRequest for resize requests.
16159
+ # Corresponds to the JSON property `kind`
16160
+ # @return [String]
16161
+ attr_accessor :kind
16162
+
16163
+ # The name of this resize request. The name must be 1-63 characters long, and
16164
+ # comply with RFC1035.
16165
+ # Corresponds to the JSON property `name`
16166
+ # @return [String]
16167
+ attr_accessor :name
16168
+
16169
+ # Queuing parameters for the requested deferred capacity.
16170
+ # Corresponds to the JSON property `queuingPolicy`
16171
+ # @return [Google::Apis::ComputeAlpha::QueuingPolicy]
16172
+ attr_accessor :queuing_policy
16173
+
16174
+ # [Output Only] The URL for this resize request. The server defines this URL.
16175
+ # Corresponds to the JSON property `selfLink`
16176
+ # @return [String]
16177
+ attr_accessor :self_link
16178
+
16179
+ # [Output Only] Server-defined URL for this resource with the resource id.
16180
+ # Corresponds to the JSON property `selfLinkWithId`
16181
+ # @return [String]
16182
+ attr_accessor :self_link_with_id
16183
+
16184
+ # [Output only] Current state of the request.
16185
+ # Corresponds to the JSON property `state`
16186
+ # @return [String]
16187
+ attr_accessor :state
16188
+
16189
+ # [Output only] Status of the request. The Status message is aligned with
16190
+ # QueuedResource.status. ResizeRequest.queuing_policy contains the queuing
16191
+ # policy as provided by the user; it could have either valid_until_time or
16192
+ # valid_until_duration. ResizeRequest.status.queuing_policy always contains
16193
+ # absolute time as calculated by the server when the request is queued.
16194
+ # Corresponds to the JSON property `status`
16195
+ # @return [Google::Apis::ComputeAlpha::InstanceGroupManagerResizeRequestStatus]
16196
+ attr_accessor :status
16197
+
16198
+ # [Output Only] The URL of a zone where the resize request is located.
16199
+ # Corresponds to the JSON property `zone`
16200
+ # @return [String]
16201
+ attr_accessor :zone
16202
+
16203
+ def initialize(**args)
16204
+ update!(**args)
16205
+ end
16206
+
16207
+ # Update properties of this object
16208
+ def update!(**args)
16209
+ @count = args[:count] if args.key?(:count)
16210
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
16211
+ @description = args[:description] if args.key?(:description)
16212
+ @id = args[:id] if args.key?(:id)
16213
+ @kind = args[:kind] if args.key?(:kind)
16214
+ @name = args[:name] if args.key?(:name)
16215
+ @queuing_policy = args[:queuing_policy] if args.key?(:queuing_policy)
16216
+ @self_link = args[:self_link] if args.key?(:self_link)
16217
+ @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
16218
+ @state = args[:state] if args.key?(:state)
16219
+ @status = args[:status] if args.key?(:status)
16220
+ @zone = args[:zone] if args.key?(:zone)
16221
+ end
16222
+ end
16223
+
16224
+ #
16225
+ class InstanceGroupManagerResizeRequestStatus
16226
+ include Google::Apis::Core::Hashable
16227
+
16228
+ # Queuing parameters for the requested deferred capacity.
16229
+ # Corresponds to the JSON property `queuingPolicy`
16230
+ # @return [Google::Apis::ComputeAlpha::QueuingPolicy]
16231
+ attr_accessor :queuing_policy
16232
+
16233
+ def initialize(**args)
16234
+ update!(**args)
16235
+ end
16236
+
16237
+ # Update properties of this object
16238
+ def update!(**args)
16239
+ @queuing_policy = args[:queuing_policy] if args.key?(:queuing_policy)
16240
+ end
16241
+ end
16242
+
16243
+ # [Output Only] A list of resize requests.
16244
+ class InstanceGroupManagerResizeRequestsListResponse
16245
+ include Google::Apis::Core::Hashable
16246
+
16247
+ # [Output Only] Unique identifier for the resource; defined by the server.
16248
+ # Corresponds to the JSON property `id`
16249
+ # @return [String]
16250
+ attr_accessor :id
16251
+
16252
+ # A list of resize request resources.
16253
+ # Corresponds to the JSON property `items`
16254
+ # @return [Array<Google::Apis::ComputeAlpha::InstanceGroupManagerResizeRequest>]
16255
+ attr_accessor :items
16256
+
16257
+ # [Output Only] Type of the resource. Always compute#
16258
+ # instanceGroupManagerResizeRequestList for a list of resize requests.
16259
+ # Corresponds to the JSON property `kind`
16260
+ # @return [String]
16261
+ attr_accessor :kind
16262
+
16263
+ # [Output Only] This token allows you to get the next page of results for list
16264
+ # requests. If the number of results is larger than maxResults, use the
16265
+ # nextPageToken as a value for the query parameter pageToken in the next list
16266
+ # request. Subsequent list requests will have their own nextPageToken to
16267
+ # continue paging through the results.
16268
+ # Corresponds to the JSON property `nextPageToken`
16269
+ # @return [String]
16270
+ attr_accessor :next_page_token
16271
+
16272
+ # [Output Only] Server-defined URL for this resource.
16273
+ # Corresponds to the JSON property `selfLink`
16274
+ # @return [String]
16275
+ attr_accessor :self_link
16276
+
16277
+ # [Output Only] Informational warning message.
16278
+ # Corresponds to the JSON property `warning`
16279
+ # @return [Google::Apis::ComputeAlpha::InstanceGroupManagerResizeRequestsListResponse::Warning]
16280
+ attr_accessor :warning
16281
+
16282
+ def initialize(**args)
16283
+ update!(**args)
16284
+ end
16285
+
16286
+ # Update properties of this object
16287
+ def update!(**args)
16288
+ @id = args[:id] if args.key?(:id)
16289
+ @items = args[:items] if args.key?(:items)
16290
+ @kind = args[:kind] if args.key?(:kind)
16291
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
16292
+ @self_link = args[:self_link] if args.key?(:self_link)
16293
+ @warning = args[:warning] if args.key?(:warning)
16294
+ end
16295
+
16296
+ # [Output Only] Informational warning message.
16297
+ class Warning
16298
+ include Google::Apis::Core::Hashable
16299
+
16300
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
16301
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
16302
+ # Corresponds to the JSON property `code`
16303
+ # @return [String]
16304
+ attr_accessor :code
16305
+
16306
+ # [Output Only] Metadata about this warning in key: value format. For example: "
16307
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
16308
+ # Corresponds to the JSON property `data`
16309
+ # @return [Array<Google::Apis::ComputeAlpha::InstanceGroupManagerResizeRequestsListResponse::Warning::Datum>]
16310
+ attr_accessor :data
16311
+
16312
+ # [Output Only] A human-readable description of the warning code.
16313
+ # Corresponds to the JSON property `message`
16314
+ # @return [String]
16315
+ attr_accessor :message
16316
+
16317
+ def initialize(**args)
16318
+ update!(**args)
16319
+ end
16320
+
16321
+ # Update properties of this object
16322
+ def update!(**args)
16323
+ @code = args[:code] if args.key?(:code)
16324
+ @data = args[:data] if args.key?(:data)
16325
+ @message = args[:message] if args.key?(:message)
16326
+ end
16327
+
16328
+ #
16329
+ class Datum
16330
+ include Google::Apis::Core::Hashable
16331
+
16332
+ # [Output Only] A key that provides more detail on the warning being returned.
16333
+ # For example, for warnings where there are no results in a list request for a
16334
+ # particular zone, this key might be scope and the key value might be the zone
16335
+ # name. Other examples might be a key indicating a deprecated resource and a
16336
+ # suggested replacement, or a warning about invalid network settings (for
16337
+ # example, if an instance attempts to perform IP forwarding but is not enabled
16338
+ # for IP forwarding).
16339
+ # Corresponds to the JSON property `key`
16340
+ # @return [String]
16341
+ attr_accessor :key
16342
+
16343
+ # [Output Only] A warning data value corresponding to the key.
16344
+ # Corresponds to the JSON property `value`
16345
+ # @return [String]
16346
+ attr_accessor :value
16347
+
16348
+ def initialize(**args)
16349
+ update!(**args)
16350
+ end
16351
+
16352
+ # Update properties of this object
16353
+ def update!(**args)
16354
+ @key = args[:key] if args.key?(:key)
16355
+ @value = args[:value] if args.key?(:value)
16356
+ end
16357
+ end
16358
+ end
16359
+ end
16360
+
15983
16361
  #
15984
16362
  class InstanceGroupManagerStandbyPolicy
15985
16363
  include Google::Apis::Core::Hashable
@@ -17933,6 +18311,12 @@ module Google
17933
18311
  # @return [Google::Apis::ComputeAlpha::InstanceProperties]
17934
18312
  attr_accessor :properties
17935
18313
 
18314
+ # [Output Only] URL of the region where the instance template resides. Only
18315
+ # applicable for regional resources.
18316
+ # Corresponds to the JSON property `region`
18317
+ # @return [String]
18318
+ attr_accessor :region
18319
+
17936
18320
  # [Output Only] The URL for this instance template. The server defines this URL.
17937
18321
  # Corresponds to the JSON property `selfLink`
17938
18322
  # @return [String]
@@ -17969,6 +18353,7 @@ module Google
17969
18353
  @kind = args[:kind] if args.key?(:kind)
17970
18354
  @name = args[:name] if args.key?(:name)
17971
18355
  @properties = args[:properties] if args.key?(:properties)
18356
+ @region = args[:region] if args.key?(:region)
17972
18357
  @self_link = args[:self_link] if args.key?(:self_link)
17973
18358
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
17974
18359
  @source_instance = args[:source_instance] if args.key?(:source_instance)
@@ -21867,6 +22252,33 @@ module Google
21867
22252
  end
21868
22253
  end
21869
22254
 
22255
+ # Provides a localized error message that is safe to return to the user which
22256
+ # can be attached to an RPC error.
22257
+ class LocalizedMessage
22258
+ include Google::Apis::Core::Hashable
22259
+
22260
+ # The locale used following the specification defined at http://www.rfc-editor.
22261
+ # org/rfc/bcp/bcp47.txt. Examples are: "en-US", "fr-CH", "es-MX"
22262
+ # Corresponds to the JSON property `locale`
22263
+ # @return [String]
22264
+ attr_accessor :locale
22265
+
22266
+ # The localized error message in the above locale.
22267
+ # Corresponds to the JSON property `message`
22268
+ # @return [String]
22269
+ attr_accessor :message
22270
+
22271
+ def initialize(**args)
22272
+ update!(**args)
22273
+ end
22274
+
22275
+ # Update properties of this object
22276
+ def update!(**args)
22277
+ @locale = args[:locale] if args.key?(:locale)
22278
+ @message = args[:message] if args.key?(:message)
22279
+ end
22280
+ end
22281
+
21870
22282
  # Configuration for location policy among multiple possible locations (e.g.
21871
22283
  # preferences for zone selection among zones in a single region).
21872
22284
  class LocationPolicy
@@ -23035,6 +23447,14 @@ module Google
23035
23447
  # @return [String]
23036
23448
  attr_accessor :code
23037
23449
 
23450
+ # [Output Only] An optional list of messages that contain the error details.
23451
+ # There is a set of defined message types to use for providing details.The
23452
+ # syntax depends on the error code. For example, QuotaExceededInfo will have
23453
+ # details when the error code is QUOTA_EXCEEDED.
23454
+ # Corresponds to the JSON property `errorDetails`
23455
+ # @return [Array<Google::Apis::ComputeAlpha::ManagedInstanceLastAttempt::Errors::Error::ErrorDetail>]
23456
+ attr_accessor :error_details
23457
+
23038
23458
  # [Output Only] Indicates the field in the request that caused the error. This
23039
23459
  # property is optional.
23040
23460
  # Corresponds to the JSON property `location`
@@ -23053,9 +23473,58 @@ module Google
23053
23473
  # Update properties of this object
23054
23474
  def update!(**args)
23055
23475
  @code = args[:code] if args.key?(:code)
23476
+ @error_details = args[:error_details] if args.key?(:error_details)
23056
23477
  @location = args[:location] if args.key?(:location)
23057
23478
  @message = args[:message] if args.key?(:message)
23058
23479
  end
23480
+
23481
+ #
23482
+ class ErrorDetail
23483
+ include Google::Apis::Core::Hashable
23484
+
23485
+ # Describes the cause of the error with structured details. Example of an error
23486
+ # when contacting the "pubsub.googleapis.com" API when it is not enabled: ` "
23487
+ # reason": "API_DISABLED" "domain": "googleapis.com" "metadata": ` "resource": "
23488
+ # projects/123", "service": "pubsub.googleapis.com" ` ` This response indicates
23489
+ # that the pubsub.googleapis.com API is not enabled. Example of an error that is
23490
+ # returned when attempting to create a Spanner instance in a region that is out
23491
+ # of stock: ` "reason": "STOCKOUT" "domain": "spanner.googleapis.com", "metadata"
23492
+ # : ` "availableRegions": "us-central1,us-east2" ` `
23493
+ # Corresponds to the JSON property `errorInfo`
23494
+ # @return [Google::Apis::ComputeAlpha::ErrorInfo]
23495
+ attr_accessor :error_info
23496
+
23497
+ # Provides links to documentation or for performing an out of band action. For
23498
+ # example, if a quota check failed with an error indicating the calling project
23499
+ # hasn't enabled the accessed service, this can contain a URL pointing directly
23500
+ # to the right place in the developer console to flip the bit.
23501
+ # Corresponds to the JSON property `help`
23502
+ # @return [Google::Apis::ComputeAlpha::Help]
23503
+ attr_accessor :help
23504
+
23505
+ # Provides a localized error message that is safe to return to the user which
23506
+ # can be attached to an RPC error.
23507
+ # Corresponds to the JSON property `localizedMessage`
23508
+ # @return [Google::Apis::ComputeAlpha::LocalizedMessage]
23509
+ attr_accessor :localized_message
23510
+
23511
+ # Additional details for quota exceeded error for resource quota.
23512
+ # Corresponds to the JSON property `quotaInfo`
23513
+ # @return [Google::Apis::ComputeAlpha::QuotaExceededInfo]
23514
+ attr_accessor :quota_info
23515
+
23516
+ def initialize(**args)
23517
+ update!(**args)
23518
+ end
23519
+
23520
+ # Update properties of this object
23521
+ def update!(**args)
23522
+ @error_info = args[:error_info] if args.key?(:error_info)
23523
+ @help = args[:help] if args.key?(:help)
23524
+ @localized_message = args[:localized_message] if args.key?(:localized_message)
23525
+ @quota_info = args[:quota_info] if args.key?(:quota_info)
23526
+ end
23527
+ end
23059
23528
  end
23060
23529
  end
23061
23530
  end
@@ -27888,6 +28357,14 @@ module Google
27888
28357
  # @return [String]
27889
28358
  attr_accessor :code
27890
28359
 
28360
+ # [Output Only] An optional list of messages that contain the error details.
28361
+ # There is a set of defined message types to use for providing details.The
28362
+ # syntax depends on the error code. For example, QuotaExceededInfo will have
28363
+ # details when the error code is QUOTA_EXCEEDED.
28364
+ # Corresponds to the JSON property `errorDetails`
28365
+ # @return [Array<Google::Apis::ComputeAlpha::Operation::Error::Error::ErrorDetail>]
28366
+ attr_accessor :error_details
28367
+
27891
28368
  # [Output Only] Indicates the field in the request that caused the error. This
27892
28369
  # property is optional.
27893
28370
  # Corresponds to the JSON property `location`
@@ -27906,9 +28383,58 @@ module Google
27906
28383
  # Update properties of this object
27907
28384
  def update!(**args)
27908
28385
  @code = args[:code] if args.key?(:code)
28386
+ @error_details = args[:error_details] if args.key?(:error_details)
27909
28387
  @location = args[:location] if args.key?(:location)
27910
28388
  @message = args[:message] if args.key?(:message)
27911
28389
  end
28390
+
28391
+ #
28392
+ class ErrorDetail
28393
+ include Google::Apis::Core::Hashable
28394
+
28395
+ # Describes the cause of the error with structured details. Example of an error
28396
+ # when contacting the "pubsub.googleapis.com" API when it is not enabled: ` "
28397
+ # reason": "API_DISABLED" "domain": "googleapis.com" "metadata": ` "resource": "
28398
+ # projects/123", "service": "pubsub.googleapis.com" ` ` This response indicates
28399
+ # that the pubsub.googleapis.com API is not enabled. Example of an error that is
28400
+ # returned when attempting to create a Spanner instance in a region that is out
28401
+ # of stock: ` "reason": "STOCKOUT" "domain": "spanner.googleapis.com", "metadata"
28402
+ # : ` "availableRegions": "us-central1,us-east2" ` `
28403
+ # Corresponds to the JSON property `errorInfo`
28404
+ # @return [Google::Apis::ComputeAlpha::ErrorInfo]
28405
+ attr_accessor :error_info
28406
+
28407
+ # Provides links to documentation or for performing an out of band action. For
28408
+ # example, if a quota check failed with an error indicating the calling project
28409
+ # hasn't enabled the accessed service, this can contain a URL pointing directly
28410
+ # to the right place in the developer console to flip the bit.
28411
+ # Corresponds to the JSON property `help`
28412
+ # @return [Google::Apis::ComputeAlpha::Help]
28413
+ attr_accessor :help
28414
+
28415
+ # Provides a localized error message that is safe to return to the user which
28416
+ # can be attached to an RPC error.
28417
+ # Corresponds to the JSON property `localizedMessage`
28418
+ # @return [Google::Apis::ComputeAlpha::LocalizedMessage]
28419
+ attr_accessor :localized_message
28420
+
28421
+ # Additional details for quota exceeded error for resource quota.
28422
+ # Corresponds to the JSON property `quotaInfo`
28423
+ # @return [Google::Apis::ComputeAlpha::QuotaExceededInfo]
28424
+ attr_accessor :quota_info
28425
+
28426
+ def initialize(**args)
28427
+ update!(**args)
28428
+ end
28429
+
28430
+ # Update properties of this object
28431
+ def update!(**args)
28432
+ @error_info = args[:error_info] if args.key?(:error_info)
28433
+ @help = args[:help] if args.key?(:help)
28434
+ @localized_message = args[:localized_message] if args.key?(:localized_message)
28435
+ @quota_info = args[:quota_info] if args.key?(:quota_info)
28436
+ end
28437
+ end
27912
28438
  end
27913
28439
  end
27914
28440
 
@@ -30842,6 +31368,34 @@ module Google
30842
31368
  end
30843
31369
  end
30844
31370
 
31371
+ # Queuing parameters for the requested deferred capacity.
31372
+ class QueuingPolicy
31373
+ include Google::Apis::Core::Hashable
31374
+
31375
+ # A Duration represents a fixed-length span of time represented as a count of
31376
+ # seconds and fractions of seconds at nanosecond resolution. It is independent
31377
+ # of any calendar and concepts like "day" or "month". Range is approximately 10,
31378
+ # 000 years.
31379
+ # Corresponds to the JSON property `validUntilDuration`
31380
+ # @return [Google::Apis::ComputeAlpha::Duration]
31381
+ attr_accessor :valid_until_duration
31382
+
31383
+ # Absolute deadline for waiting for capacity in RFC3339 text format.
31384
+ # Corresponds to the JSON property `validUntilTime`
31385
+ # @return [String]
31386
+ attr_accessor :valid_until_time
31387
+
31388
+ def initialize(**args)
31389
+ update!(**args)
31390
+ end
31391
+
31392
+ # Update properties of this object
31393
+ def update!(**args)
31394
+ @valid_until_duration = args[:valid_until_duration] if args.key?(:valid_until_duration)
31395
+ @valid_until_time = args[:valid_until_time] if args.key?(:valid_until_time)
31396
+ end
31397
+ end
31398
+
30845
31399
  # A quotas entry.
30846
31400
  class Quota
30847
31401
  include Google::Apis::Core::Hashable
@@ -30880,6 +31434,44 @@ module Google
30880
31434
  end
30881
31435
  end
30882
31436
 
31437
+ # Additional details for quota exceeded error for resource quota.
31438
+ class QuotaExceededInfo
31439
+ include Google::Apis::Core::Hashable
31440
+
31441
+ # The map holding related quota dimensions.
31442
+ # Corresponds to the JSON property `dimensions`
31443
+ # @return [Hash<String,String>]
31444
+ attr_accessor :dimensions
31445
+
31446
+ # Current effective quota limit. The limit's unit depends on the quota type or
31447
+ # metric.
31448
+ # Corresponds to the JSON property `limit`
31449
+ # @return [Float]
31450
+ attr_accessor :limit
31451
+
31452
+ # The name of the quota limit.
31453
+ # Corresponds to the JSON property `limitName`
31454
+ # @return [String]
31455
+ attr_accessor :limit_name
31456
+
31457
+ # The Compute Engine quota metric name.
31458
+ # Corresponds to the JSON property `metricName`
31459
+ # @return [String]
31460
+ attr_accessor :metric_name
31461
+
31462
+ def initialize(**args)
31463
+ update!(**args)
31464
+ end
31465
+
31466
+ # Update properties of this object
31467
+ def update!(**args)
31468
+ @dimensions = args[:dimensions] if args.key?(:dimensions)
31469
+ @limit = args[:limit] if args.key?(:limit)
31470
+ @limit_name = args[:limit_name] if args.key?(:limit_name)
31471
+ @metric_name = args[:metric_name] if args.key?(:metric_name)
31472
+ end
31473
+ end
31474
+
30883
31475
  #
30884
31476
  class RbacPolicy
30885
31477
  include Google::Apis::Core::Hashable
@@ -31038,6 +31630,37 @@ module Google
31038
31630
  end
31039
31631
  end
31040
31632
 
31633
+ #
31634
+ class RegionAddressesMoveRequest
31635
+ include Google::Apis::Core::Hashable
31636
+
31637
+ # An optional destination address description if intended to be different from
31638
+ # the source.
31639
+ # Corresponds to the JSON property `description`
31640
+ # @return [String]
31641
+ attr_accessor :description
31642
+
31643
+ # The URL of the destination address to move to. This can be a full or partial
31644
+ # URL. For example, the following are all valid URLs to a address: - https://www.
31645
+ # googleapis.com/compute/v1/projects/project/regions/region /addresses/address -
31646
+ # projects/project/regions/region/addresses/address Note that destination
31647
+ # project must be different from the source project. So /regions/region/
31648
+ # addresses/address is not valid partial url.
31649
+ # Corresponds to the JSON property `destinationAddress`
31650
+ # @return [String]
31651
+ attr_accessor :destination_address
31652
+
31653
+ def initialize(**args)
31654
+ update!(**args)
31655
+ end
31656
+
31657
+ # Update properties of this object
31658
+ def update!(**args)
31659
+ @description = args[:description] if args.key?(:description)
31660
+ @destination_address = args[:destination_address] if args.key?(:destination_address)
31661
+ end
31662
+ end
31663
+
31041
31664
  # Contains a list of autoscalers.
31042
31665
  class RegionAutoscalerList
31043
31666
  include Google::Apis::Core::Hashable
@@ -38150,6 +38773,11 @@ module Google
38150
38773
  # @return [String]
38151
38774
  attr_accessor :exceed_action
38152
38775
 
38776
+ # Simplified google.rpc.Status type (omitting details).
38777
+ # Corresponds to the JSON property `exceedActionRpcStatus`
38778
+ # @return [Google::Apis::ComputeAlpha::SecurityPolicyRuleRateLimitOptionsRpcStatus]
38779
+ attr_accessor :exceed_action_rpc_status
38780
+
38153
38781
  # Parameters defining the redirect action that is used as the exceed action.
38154
38782
  # Cannot be specified if the exceed action is not redirect.
38155
38783
  # Corresponds to the JSON property `exceedRedirectOptions`
@@ -38173,11 +38801,37 @@ module Google
38173
38801
  @enforce_on_key = args[:enforce_on_key] if args.key?(:enforce_on_key)
38174
38802
  @enforce_on_key_name = args[:enforce_on_key_name] if args.key?(:enforce_on_key_name)
38175
38803
  @exceed_action = args[:exceed_action] if args.key?(:exceed_action)
38804
+ @exceed_action_rpc_status = args[:exceed_action_rpc_status] if args.key?(:exceed_action_rpc_status)
38176
38805
  @exceed_redirect_options = args[:exceed_redirect_options] if args.key?(:exceed_redirect_options)
38177
38806
  @rate_limit_threshold = args[:rate_limit_threshold] if args.key?(:rate_limit_threshold)
38178
38807
  end
38179
38808
  end
38180
38809
 
38810
+ # Simplified google.rpc.Status type (omitting details).
38811
+ class SecurityPolicyRuleRateLimitOptionsRpcStatus
38812
+ include Google::Apis::Core::Hashable
38813
+
38814
+ # The status code, which should be an enum value of google.rpc.Code.
38815
+ # Corresponds to the JSON property `code`
38816
+ # @return [Fixnum]
38817
+ attr_accessor :code
38818
+
38819
+ # A developer-facing error message, which should be in English.
38820
+ # Corresponds to the JSON property `message`
38821
+ # @return [String]
38822
+ attr_accessor :message
38823
+
38824
+ def initialize(**args)
38825
+ update!(**args)
38826
+ end
38827
+
38828
+ # Update properties of this object
38829
+ def update!(**args)
38830
+ @code = args[:code] if args.key?(:code)
38831
+ @message = args[:message] if args.key?(:message)
38832
+ end
38833
+ end
38834
+
38181
38835
  #
38182
38836
  class SecurityPolicyRuleRateLimitOptionsThreshold
38183
38837
  include Google::Apis::Core::Hashable