google-apis-compute_beta 0.19.0 → 0.20.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -3266,8 +3266,8 @@ module Google
3266
3266
  # INTERNAL_MANAGED. - A global backend service with the load_balancing_scheme
3267
3267
  # set to INTERNAL_SELF_MANAGED. If sessionAffinity is not NONE, and this field
3268
3268
  # is not set to MAGLEV or RING_HASH, session affinity settings will not take
3269
- # effect. Only the default ROUND_ROBIN policy is supported when the backend
3270
- # service is referenced by a URL map that is bound to target gRPC proxy that has
3269
+ # effect. Only ROUND_ROBIN and RING_HASH are supported when the backend service
3270
+ # is referenced by a URL map that is bound to target gRPC proxy that has
3271
3271
  # validateForProxyless field set to true.
3272
3272
  # Corresponds to the JSON property `localityLbPolicy`
3273
3273
  # @return [String]
@@ -3360,11 +3360,18 @@ module Google
3360
3360
  # @return [String]
3361
3361
  attr_accessor :self_link
3362
3362
 
3363
- # Type of session affinity to use. The default is NONE. For a detailed
3364
- # description of session affinity options, see: [Session affinity](https://cloud.
3365
- # google.com/load-balancing/docs/backend-service#session_affinity). Not
3366
- # supported when the backend service is referenced by a URL map that is bound to
3367
- # target gRPC proxy that has validateForProxyless field set to true.
3363
+ # URLs of networkservices.ServiceBinding resources. Can only be set if load
3364
+ # balancing scheme is INTERNAL_SELF_MANAGED. If set, lists of backends and
3365
+ # health checks must be both empty.
3366
+ # Corresponds to the JSON property `serviceBindings`
3367
+ # @return [Array<String>]
3368
+ attr_accessor :service_bindings
3369
+
3370
+ # Type of session affinity to use. The default is NONE. Only NONE and
3371
+ # HEADER_FIELD are supported when the backend service is referenced by a URL map
3372
+ # that is bound to target gRPC proxy that has validateForProxyless field set to
3373
+ # true. For more details, see: [Session Affinity](https://cloud.google.com/load-
3374
+ # balancing/docs/backend-service#session_affinity).
3368
3375
  # Corresponds to the JSON property `sessionAffinity`
3369
3376
  # @return [String]
3370
3377
  attr_accessor :session_affinity
@@ -3423,6 +3430,7 @@ module Google
3423
3430
  @security_policy = args[:security_policy] if args.key?(:security_policy)
3424
3431
  @security_settings = args[:security_settings] if args.key?(:security_settings)
3425
3432
  @self_link = args[:self_link] if args.key?(:self_link)
3433
+ @service_bindings = args[:service_bindings] if args.key?(:service_bindings)
3426
3434
  @session_affinity = args[:session_affinity] if args.key?(:session_affinity)
3427
3435
  @subsetting = args[:subsetting] if args.key?(:subsetting)
3428
3436
  @timeout_sec = args[:timeout_sec] if args.key?(:timeout_sec)
@@ -3773,7 +3781,11 @@ module Google
3773
3781
  # healthy backends (unless all backends are unhealthy). If set to ALWAYS_PERSIST,
3774
3782
  # existing connections always persist on unhealthy backends regardless of
3775
3783
  # protocol and session affinity. It is generally not recommended to use this
3776
- # mode overriding the default.
3784
+ # mode overriding the default. For more details, see [Connection Persistence for
3785
+ # Network Load Balancing](https://cloud.google.com/load-balancing/docs/network/
3786
+ # networklb-backend-service#connection-persistence) and [Connection Persistence
3787
+ # for Internal TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/
3788
+ # docs/internal#connection-persistence).
3777
3789
  # Corresponds to the JSON property `connectionPersistenceOnUnhealthyBackends`
3778
3790
  # @return [String]
3779
3791
  attr_accessor :connection_persistence_on_unhealthy_backends
@@ -3786,19 +3798,25 @@ module Google
3786
3798
  alias_method :enable_strong_affinity?, :enable_strong_affinity
3787
3799
 
3788
3800
  # Specifies how long to keep a Connection Tracking entry while there is no
3789
- # matching traffic (in seconds). For L4 ILB the minimum(default) is 10 minutes
3790
- # and maximum is 16 hours. For Network Load Balancer the default is 60 seconds.
3791
- # This option is not available publicly. This field will be supported only if
3792
- # the Connection Tracking key is less than 5-tuple.
3801
+ # matching traffic (in seconds). For Internal TCP/UDP Load Balancing: - The
3802
+ # minimum (default) is 10 minutes and the maximum is 16 hours. - It can be set
3803
+ # only if Connection Tracking is less than 5-tuple (i.e. Session Affinity is
3804
+ # CLIENT_IP_NO_DESTINATION, CLIENT_IP or CLIENT_IP_PROTO, and Tracking Mode is
3805
+ # PER_SESSION). For Network Load Balancer the default is 60 seconds. This option
3806
+ # is not available publicly.
3793
3807
  # Corresponds to the JSON property `idleTimeoutSec`
3794
3808
  # @return [Fixnum]
3795
3809
  attr_accessor :idle_timeout_sec
3796
3810
 
3797
- # Specifies the key used for connection tracking. There are two options:
3811
+ # Specifies the key used for connection tracking. There are two options: -
3798
3812
  # PER_CONNECTION: This is the default mode. The Connection Tracking is performed
3799
- # as per the Connection Key (default Hash Method) for the specific protocol.
3813
+ # as per the Connection Key (default Hash Method) for the specific protocol. -
3800
3814
  # PER_SESSION: The Connection Tracking is performed as per the configured
3801
- # Session Affinity. It matches the configured Session Affinity.
3815
+ # Session Affinity. It matches the configured Session Affinity. For more details,
3816
+ # see [Tracking Mode for Network Load Balancing](https://cloud.google.com/load-
3817
+ # balancing/docs/network/networklb-backend-service#tracking-mode) and [Tracking
3818
+ # Mode for Internal TCP/UDP Load Balancing](https://cloud.google.com/load-
3819
+ # balancing/docs/internal#tracking-mode).
3802
3820
  # Corresponds to the JSON property `trackingMode`
3803
3821
  # @return [String]
3804
3822
  attr_accessor :tracking_mode
@@ -4454,7 +4472,7 @@ module Google
4454
4472
  end
4455
4473
  end
4456
4474
 
4457
- # Associates `members` with a `role`.
4475
+ # Associates `members`, or principals, with a `role`.
4458
4476
  class Binding
4459
4477
  include Google::Apis::Core::Hashable
4460
4478
 
@@ -4482,7 +4500,7 @@ module Google
4482
4500
  # @return [Google::Apis::ComputeBeta::Expr]
4483
4501
  attr_accessor :condition
4484
4502
 
4485
- # Specifies the identities requesting access for a Cloud Platform resource. `
4503
+ # Specifies the principals requesting access for a Cloud Platform resource. `
4486
4504
  # members` can have the following values: * `allUsers`: A special identifier
4487
4505
  # that represents anyone who is on the internet; with or without a Google
4488
4506
  # account. * `allAuthenticatedUsers`: A special identifier that represents
@@ -4512,8 +4530,8 @@ module Google
4512
4530
  # @return [Array<String>]
4513
4531
  attr_accessor :members
4514
4532
 
4515
- # Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`
4516
- # , or `roles/owner`.
4533
+ # Role that is assigned to the list of `members`, or principals. For example, `
4534
+ # roles/viewer`, `roles/editor`, or `roles/owner`.
4517
4535
  # Corresponds to the JSON property `role`
4518
4536
  # @return [String]
4519
4537
  attr_accessor :role
@@ -5409,14 +5427,15 @@ module Google
5409
5427
  end
5410
5428
  end
5411
5429
 
5412
- # The specification for allowing client side cross-origin requests. Please see
5413
- # W3C Recommendation for Cross Origin Resource Sharing
5430
+ # The specification for allowing client-side cross-origin requests. For more
5431
+ # information about the W3C recommendation for cross-origin resource sharing (
5432
+ # CORS), see Fetch API Living Standard.
5414
5433
  class CorsPolicy
5415
5434
  include Google::Apis::Core::Hashable
5416
5435
 
5417
5436
  # In response to a preflight request, setting this to true indicates that the
5418
- # actual request can include user credentials. This translates to the Access-
5419
- # Control-Allow-Credentials header. Default is false.
5437
+ # actual request can include user credentials. This field translates to the
5438
+ # Access-Control-Allow-Credentials header. Default is false.
5420
5439
  # Corresponds to the JSON property `allowCredentials`
5421
5440
  # @return [Boolean]
5422
5441
  attr_accessor :allow_credentials
@@ -5432,23 +5451,23 @@ module Google
5432
5451
  # @return [Array<String>]
5433
5452
  attr_accessor :allow_methods
5434
5453
 
5435
- # Specifies the regualar expression patterns that match allowed origins. For
5436
- # regular expression grammar please see github.com/google/re2/wiki/Syntax An
5437
- # origin is allowed if it matches either an item in allowOrigins or an item in
5454
+ # Specifies a regular expression that matches allowed origins. For more
5455
+ # information about the regular expression syntax, see Syntax. An origin is
5456
+ # allowed if it matches either an item in allowOrigins or an item in
5438
5457
  # allowOriginRegexes.
5439
5458
  # Corresponds to the JSON property `allowOriginRegexes`
5440
5459
  # @return [Array<String>]
5441
5460
  attr_accessor :allow_origin_regexes
5442
5461
 
5443
- # Specifies the list of origins that will be allowed to do CORS requests. An
5444
- # origin is allowed if it matches either an item in allowOrigins or an item in
5462
+ # Specifies the list of origins that is allowed to do CORS requests. An origin
5463
+ # is allowed if it matches either an item in allowOrigins or an item in
5445
5464
  # allowOriginRegexes.
5446
5465
  # Corresponds to the JSON property `allowOrigins`
5447
5466
  # @return [Array<String>]
5448
5467
  attr_accessor :allow_origins
5449
5468
 
5450
- # If true, specifies the CORS policy is disabled. The default value of false,
5451
- # which indicates that the CORS policy is in effect.
5469
+ # If true, the setting specifies the CORS policy is disabled. The default value
5470
+ # of false, which indicates that the CORS policy is in effect.
5452
5471
  # Corresponds to the JSON property `disabled`
5453
5472
  # @return [Boolean]
5454
5473
  attr_accessor :disabled
@@ -5460,7 +5479,7 @@ module Google
5460
5479
  attr_accessor :expose_headers
5461
5480
 
5462
5481
  # Specifies how long results of a preflight request can be cached in seconds.
5463
- # This translates to the Access-Control-Max-Age header.
5482
+ # This field translates to the Access-Control-Max-Age header.
5464
5483
  # Corresponds to the JSON property `maxAge`
5465
5484
  # @return [Fixnum]
5466
5485
  attr_accessor :max_age
@@ -9248,31 +9267,31 @@ module Google
9248
9267
 
9249
9268
  # An Identity and Access Management (IAM) policy, which specifies access
9250
9269
  # controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
9251
- # A `binding` binds one or more `members` to a single `role`. Members can be
9252
- # user accounts, service accounts, Google groups, and domains (such as G Suite).
9253
- # A `role` is a named list of permissions; each `role` can be an IAM predefined
9254
- # role or a user-created custom role. For some types of Google Cloud resources,
9255
- # a `binding` can also specify a `condition`, which is a logical expression that
9256
- # allows access to a resource only if the expression evaluates to `true`. A
9257
- # condition can add constraints based on attributes of the request, the resource,
9258
- # or both. To learn which resources support conditions in their IAM policies,
9259
- # see the [IAM documentation](https://cloud.google.com/iam/help/conditions/
9260
- # resource-policies). **JSON example:** ` "bindings": [ ` "role": "roles/
9261
- # resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "
9262
- # group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@
9263
- # appspot.gserviceaccount.com" ] `, ` "role": "roles/resourcemanager.
9264
- # organizationViewer", "members": [ "user:eve@example.com" ], "condition": ` "
9265
- # title": "expirable access", "description": "Does not grant access after Sep
9266
- # 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", `
9267
- # ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:** bindings: -
9268
- # members: - user:mike@example.com - group:admins@example.com - domain:google.
9269
- # com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/
9270
- # resourcemanager.organizationAdmin - members: - user:eve@example.com role:
9271
- # roles/resourcemanager.organizationViewer condition: title: expirable access
9272
- # description: Does not grant access after Sep 2020 expression: request.time <
9273
- # timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For a
9274
- # description of IAM and its features, see the [IAM documentation](https://cloud.
9275
- # google.com/iam/docs/).
9270
+ # A `binding` binds one or more `members`, or principals, to a single `role`.
9271
+ # Principals can be user accounts, service accounts, Google groups, and domains (
9272
+ # such as G Suite). A `role` is a named list of permissions; each `role` can be
9273
+ # an IAM predefined role or a user-created custom role. For some types of Google
9274
+ # Cloud resources, a `binding` can also specify a `condition`, which is a
9275
+ # logical expression that allows access to a resource only if the expression
9276
+ # evaluates to `true`. A condition can add constraints based on attributes of
9277
+ # the request, the resource, or both. To learn which resources support
9278
+ # conditions in their IAM policies, see the [IAM documentation](https://cloud.
9279
+ # google.com/iam/help/conditions/resource-policies). **JSON example:** ` "
9280
+ # bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
9281
+ # "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
9282
+ # serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
9283
+ # roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
9284
+ # ], "condition": ` "title": "expirable access", "description": "Does not grant
9285
+ # access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
9286
+ # 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
9287
+ # bindings: - members: - user:mike@example.com - group:admins@example.com -
9288
+ # domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
9289
+ # role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
9290
+ # com role: roles/resourcemanager.organizationViewer condition: title: expirable
9291
+ # access description: Does not grant access after Sep 2020 expression: request.
9292
+ # time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
9293
+ # a description of IAM and its features, see the [IAM documentation](https://
9294
+ # cloud.google.com/iam/docs/).
9276
9295
  # Corresponds to the JSON property `policy`
9277
9296
  # @return [Google::Apis::ComputeBeta::Policy]
9278
9297
  attr_accessor :policy
@@ -9345,31 +9364,31 @@ module Google
9345
9364
 
9346
9365
  # An Identity and Access Management (IAM) policy, which specifies access
9347
9366
  # controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
9348
- # A `binding` binds one or more `members` to a single `role`. Members can be
9349
- # user accounts, service accounts, Google groups, and domains (such as G Suite).
9350
- # A `role` is a named list of permissions; each `role` can be an IAM predefined
9351
- # role or a user-created custom role. For some types of Google Cloud resources,
9352
- # a `binding` can also specify a `condition`, which is a logical expression that
9353
- # allows access to a resource only if the expression evaluates to `true`. A
9354
- # condition can add constraints based on attributes of the request, the resource,
9355
- # or both. To learn which resources support conditions in their IAM policies,
9356
- # see the [IAM documentation](https://cloud.google.com/iam/help/conditions/
9357
- # resource-policies). **JSON example:** ` "bindings": [ ` "role": "roles/
9358
- # resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "
9359
- # group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@
9360
- # appspot.gserviceaccount.com" ] `, ` "role": "roles/resourcemanager.
9361
- # organizationViewer", "members": [ "user:eve@example.com" ], "condition": ` "
9362
- # title": "expirable access", "description": "Does not grant access after Sep
9363
- # 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", `
9364
- # ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:** bindings: -
9365
- # members: - user:mike@example.com - group:admins@example.com - domain:google.
9366
- # com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/
9367
- # resourcemanager.organizationAdmin - members: - user:eve@example.com role:
9368
- # roles/resourcemanager.organizationViewer condition: title: expirable access
9369
- # description: Does not grant access after Sep 2020 expression: request.time <
9370
- # timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For a
9371
- # description of IAM and its features, see the [IAM documentation](https://cloud.
9372
- # google.com/iam/docs/).
9367
+ # A `binding` binds one or more `members`, or principals, to a single `role`.
9368
+ # Principals can be user accounts, service accounts, Google groups, and domains (
9369
+ # such as G Suite). A `role` is a named list of permissions; each `role` can be
9370
+ # an IAM predefined role or a user-created custom role. For some types of Google
9371
+ # Cloud resources, a `binding` can also specify a `condition`, which is a
9372
+ # logical expression that allows access to a resource only if the expression
9373
+ # evaluates to `true`. A condition can add constraints based on attributes of
9374
+ # the request, the resource, or both. To learn which resources support
9375
+ # conditions in their IAM policies, see the [IAM documentation](https://cloud.
9376
+ # google.com/iam/help/conditions/resource-policies). **JSON example:** ` "
9377
+ # bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
9378
+ # "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
9379
+ # serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
9380
+ # roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
9381
+ # ], "condition": ` "title": "expirable access", "description": "Does not grant
9382
+ # access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
9383
+ # 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
9384
+ # bindings: - members: - user:mike@example.com - group:admins@example.com -
9385
+ # domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
9386
+ # role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
9387
+ # com role: roles/resourcemanager.organizationViewer condition: title: expirable
9388
+ # access description: Does not grant access after Sep 2020 expression: request.
9389
+ # time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
9390
+ # a description of IAM and its features, see the [IAM documentation](https://
9391
+ # cloud.google.com/iam/docs/).
9373
9392
  # Corresponds to the JSON property `policy`
9374
9393
  # @return [Google::Apis::ComputeBeta::Policy]
9375
9394
  attr_accessor :policy
@@ -9491,8 +9510,11 @@ module Google
9491
9510
  class GuestOsFeature
9492
9511
  include Google::Apis::Core::Hashable
9493
9512
 
9494
- # The ID of a supported feature. Read Enabling guest operating system features
9495
- # to see a list of available options.
9513
+ # The ID of a supported feature. To add multiple values, use commas to separate
9514
+ # values. Set to one or more of the following values: - VIRTIO_SCSI_MULTIQUEUE -
9515
+ # WINDOWS - MULTI_IP_SUBNET - UEFI_COMPATIBLE - SECURE_BOOT - GVNIC -
9516
+ # SEV_CAPABLE - SUSPEND_RESUME_COMPATIBLE For more information, see Enabling
9517
+ # guest operating system features.
9496
9518
  # Corresponds to the JSON property `type`
9497
9519
  # @return [String]
9498
9520
  attr_accessor :type
@@ -10652,7 +10674,8 @@ module Google
10652
10674
  # port numbers in the format host:port. * matches any string of ([a-z0-9-.]*).
10653
10675
  # In that case, * must be the first character and must be followed in the
10654
10676
  # pattern by either - or .. * based matching is not supported when the URL map
10655
- # is bound to target gRPC proxy that has validateForProxyless field set to true.
10677
+ # is bound to a target gRPC proxy that has the validateForProxyless field set to
10678
+ # true.
10656
10679
  # Corresponds to the JSON property `hosts`
10657
10680
  # @return [Array<String>]
10658
10681
  attr_accessor :hosts
@@ -10679,8 +10702,8 @@ module Google
10679
10702
  class HttpFaultAbort
10680
10703
  include Google::Apis::Core::Hashable
10681
10704
 
10682
- # The HTTP status code used to abort the request. The value must be between 200
10683
- # and 599 inclusive. For gRPC protocol, the gRPC status code is mapped to HTTP
10705
+ # The HTTP status code used to abort the request. The value must be from 200 to
10706
+ # 599 inclusive. For gRPC protocol, the gRPC status code is mapped to HTTP
10684
10707
  # status code according to this mapping table. HTTP status 200 is mapped to gRPC
10685
10708
  # status UNKNOWN. Injecting an OK status is currently not supported by Traffic
10686
10709
  # Director.
@@ -10688,8 +10711,8 @@ module Google
10688
10711
  # @return [Fixnum]
10689
10712
  attr_accessor :http_status
10690
10713
 
10691
- # The percentage of traffic (connections/operations/requests) which will be
10692
- # aborted as part of fault injection. The value must be between 0.0 and 100.0
10714
+ # The percentage of traffic for connections, operations, or requests that is
10715
+ # aborted as part of fault injection. The value must be from 0.0 to 100.0
10693
10716
  # inclusive.
10694
10717
  # Corresponds to the JSON property `percentage`
10695
10718
  # @return [Float]
@@ -10706,8 +10729,8 @@ module Google
10706
10729
  end
10707
10730
  end
10708
10731
 
10709
- # Specifies the delay introduced by Loadbalancer before forwarding the request
10710
- # to the backend service as part of fault injection.
10732
+ # Specifies the delay introduced by the load balancer before forwarding the
10733
+ # request to the backend service as part of fault injection.
10711
10734
  class HttpFaultDelay
10712
10735
  include Google::Apis::Core::Hashable
10713
10736
 
@@ -10719,9 +10742,9 @@ module Google
10719
10742
  # @return [Google::Apis::ComputeBeta::Duration]
10720
10743
  attr_accessor :fixed_delay
10721
10744
 
10722
- # The percentage of traffic (connections/operations/requests) on which delay
10723
- # will be introduced as part of fault injection. The value must be between 0.0
10724
- # and 100.0 inclusive.
10745
+ # The percentage of traffic for connections, operations, or requests for which a
10746
+ # delay is introduced as part of fault injection. The value must be from 0.0 to
10747
+ # 100.0 inclusive.
10725
10748
  # Corresponds to the JSON property `percentage`
10726
10749
  # @return [Float]
10727
10750
  attr_accessor :percentage
@@ -10740,9 +10763,9 @@ module Google
10740
10763
  # The specification for fault injection introduced into traffic to test the
10741
10764
  # resiliency of clients to backend service failure. As part of fault injection,
10742
10765
  # when clients send requests to a backend service, delays can be introduced by
10743
- # Loadbalancer on a percentage of requests before sending those request to the
10744
- # backend service. Similarly requests from clients can be aborted by the
10745
- # Loadbalancer for a percentage of requests.
10766
+ # the load balancer on a percentage of requests before sending those request to
10767
+ # the backend service. Similarly requests from clients can be aborted by the
10768
+ # load balancer for a percentage of requests.
10746
10769
  class HttpFaultInjection
10747
10770
  include Google::Apis::Core::Hashable
10748
10771
 
@@ -10751,8 +10774,8 @@ module Google
10751
10774
  # @return [Google::Apis::ComputeBeta::HttpFaultAbort]
10752
10775
  attr_accessor :abort
10753
10776
 
10754
- # Specifies the delay introduced by Loadbalancer before forwarding the request
10755
- # to the backend service as part of fault injection.
10777
+ # Specifies the delay introduced by the load balancer before forwarding the
10778
+ # request to the backend service as part of fault injection.
10756
10779
  # Corresponds to the JSON property `delay`
10757
10780
  # @return [Google::Apis::ComputeBeta::HttpFaultDelay]
10758
10781
  attr_accessor :delay
@@ -10810,25 +10833,25 @@ module Google
10810
10833
  class HttpHeaderAction
10811
10834
  include Google::Apis::Core::Hashable
10812
10835
 
10813
- # Headers to add to a matching request prior to forwarding the request to the
10836
+ # Headers to add to a matching request before forwarding the request to the
10814
10837
  # backendService.
10815
10838
  # Corresponds to the JSON property `requestHeadersToAdd`
10816
10839
  # @return [Array<Google::Apis::ComputeBeta::HttpHeaderOption>]
10817
10840
  attr_accessor :request_headers_to_add
10818
10841
 
10819
10842
  # A list of header names for headers that need to be removed from the request
10820
- # prior to forwarding the request to the backendService.
10843
+ # before forwarding the request to the backendService.
10821
10844
  # Corresponds to the JSON property `requestHeadersToRemove`
10822
10845
  # @return [Array<String>]
10823
10846
  attr_accessor :request_headers_to_remove
10824
10847
 
10825
- # Headers to add the response prior to sending the response back to the client.
10848
+ # Headers to add the response before sending the response back to the client.
10826
10849
  # Corresponds to the JSON property `responseHeadersToAdd`
10827
10850
  # @return [Array<Google::Apis::ComputeBeta::HttpHeaderOption>]
10828
10851
  attr_accessor :response_headers_to_add
10829
10852
 
10830
10853
  # A list of header names for headers that need to be removed from the response
10831
- # prior to sending the response back to the client.
10854
+ # before sending the response back to the client.
10832
10855
  # Corresponds to the JSON property `responseHeadersToRemove`
10833
10856
  # @return [Array<String>]
10834
10857
  attr_accessor :response_headers_to_remove
@@ -10858,21 +10881,21 @@ module Google
10858
10881
 
10859
10882
  # The name of the HTTP header to match. For matching against the HTTP request's
10860
10883
  # authority, use a headerMatch with the header name ":authority". For matching a
10861
- # request's method, use the headerName ":method". When the URL map is bound to
10862
- # target gRPC proxy that has validateForProxyless field set to true, only non-
10863
- # binary user-specified custom metadata and the `content-type` header are
10884
+ # request's method, use the headerName ":method". When the URL map is bound to a
10885
+ # target gRPC proxy that has the validateForProxyless field set to true, only
10886
+ # non-binary user-specified custom metadata and the `content-type` header are
10864
10887
  # supported. The following transport-level headers cannot be used in header
10865
10888
  # matching rules: `:authority`, `:method`, `:path`, `:scheme`, `user-agent`, `
10866
10889
  # accept-encoding`, `content-encoding`, `grpc-accept-encoding`, `grpc-encoding`,
10867
10890
  # `grpc-previous-rpc-attempts`, `grpc-tags-bin`, `grpc-timeout` and `grpc-trace-
10868
- # bin.
10891
+ # bin`.
10869
10892
  # Corresponds to the JSON property `headerName`
10870
10893
  # @return [String]
10871
10894
  attr_accessor :header_name
10872
10895
 
10873
- # If set to false, the headerMatch is considered a match if the match criteria
10874
- # above are met. If set to true, the headerMatch is considered a match if the
10875
- # match criteria above are NOT met. The default setting is false.
10896
+ # If set to false, the headerMatch is considered a match if the preceding match
10897
+ # criteria are met. If set to true, the headerMatch is considered a match if the
10898
+ # preceding match criteria are NOT met. The default setting is false.
10876
10899
  # Corresponds to the JSON property `invertMatch`
10877
10900
  # @return [Boolean]
10878
10901
  attr_accessor :invert_match
@@ -10900,13 +10923,13 @@ module Google
10900
10923
  attr_accessor :range_match
10901
10924
 
10902
10925
  # The value of the header must match the regular expression specified in
10903
- # regexMatch. For regular expression grammar, please see: github.com/google/re2/
10904
- # wiki/Syntax For matching against a port specified in the HTTP request, use a
10905
- # headerMatch with headerName set to PORT and a regular expression that
10906
- # satisfies the RFC2616 Host header's port specifier. Only one of exactMatch,
10907
- # prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.
10908
- # Note that regexMatch only applies to Loadbalancers that have their
10909
- # loadBalancingScheme set to INTERNAL_SELF_MANAGED.
10926
+ # regexMatch. For more information about regular expression syntax, see Syntax.
10927
+ # For matching against a port specified in the HTTP request, use a headerMatch
10928
+ # with headerName set to PORT and a regular expression that satisfies the
10929
+ # RFC2616 Host header's port specifier. Only one of exactMatch, prefixMatch,
10930
+ # suffixMatch, regexMatch, presentMatch or rangeMatch must be set. regexMatch
10931
+ # only applies to load balancers that have loadBalancingScheme set to
10932
+ # INTERNAL_SELF_MANAGED.
10910
10933
  # Corresponds to the JSON property `regexMatch`
10911
10934
  # @return [String]
10912
10935
  attr_accessor :regex_match
@@ -11201,8 +11224,8 @@ module Google
11201
11224
  include Google::Apis::Core::Hashable
11202
11225
 
11203
11226
  # The queryParameterMatch matches if the value of the parameter exactly matches
11204
- # the contents of exactMatch. Only one of presentMatch, exactMatch or regexMatch
11205
- # must be set.
11227
+ # the contents of exactMatch. Only one of presentMatch, exactMatch, or
11228
+ # regexMatch must be set.
11206
11229
  # Corresponds to the JSON property `exactMatch`
11207
11230
  # @return [String]
11208
11231
  attr_accessor :exact_match
@@ -11215,17 +11238,17 @@ module Google
11215
11238
 
11216
11239
  # Specifies that the queryParameterMatch matches if the request contains the
11217
11240
  # query parameter, irrespective of whether the parameter has a value or not.
11218
- # Only one of presentMatch, exactMatch or regexMatch must be set.
11241
+ # Only one of presentMatch, exactMatch, or regexMatch must be set.
11219
11242
  # Corresponds to the JSON property `presentMatch`
11220
11243
  # @return [Boolean]
11221
11244
  attr_accessor :present_match
11222
11245
  alias_method :present_match?, :present_match
11223
11246
 
11224
11247
  # The queryParameterMatch matches if the value of the parameter matches the
11225
- # regular expression specified by regexMatch. For the regular expression grammar,
11226
- # please see github.com/google/re2/wiki/Syntax Only one of presentMatch,
11227
- # exactMatch or regexMatch must be set. Note that regexMatch only applies when
11228
- # the loadBalancingScheme is set to INTERNAL_SELF_MANAGED.
11248
+ # regular expression specified by regexMatch. For more information about regular
11249
+ # expression syntax, see Syntax. Only one of presentMatch, exactMatch, or
11250
+ # regexMatch must be set. regexMatch only applies when the loadBalancingScheme
11251
+ # is set to INTERNAL_SELF_MANAGED.
11229
11252
  # Corresponds to the JSON property `regexMatch`
11230
11253
  # @return [String]
11231
11254
  attr_accessor :regex_match
@@ -11247,15 +11270,15 @@ module Google
11247
11270
  class HttpRedirectAction
11248
11271
  include Google::Apis::Core::Hashable
11249
11272
 
11250
- # The host that will be used in the redirect response instead of the one that
11251
- # was supplied in the request. The value must be between 1 and 255 characters.
11273
+ # The host that is used in the redirect response instead of the one that was
11274
+ # supplied in the request. The value must be from 1 to 255 characters.
11252
11275
  # Corresponds to the JSON property `hostRedirect`
11253
11276
  # @return [String]
11254
11277
  attr_accessor :host_redirect
11255
11278
 
11256
- # If set to true, the URL scheme in the redirected request is set to https. If
11257
- # set to false, the URL scheme of the redirected request will remain the same as
11258
- # that of the request. This must only be set for UrlMaps used in
11279
+ # If set to true, the URL scheme in the redirected request is set to HTTPS. If
11280
+ # set to false, the URL scheme of the redirected request remains the same as
11281
+ # that of the request. This must only be set for URL maps used in
11259
11282
  # TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The
11260
11283
  # default is set to false.
11261
11284
  # Corresponds to the JSON property `httpsRedirect`
@@ -11263,11 +11286,11 @@ module Google
11263
11286
  attr_accessor :https_redirect
11264
11287
  alias_method :https_redirect?, :https_redirect
11265
11288
 
11266
- # The path that will be used in the redirect response instead of the one that
11267
- # was supplied in the request. pathRedirect cannot be supplied together with
11289
+ # The path that is used in the redirect response instead of the one that was
11290
+ # supplied in the request. pathRedirect cannot be supplied together with
11268
11291
  # prefixRedirect. Supply one alone or neither. If neither is supplied, the path
11269
- # of the original request will be used for the redirect. The value must be
11270
- # between 1 and 1024 characters.
11292
+ # of the original request is used for the redirect. The value must be from 1 to
11293
+ # 1024 characters.
11271
11294
  # Corresponds to the JSON property `pathRedirect`
11272
11295
  # @return [String]
11273
11296
  attr_accessor :path_redirect
@@ -11275,8 +11298,8 @@ module Google
11275
11298
  # The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch,
11276
11299
  # retaining the remaining portion of the URL before redirecting the request.
11277
11300
  # prefixRedirect cannot be supplied together with pathRedirect. Supply one alone
11278
- # or neither. If neither is supplied, the path of the original request will be
11279
- # used for the redirect. The value must be between 1 and 1024 characters.
11301
+ # or neither. If neither is supplied, the path of the original request is used
11302
+ # for the redirect. The value must be from 1 to 1024 characters.
11280
11303
  # Corresponds to the JSON property `prefixRedirect`
11281
11304
  # @return [String]
11282
11305
  attr_accessor :prefix_redirect
@@ -11285,14 +11308,14 @@ module Google
11285
11308
  # MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. -
11286
11309
  # FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. -
11287
11310
  # TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method
11288
- # will be retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case,
11289
- # the request method will be retained.
11311
+ # is retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the
11312
+ # request method is retained.
11290
11313
  # Corresponds to the JSON property `redirectResponseCode`
11291
11314
  # @return [String]
11292
11315
  attr_accessor :redirect_response_code
11293
11316
 
11294
11317
  # If set to true, any accompanying query portion of the original URL is removed
11295
- # prior to redirecting the request. If set to false, the query portion of the
11318
+ # before redirecting the request. If set to false, the query portion of the
11296
11319
  # original URL is retained. The default is set to false.
11297
11320
  # Corresponds to the JSON property `stripQuery`
11298
11321
  # @return [Boolean]
@@ -11333,25 +11356,27 @@ module Google
11333
11356
  attr_accessor :per_try_timeout
11334
11357
 
11335
11358
  # Specifies one or more conditions when this retry policy applies. Valid values
11336
- # are: - 5xx: Retry will be attempted if the instance or endpoint responds with
11337
- # any 5xx response code, or if the instance or endpoint does not respond at all,
11338
- # example: disconnects, reset, read timeout, connection failure, and refused
11359
+ # are: - 5xx: retry is attempted if the instance or endpoint responds with any
11360
+ # 5xx response code, or if the instance or endpoint does not respond at all. For
11361
+ # example, disconnects, reset, read timeout, connection failure, and refused
11339
11362
  # streams. - gateway-error: Similar to 5xx, but only applies to response codes
11340
- # 502, 503 or 504. - - connect-failure: A retry will be attempted on failures
11341
- # connecting to the instance or endpoint, for example due to connection timeouts.
11342
- # - retriable-4xx: A retry will be attempted if the instance or endpoint
11343
- # responds with a retriable 4xx response code. Currently the only retriable
11344
- # error supported is 409. - refused-stream: A retry will be attempted if the
11345
- # instance or endpoint resets the stream with a REFUSED_STREAM error code. This
11346
- # reset type indicates that it is safe to retry. - cancelled: A retry will be
11347
- # attempted if the gRPC status code in the response header is set to cancelled. -
11348
- # deadline-exceeded: A retry will be attempted if the gRPC status code in the
11349
- # response header is set to deadline-exceeded. - internal: A retry will be
11350
- # attempted if the gRPC status code in the response header is set to internal. -
11351
- # resource-exhausted: A retry will be attempted if the gRPC status code in the
11352
- # response header is set to resource-exhausted. - unavailable: A retry will be
11353
- # attempted if the gRPC status code in the response header is set to unavailable.
11354
- #
11363
+ # 502, 503 or 504. - connect-failure: a retry is attempted on failures
11364
+ # connecting to the instance or endpoint. For example, connection timeouts. -
11365
+ # retriable-4xx: a retry is attempted if the instance or endpoint responds with
11366
+ # a 4xx response code. The only error that you can retry is error code 409. -
11367
+ # refused-stream: a retry is attempted if the instance or endpoint resets the
11368
+ # stream with a REFUSED_STREAM error code. This reset type indicates that it is
11369
+ # safe to retry. - cancelled: a retry is attempted if the gRPC status code in
11370
+ # the response header is set to cancelled. - deadline-exceeded: a retry is
11371
+ # attempted if the gRPC status code in the response header is set to deadline-
11372
+ # exceeded. - internal: a retry is attempted if the gRPC status code in the
11373
+ # response header is set to internal. - resource-exhausted: a retry is attempted
11374
+ # if the gRPC status code in the response header is set to resource-exhausted. -
11375
+ # unavailable: a retry is attempted if the gRPC status code in the response
11376
+ # header is set to unavailable. Only the following codes are supported when the
11377
+ # URL map is bound to target gRPC proxy that has validateForProxyless field set
11378
+ # to true. - cancelled - deadline-exceeded - internal - resource-exhausted -
11379
+ # unavailable
11355
11380
  # Corresponds to the JSON property `retryConditions`
11356
11381
  # @return [Array<String>]
11357
11382
  attr_accessor :retry_conditions
@@ -11372,8 +11397,9 @@ module Google
11372
11397
  class HttpRouteAction
11373
11398
  include Google::Apis::Core::Hashable
11374
11399
 
11375
- # The specification for allowing client side cross-origin requests. Please see
11376
- # W3C Recommendation for Cross Origin Resource Sharing
11400
+ # The specification for allowing client-side cross-origin requests. For more
11401
+ # information about the W3C recommendation for cross-origin resource sharing (
11402
+ # CORS), see Fetch API Living Standard.
11377
11403
  # Corresponds to the JSON property `corsPolicy`
11378
11404
  # @return [Google::Apis::ComputeBeta::CorsPolicy]
11379
11405
  attr_accessor :cors_policy
@@ -11381,9 +11407,9 @@ module Google
11381
11407
  # The specification for fault injection introduced into traffic to test the
11382
11408
  # resiliency of clients to backend service failure. As part of fault injection,
11383
11409
  # when clients send requests to a backend service, delays can be introduced by
11384
- # Loadbalancer on a percentage of requests before sending those request to the
11385
- # backend service. Similarly requests from clients can be aborted by the
11386
- # Loadbalancer for a percentage of requests.
11410
+ # the load balancer on a percentage of requests before sending those request to
11411
+ # the backend service. Similarly requests from clients can be aborted by the
11412
+ # load balancer for a percentage of requests.
11387
11413
  # Corresponds to the JSON property `faultInjectionPolicy`
11388
11414
  # @return [Google::Apis::ComputeBeta::HttpFaultInjection]
11389
11415
  attr_accessor :fault_injection_policy
@@ -11397,9 +11423,9 @@ module Google
11397
11423
  attr_accessor :max_stream_duration
11398
11424
 
11399
11425
  # A policy that specifies how requests intended for the route's backends are
11400
- # shadowed to a separate mirrored backend service. Loadbalancer does not wait
11401
- # for responses from the shadow service. Prior to sending traffic to the shadow
11402
- # service, the host / authority header is suffixed with -shadow.
11426
+ # shadowed to a separate mirrored backend service. The load balancer doesn't
11427
+ # wait for responses from the shadow service. Before sending traffic to the
11428
+ # shadow service, the host or authority header is suffixed with -shadow.
11403
11429
  # Corresponds to the JSON property `requestMirrorPolicy`
11404
11430
  # @return [Google::Apis::ComputeBeta::RequestMirrorPolicy]
11405
11431
  attr_accessor :request_mirror_policy
@@ -11427,7 +11453,7 @@ module Google
11427
11453
  # occurs. The weights determine the fraction of traffic that flows to their
11428
11454
  # corresponding backend service. If all traffic needs to go to a single backend
11429
11455
  # service, there must be one weightedBackendService with weight set to a non-
11430
- # zero number. Once a backendService is identified and before forwarding the
11456
+ # zero number. After a backend service is identified and before forwarding the
11431
11457
  # request to the backend service, advanced routing actions such as URL rewrites
11432
11458
  # and header transformations are applied depending on additional settings
11433
11459
  # specified in this HttpRouteAction.
@@ -11452,8 +11478,8 @@ module Google
11452
11478
  end
11453
11479
  end
11454
11480
 
11455
- # An HttpRouteRule specifies how to match an HTTP request and the corresponding
11456
- # routing action that load balancing proxies will perform.
11481
+ # The HttpRouteRule setting specifies how to match an HTTP request and the
11482
+ # corresponding routing action that load balancing proxies perform.
11457
11483
  class HttpRouteRule
11458
11484
  include Google::Apis::Core::Hashable
11459
11485
 
@@ -11470,9 +11496,9 @@ module Google
11470
11496
  attr_accessor :header_action
11471
11497
 
11472
11498
  # Outbound route specific configuration for networkservices.HttpFilter resources
11473
- # enabled by Traffic Director. httpFilterConfigs only applies for Loadbalancers
11499
+ # enabled by Traffic Director. httpFilterConfigs only applies for load balancers
11474
11500
  # with loadBalancingScheme set to INTERNAL_SELF_MANAGED. See ForwardingRule for
11475
- # more details. Not supported when the URL map is bound to target gRPC proxy
11501
+ # more details. Not supported when the URL map is bound to a target gRPC proxy
11476
11502
  # that has validateForProxyless field set to true.
11477
11503
  # Corresponds to the JSON property `httpFilterConfigs`
11478
11504
  # @return [Array<Google::Apis::ComputeBeta::HttpFilterConfig>]
@@ -11480,10 +11506,10 @@ module Google
11480
11506
 
11481
11507
  # Outbound route specific metadata supplied to networkservices.HttpFilter
11482
11508
  # resources enabled by Traffic Director. httpFilterMetadata only applies for
11483
- # Loadbalancers with loadBalancingScheme set to INTERNAL_SELF_MANAGED. See
11509
+ # load balancers with loadBalancingScheme set to INTERNAL_SELF_MANAGED. See
11484
11510
  # ForwardingRule for more details. The only configTypeUrl supported is type.
11485
11511
  # googleapis.com/google.protobuf.Struct Not supported when the URL map is bound
11486
- # to target gRPC proxy that has validateForProxyless field set to true.
11512
+ # to a target gRPC proxy that has validateForProxyless field set to true.
11487
11513
  # Corresponds to the JSON property `httpFilterMetadata`
11488
11514
  # @return [Array<Google::Apis::ComputeBeta::HttpFilterConfig>]
11489
11515
  attr_accessor :http_filter_metadata
@@ -11498,11 +11524,11 @@ module Google
11498
11524
  attr_accessor :match_rules
11499
11525
 
11500
11526
  # For routeRules within a given pathMatcher, priority determines the order in
11501
- # which load balancer will interpret routeRules. RouteRules are evaluated in
11502
- # order of priority, from the lowest to highest number. The priority of a rule
11527
+ # which a load balancer interprets routeRules. RouteRules are evaluated in order
11528
+ # of priority, from the lowest to highest number. The priority of a rule
11503
11529
  # decreases as its number increases (1, 2, 3, N+1). The first rule that matches
11504
11530
  # the request is applied. You cannot configure two or more routeRules with the
11505
- # same priority. Priority for each rule must be set to a number between 0 and
11531
+ # same priority. Priority for each rule must be set to a number from 0 to
11506
11532
  # 2147483647 inclusive. Priority numbers can have gaps, which enable you to add
11507
11533
  # or remove rules in the future without affecting the rest of the rules. For
11508
11534
  # example, 1, 2, 3, 4, 5, 9, 12, 16 is a valid series of priority numbers to
@@ -11513,24 +11539,24 @@ module Google
11513
11539
  attr_accessor :priority
11514
11540
 
11515
11541
  # In response to a matching matchRule, the load balancer performs advanced
11516
- # routing actions like URL rewrites, header transformations, etc. prior to
11542
+ # routing actions, such as URL rewrites and header transformations, before
11517
11543
  # forwarding the request to the selected backend. If routeAction specifies any
11518
11544
  # weightedBackendServices, service must not be set. Conversely if service is set,
11519
11545
  # routeAction cannot contain any weightedBackendServices. Only one of
11520
11546
  # urlRedirect, service or routeAction.weightedBackendService must be set.
11521
11547
  # UrlMaps for external HTTP(S) load balancers support only the urlRewrite action
11522
- # within a routeRule's routeAction.
11548
+ # within a route rule's routeAction.
11523
11549
  # Corresponds to the JSON property `routeAction`
11524
11550
  # @return [Google::Apis::ComputeBeta::HttpRouteAction]
11525
11551
  attr_accessor :route_action
11526
11552
 
11527
11553
  # The full or partial URL of the backend service resource to which traffic is
11528
- # directed if this rule is matched. If routeAction is additionally specified,
11529
- # advanced routing actions like URL Rewrites, etc. take effect prior to sending
11530
- # the request to the backend. However, if service is specified, routeAction
11531
- # cannot contain any weightedBackendService s. Conversely, if routeAction
11532
- # specifies any weightedBackendServices, service must not be specified. Only one
11533
- # of urlRedirect, service or routeAction.weightedBackendService must be set.
11554
+ # directed if this rule is matched. If routeAction is also specified, advanced
11555
+ # routing actions, such as URL rewrites, take effect before sending the request
11556
+ # to the backend. However, if service is specified, routeAction cannot contain
11557
+ # any weightedBackendServices. Conversely, if routeAction specifies any
11558
+ # weightedBackendServices, service must not be specified. Only one of
11559
+ # urlRedirect, service or routeAction.weightedBackendService must be set.
11534
11560
  # Corresponds to the JSON property `service`
11535
11561
  # @return [String]
11536
11562
  attr_accessor :service
@@ -11565,9 +11591,9 @@ module Google
11565
11591
 
11566
11592
  # For satisfying the matchRule condition, the path of the request must exactly
11567
11593
  # match the value specified in fullPathMatch after removing any query parameters
11568
- # and anchor that may be part of the original URL. fullPathMatch must be between
11569
- # 1 and 1024 characters. Only one of prefixMatch, fullPathMatch or regexMatch
11570
- # must be specified.
11594
+ # and anchor that may be part of the original URL. fullPathMatch must be from 1
11595
+ # to 1024 characters. Only one of prefixMatch, fullPathMatch or regexMatch must
11596
+ # be specified.
11571
11597
  # Corresponds to the JSON property `fullPathMatch`
11572
11598
  # @return [String]
11573
11599
  attr_accessor :full_path_match
@@ -11580,53 +11606,52 @@ module Google
11580
11606
 
11581
11607
  # Specifies that prefixMatch and fullPathMatch matches are case sensitive. The
11582
11608
  # default value is false. ignoreCase must not be used with regexMatch. Not
11583
- # supported when the URL map is bound to target gRPC proxy.
11609
+ # supported when the URL map is bound to a target gRPC proxy.
11584
11610
  # Corresponds to the JSON property `ignoreCase`
11585
11611
  # @return [Boolean]
11586
11612
  attr_accessor :ignore_case
11587
11613
  alias_method :ignore_case?, :ignore_case
11588
11614
 
11589
- # Opaque filter criteria used by Loadbalancer to restrict routing configuration
11590
- # to a limited set of xDS compliant clients. In their xDS requests to
11591
- # Loadbalancer, xDS clients present node metadata. When there is a match, the
11592
- # relevant routing configuration is made available to those proxies. For each
11593
- # metadataFilter in this list, if its filterMatchCriteria is set to MATCH_ANY,
11594
- # at least one of the filterLabels must match the corresponding label provided
11595
- # in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then all of
11596
- # its filterLabels must match with corresponding labels provided in the metadata.
11597
- # If multiple metadataFilters are specified, all of them need to be satisfied
11598
- # in order to be considered a match. metadataFilters specified here will be
11615
+ # Opaque filter criteria used by the load balancer to restrict routing
11616
+ # configuration to a limited set of xDS compliant clients. In their xDS requests
11617
+ # to the load balancer, xDS clients present node metadata. When there is a match,
11618
+ # the relevant routing configuration is made available to those proxies. For
11619
+ # each metadataFilter in this list, if its filterMatchCriteria is set to
11620
+ # MATCH_ANY, at least one of the filterLabels must match the corresponding label
11621
+ # provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then
11622
+ # all of its filterLabels must match with corresponding labels provided in the
11623
+ # metadata. If multiple metadata filters are specified, all of them need to be
11624
+ # satisfied in order to be considered a match. metadataFilters specified here is
11599
11625
  # applied after those specified in ForwardingRule that refers to the UrlMap this
11600
- # HttpRouteRuleMatch belongs to. metadataFilters only applies to Loadbalancers
11601
- # that have their loadBalancingScheme set to INTERNAL_SELF_MANAGED. Not
11602
- # supported when the URL map is bound to target gRPC proxy that has
11603
- # validateForProxyless field set to true.
11626
+ # HttpRouteRuleMatch belongs to. metadataFilters only applies to load balancers
11627
+ # that have loadBalancingScheme set to INTERNAL_SELF_MANAGED. Not supported when
11628
+ # the URL map is bound to a target gRPC proxy that has validateForProxyless
11629
+ # field set to true.
11604
11630
  # Corresponds to the JSON property `metadataFilters`
11605
11631
  # @return [Array<Google::Apis::ComputeBeta::MetadataFilter>]
11606
11632
  attr_accessor :metadata_filters
11607
11633
 
11608
11634
  # For satisfying the matchRule condition, the request's path must begin with the
11609
- # specified prefixMatch. prefixMatch must begin with a /. The value must be
11610
- # between 1 and 1024 characters. Only one of prefixMatch, fullPathMatch or
11611
- # regexMatch must be specified.
11635
+ # specified prefixMatch. prefixMatch must begin with a /. The value must be from
11636
+ # 1 to 1024 characters. Only one of prefixMatch, fullPathMatch or regexMatch
11637
+ # must be specified.
11612
11638
  # Corresponds to the JSON property `prefixMatch`
11613
11639
  # @return [String]
11614
11640
  attr_accessor :prefix_match
11615
11641
 
11616
11642
  # Specifies a list of query parameter match criteria, all of which must match
11617
11643
  # corresponding query parameters in the request. Not supported when the URL map
11618
- # is bound to target gRPC proxy.
11644
+ # is bound to a target gRPC proxy.
11619
11645
  # Corresponds to the JSON property `queryParameterMatches`
11620
11646
  # @return [Array<Google::Apis::ComputeBeta::HttpQueryParameterMatch>]
11621
11647
  attr_accessor :query_parameter_matches
11622
11648
 
11623
11649
  # For satisfying the matchRule condition, the path of the request must satisfy
11624
11650
  # the regular expression specified in regexMatch after removing any query
11625
- # parameters and anchor supplied with the original URL. For regular expression
11626
- # grammar please see github.com/google/re2/wiki/Syntax Only one of prefixMatch,
11627
- # fullPathMatch or regexMatch must be specified. Note that regexMatch only
11628
- # applies to Loadbalancers that have their loadBalancingScheme set to
11629
- # INTERNAL_SELF_MANAGED.
11651
+ # parameters and anchor supplied with the original URL. For more information
11652
+ # about regular expression syntax, see Syntax. Only one of prefixMatch,
11653
+ # fullPathMatch or regexMatch must be specified. regexMatch only applies to load
11654
+ # balancers that have loadBalancingScheme set to INTERNAL_SELF_MANAGED.
11630
11655
  # Corresponds to the JSON property `regexMatch`
11631
11656
  # @return [String]
11632
11657
  attr_accessor :regex_match
@@ -11914,8 +11939,8 @@ module Google
11914
11939
  attr_accessor :family
11915
11940
 
11916
11941
  # A list of features to enable on the guest operating system. Applicable only
11917
- # for bootable images. Read Enabling guest operating system features to see a
11918
- # list of available options.
11942
+ # for bootable images. To see a list of available options, see the
11943
+ # guestOSfeatures[].type parameter.
11919
11944
  # Corresponds to the JSON property `guestOsFeatures`
11920
11945
  # @return [Array<Google::Apis::ComputeBeta::GuestOsFeature>]
11921
11946
  attr_accessor :guest_os_features
@@ -18139,6 +18164,11 @@ module Google
18139
18164
  # @return [Hash<String,Google::Apis::ComputeBeta::LocationPolicyLocation>]
18140
18165
  attr_accessor :locations
18141
18166
 
18167
+ # Strategy for distributing VMs across zones in a region.
18168
+ # Corresponds to the JSON property `targetShape`
18169
+ # @return [String]
18170
+ attr_accessor :target_shape
18171
+
18142
18172
  def initialize(**args)
18143
18173
  update!(**args)
18144
18174
  end
@@ -18146,6 +18176,7 @@ module Google
18146
18176
  # Update properties of this object
18147
18177
  def update!(**args)
18148
18178
  @locations = args[:locations] if args.key?(:locations)
18179
+ @target_shape = args[:target_shape] if args.key?(:target_shape)
18149
18180
  end
18150
18181
  end
18151
18182
 
@@ -19297,18 +19328,18 @@ module Google
19297
19328
  end
19298
19329
  end
19299
19330
 
19300
- # Opaque filter criteria used by loadbalancers to restrict routing configuration
19301
- # to a limited set of loadbalancing proxies. Proxies and sidecars involved in
19302
- # loadbalancing would typically present metadata to the loadbalancers which need
19303
- # to match criteria specified here. If a match takes place, the relevant
19304
- # configuration is made available to those proxies. For each metadataFilter in
19305
- # this list, if its filterMatchCriteria is set to MATCH_ANY, at least one of the
19306
- # filterLabels must match the corresponding label provided in the metadata. If
19307
- # its filterMatchCriteria is set to MATCH_ALL, then all of its filterLabels must
19308
- # match with corresponding labels provided in the metadata. An example for using
19309
- # metadataFilters would be: if loadbalancing involves Envoys, they will only
19310
- # receive routing configuration when values in metadataFilters match values
19311
- # supplied in of their XDS requests to loadbalancers.
19331
+ # Opaque filter criteria used by load balancers to restrict routing
19332
+ # configuration to a limited set of load balancing proxies. Proxies and sidecars
19333
+ # involved in load balancing would typically present metadata to the load
19334
+ # balancers that need to match criteria specified here. If a match takes place,
19335
+ # the relevant configuration is made available to those proxies. For each
19336
+ # metadataFilter in this list, if its filterMatchCriteria is set to MATCH_ANY,
19337
+ # at least one of the filterLabels must match the corresponding label provided
19338
+ # in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then all of
19339
+ # its filterLabels must match with corresponding labels provided in the metadata.
19340
+ # An example for using metadataFilters would be: if load balancing involves
19341
+ # Envoys, they receive routing configuration when values in metadataFilters
19342
+ # match values supplied in of their XDS requests to loadbalancers.
19312
19343
  class MetadataFilter
19313
19344
  include Google::Apis::Core::Hashable
19314
19345
 
@@ -19319,11 +19350,11 @@ module Google
19319
19350
  # @return [Array<Google::Apis::ComputeBeta::MetadataFilterLabelMatch>]
19320
19351
  attr_accessor :filter_labels
19321
19352
 
19322
- # Specifies how individual filterLabel matches within the list of filterLabels
19323
- # contribute towards the overall metadataFilter match. Supported values are: -
19324
- # MATCH_ANY: At least one of the filterLabels must have a matching label in the
19325
- # provided metadata. - MATCH_ALL: All filterLabels must have matching labels in
19326
- # the provided metadata.
19353
+ # Specifies how individual filter label matches within the list of filterLabels
19354
+ # and contributes toward the overall metadataFilter match. Supported values are:
19355
+ # - MATCH_ANY: at least one of the filterLabels must have a matching label in
19356
+ # the provided metadata. - MATCH_ALL: all filterLabels must have matching labels
19357
+ # in the provided metadata.
19327
19358
  # Corresponds to the JSON property `filterMatchCriteria`
19328
19359
  # @return [String]
19329
19360
  attr_accessor :filter_match_criteria
@@ -19340,7 +19371,7 @@ module Google
19340
19371
  end
19341
19372
 
19342
19373
  # MetadataFilter label name value pairs that are expected to match corresponding
19343
- # labels presented as metadata to the loadbalancer.
19374
+ # labels presented as metadata to the load balancer.
19344
19375
  class MetadataFilterLabelMatch
19345
19376
  include Google::Apis::Core::Hashable
19346
19377
 
@@ -20551,14 +20582,15 @@ module Google
20551
20582
  # @return [String]
20552
20583
  attr_accessor :name
20553
20584
 
20554
- # URL of the network resource for this instance. When creating an instance, if
20555
- # neither the network nor the subnetwork is specified, the default network
20556
- # global/networks/default is used; if the network is not specified but the
20557
- # subnetwork is specified, the network is inferred. If you specify this property,
20558
- # you can specify the network as a full or partial URL. For example, the
20559
- # following are all valid URLs: - https://www.googleapis.com/compute/v1/projects/
20560
- # project/global/networks/ network - projects/project/global/networks/network -
20561
- # global/networks/default
20585
+ # URL of the VPC network resource for this instance. When creating an instance,
20586
+ # if neither the network nor the subnetwork is specified, the default network
20587
+ # global/networks/default is used. If the selected project doesn't have the
20588
+ # default network, you must specify a network or subnet. If the network is not
20589
+ # specified but the subnetwork is specified, the network is inferred. If you
20590
+ # specify this property, you can specify the network as a full or partial URL.
20591
+ # For example, the following are all valid URLs: - https://www.googleapis.com/
20592
+ # compute/v1/projects/project/global/networks/ network - projects/project/global/
20593
+ # networks/network - global/networks/default
20562
20594
  # Corresponds to the JSON property `network`
20563
20595
  # @return [String]
20564
20596
  attr_accessor :network
@@ -20767,7 +20799,8 @@ module Google
20767
20799
  attr_accessor :exchange_subnet_routes
20768
20800
  alias_method :exchange_subnet_routes?, :exchange_subnet_routes
20769
20801
 
20770
- # Whether to export the custom routes to peer network.
20802
+ # Whether to export the custom routes to peer network. The default value is
20803
+ # false.
20771
20804
  # Corresponds to the JSON property `exportCustomRoutes`
20772
20805
  # @return [Boolean]
20773
20806
  attr_accessor :export_custom_routes
@@ -20781,7 +20814,8 @@ module Google
20781
20814
  attr_accessor :export_subnet_routes_with_public_ip
20782
20815
  alias_method :export_subnet_routes_with_public_ip?, :export_subnet_routes_with_public_ip
20783
20816
 
20784
- # Whether to import the custom routes from peer network.
20817
+ # Whether to import the custom routes from peer network. The default value is
20818
+ # false.
20785
20819
  # Corresponds to the JSON property `importCustomRoutes`
20786
20820
  # @return [Boolean]
20787
20821
  attr_accessor :import_custom_routes
@@ -24467,37 +24501,37 @@ module Google
24467
24501
 
24468
24502
  # A matcher for the path portion of the URL. The BackendService from the longest-
24469
24503
  # matched rule will serve the URL. If no rule was matched, the default service
24470
- # will be used.
24504
+ # is used.
24471
24505
  class PathMatcher
24472
24506
  include Google::Apis::Core::Hashable
24473
24507
 
24474
24508
  # defaultRouteAction takes effect when none of the pathRules or routeRules match.
24475
- # The load balancer performs advanced routing actions like URL rewrites, header
24476
- # transformations, etc. prior to forwarding the request to the selected backend.
24509
+ # The load balancer performs advanced routing actions, such as URL rewrites and
24510
+ # header transformations, before forwarding the request to the selected backend.
24477
24511
  # If defaultRouteAction specifies any weightedBackendServices, defaultService
24478
24512
  # must not be set. Conversely if defaultService is set, defaultRouteAction
24479
24513
  # cannot contain any weightedBackendServices. Only one of defaultRouteAction or
24480
24514
  # defaultUrlRedirect must be set. UrlMaps for external HTTP(S) load balancers
24481
- # support only the urlRewrite action within a pathMatcher's defaultRouteAction.
24515
+ # support only the urlRewrite action within a path matcher's defaultRouteAction.
24482
24516
  # Corresponds to the JSON property `defaultRouteAction`
24483
24517
  # @return [Google::Apis::ComputeBeta::HttpRouteAction]
24484
24518
  attr_accessor :default_route_action
24485
24519
 
24486
- # The full or partial URL to the BackendService resource. This will be used if
24520
+ # The full or partial URL to the BackendService resource. This URL is used if
24487
24521
  # none of the pathRules or routeRules defined by this PathMatcher are matched.
24488
24522
  # For example, the following are all valid URLs to a BackendService resource: -
24489
24523
  # https://www.googleapis.com/compute/v1/projects/project /global/backendServices/
24490
24524
  # backendService - compute/v1/projects/project/global/backendServices/
24491
24525
  # backendService - global/backendServices/backendService If defaultRouteAction
24492
- # is additionally specified, advanced routing actions like URL Rewrites, etc.
24493
- # take effect prior to sending the request to the backend. However, if
24494
- # defaultService is specified, defaultRouteAction cannot contain any
24495
- # weightedBackendServices. Conversely, if defaultRouteAction specifies any
24496
- # weightedBackendServices, defaultService must not be specified. Only one of
24497
- # defaultService, defaultUrlRedirect or defaultRouteAction.
24498
- # weightedBackendService must be set. Authorization requires one or more of the
24499
- # following Google IAM permissions on the specified resource default_service: -
24500
- # compute.backendBuckets.use - compute.backendServices.use
24526
+ # is also specified, advanced routing actions, such as URL rewrites, take effect
24527
+ # before sending the request to the backend. However, if defaultService is
24528
+ # specified, defaultRouteAction cannot contain any weightedBackendServices.
24529
+ # Conversely, if defaultRouteAction specifies any weightedBackendServices,
24530
+ # defaultService must not be specified. Only one of defaultService,
24531
+ # defaultUrlRedirect , or defaultRouteAction.weightedBackendService must be set.
24532
+ # Authorization requires one or more of the following Google IAM permissions on
24533
+ # the specified resource default_service: - compute.backendBuckets.use - compute.
24534
+ # backendServices.use
24501
24535
  # Corresponds to the JSON property `defaultService`
24502
24536
  # @return [String]
24503
24537
  attr_accessor :default_service
@@ -24573,23 +24607,23 @@ module Google
24573
24607
  attr_accessor :paths
24574
24608
 
24575
24609
  # In response to a matching path, the load balancer performs advanced routing
24576
- # actions like URL rewrites, header transformations, etc. prior to forwarding
24610
+ # actions, such as URL rewrites and header transformations, before forwarding
24577
24611
  # the request to the selected backend. If routeAction specifies any
24578
24612
  # weightedBackendServices, service must not be set. Conversely if service is set,
24579
24613
  # routeAction cannot contain any weightedBackendServices. Only one of
24580
- # routeAction or urlRedirect must be set. UrlMaps for external HTTP(S) load
24581
- # balancers support only the urlRewrite action within a pathRule's routeAction.
24614
+ # routeAction or urlRedirect must be set. URL maps for external HTTP(S) load
24615
+ # balancers support only the urlRewrite action within a path rule's routeAction.
24582
24616
  # Corresponds to the JSON property `routeAction`
24583
24617
  # @return [Google::Apis::ComputeBeta::HttpRouteAction]
24584
24618
  attr_accessor :route_action
24585
24619
 
24586
24620
  # The full or partial URL of the backend service resource to which traffic is
24587
- # directed if this rule is matched. If routeAction is additionally specified,
24588
- # advanced routing actions like URL Rewrites, etc. take effect prior to sending
24589
- # the request to the backend. However, if service is specified, routeAction
24590
- # cannot contain any weightedBackendService s. Conversely, if routeAction
24591
- # specifies any weightedBackendServices, service must not be specified. Only one
24592
- # of urlRedirect, service or routeAction.weightedBackendService must be set.
24621
+ # directed if this rule is matched. If routeAction is also specified, advanced
24622
+ # routing actions, such as URL rewrites, take effect before sending the request
24623
+ # to the backend. However, if service is specified, routeAction cannot contain
24624
+ # any weightedBackendServices. Conversely, if routeAction specifies any
24625
+ # weightedBackendServices, service must not be specified. Only one of
24626
+ # urlRedirect, service or routeAction.weightedBackendService must be set.
24593
24627
  # Corresponds to the JSON property `service`
24594
24628
  # @return [String]
24595
24629
  attr_accessor :service
@@ -24661,31 +24695,31 @@ module Google
24661
24695
 
24662
24696
  # An Identity and Access Management (IAM) policy, which specifies access
24663
24697
  # controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
24664
- # A `binding` binds one or more `members` to a single `role`. Members can be
24665
- # user accounts, service accounts, Google groups, and domains (such as G Suite).
24666
- # A `role` is a named list of permissions; each `role` can be an IAM predefined
24667
- # role or a user-created custom role. For some types of Google Cloud resources,
24668
- # a `binding` can also specify a `condition`, which is a logical expression that
24669
- # allows access to a resource only if the expression evaluates to `true`. A
24670
- # condition can add constraints based on attributes of the request, the resource,
24671
- # or both. To learn which resources support conditions in their IAM policies,
24672
- # see the [IAM documentation](https://cloud.google.com/iam/help/conditions/
24673
- # resource-policies). **JSON example:** ` "bindings": [ ` "role": "roles/
24674
- # resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "
24675
- # group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@
24676
- # appspot.gserviceaccount.com" ] `, ` "role": "roles/resourcemanager.
24677
- # organizationViewer", "members": [ "user:eve@example.com" ], "condition": ` "
24678
- # title": "expirable access", "description": "Does not grant access after Sep
24679
- # 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", `
24680
- # ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:** bindings: -
24681
- # members: - user:mike@example.com - group:admins@example.com - domain:google.
24682
- # com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/
24683
- # resourcemanager.organizationAdmin - members: - user:eve@example.com role:
24684
- # roles/resourcemanager.organizationViewer condition: title: expirable access
24685
- # description: Does not grant access after Sep 2020 expression: request.time <
24686
- # timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For a
24687
- # description of IAM and its features, see the [IAM documentation](https://cloud.
24688
- # google.com/iam/docs/).
24698
+ # A `binding` binds one or more `members`, or principals, to a single `role`.
24699
+ # Principals can be user accounts, service accounts, Google groups, and domains (
24700
+ # such as G Suite). A `role` is a named list of permissions; each `role` can be
24701
+ # an IAM predefined role or a user-created custom role. For some types of Google
24702
+ # Cloud resources, a `binding` can also specify a `condition`, which is a
24703
+ # logical expression that allows access to a resource only if the expression
24704
+ # evaluates to `true`. A condition can add constraints based on attributes of
24705
+ # the request, the resource, or both. To learn which resources support
24706
+ # conditions in their IAM policies, see the [IAM documentation](https://cloud.
24707
+ # google.com/iam/help/conditions/resource-policies). **JSON example:** ` "
24708
+ # bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
24709
+ # "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
24710
+ # serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
24711
+ # roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
24712
+ # ], "condition": ` "title": "expirable access", "description": "Does not grant
24713
+ # access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
24714
+ # 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
24715
+ # bindings: - members: - user:mike@example.com - group:admins@example.com -
24716
+ # domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
24717
+ # role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
24718
+ # com role: roles/resourcemanager.organizationViewer condition: title: expirable
24719
+ # access description: Does not grant access after Sep 2020 expression: request.
24720
+ # time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
24721
+ # a description of IAM and its features, see the [IAM documentation](https://
24722
+ # cloud.google.com/iam/docs/).
24689
24723
  class Policy
24690
24724
  include Google::Apis::Core::Hashable
24691
24725
 
@@ -24694,9 +24728,14 @@ module Google
24694
24728
  # @return [Array<Google::Apis::ComputeBeta::AuditConfig>]
24695
24729
  attr_accessor :audit_configs
24696
24730
 
24697
- # Associates a list of `members` to a `role`. Optionally, may specify a `
24698
- # condition` that determines how and when the `bindings` are applied. Each of
24699
- # the `bindings` must contain at least one member.
24731
+ # Associates a list of `members`, or principals, with a `role`. Optionally, may
24732
+ # specify a `condition` that determines how and when the `bindings` are applied.
24733
+ # Each of the `bindings` must contain at least one principal. The `bindings` in
24734
+ # a `Policy` can refer to up to 1,500 principals; up to 250 of these principals
24735
+ # can be Google groups. Each occurrence of a principal counts towards these
24736
+ # limits. For example, if the `bindings` grant 50 different roles to `user:alice@
24737
+ # example.com`, and not to any other principal, then you can add another 1,450
24738
+ # principals to the `bindings` in the `Policy`.
24700
24739
  # Corresponds to the JSON property `bindings`
24701
24740
  # @return [Array<Google::Apis::ComputeBeta::Binding>]
24702
24741
  attr_accessor :bindings
@@ -24717,12 +24756,6 @@ module Google
24717
24756
  # @return [String]
24718
24757
  attr_accessor :etag
24719
24758
 
24720
- # This is deprecated and has no effect. Do not use.
24721
- # Corresponds to the JSON property `iamOwned`
24722
- # @return [Boolean]
24723
- attr_accessor :iam_owned
24724
- alias_method :iam_owned?, :iam_owned
24725
-
24726
24759
  # This is deprecated and has no effect. Do not use.
24727
24760
  # Corresponds to the JSON property `rules`
24728
24761
  # @return [Array<Google::Apis::ComputeBeta::Rule>]
@@ -24756,7 +24789,6 @@ module Google
24756
24789
  @audit_configs = args[:audit_configs] if args.key?(:audit_configs)
24757
24790
  @bindings = args[:bindings] if args.key?(:bindings)
24758
24791
  @etag = args[:etag] if args.key?(:etag)
24759
- @iam_owned = args[:iam_owned] if args.key?(:iam_owned)
24760
24792
  @rules = args[:rules] if args.key?(:rules)
24761
24793
  @version = args[:version] if args.key?(:version)
24762
24794
  end
@@ -25137,7 +25169,13 @@ module Google
25137
25169
  # @return [String]
25138
25170
  attr_accessor :shared_secret
25139
25171
 
25140
- # The status of the public advertised prefix.
25172
+ # The status of the public advertised prefix. Possible values include: - `
25173
+ # INITIAL`: RPKI validation is complete. - `PTR_CONFIGURED`: User has configured
25174
+ # the PTR. - `VALIDATED`: Reverse DNS lookup is successful. - `
25175
+ # REVERSE_DNS_LOOKUP_FAILED`: Reverse DNS lookup failed. - `
25176
+ # PREFIX_CONFIGURATION_IN_PROGRESS`: The prefix is being configured. - `
25177
+ # PREFIX_CONFIGURATION_COMPLETE`: The prefix is fully configured. - `
25178
+ # PREFIX_REMOVAL_IN_PROGRESS`: The prefix is being removed.
25141
25179
  # Corresponds to the JSON property `status`
25142
25180
  # @return [String]
25143
25181
  attr_accessor :status
@@ -25416,7 +25454,12 @@ module Google
25416
25454
  # @return [String]
25417
25455
  attr_accessor :self_link
25418
25456
 
25419
- # [Output Only] The status of the public delegated prefix.
25457
+ # [Output Only] The status of the public delegated prefix, which can be one of
25458
+ # following values: - `INITIALIZING` The public delegated prefix is being
25459
+ # initialized and addresses cannot be created yet. - `READY_TO_ANNOUNCE` The
25460
+ # public delegated prefix is a live migration prefix and is active. - `ANNOUNCED`
25461
+ # The public delegated prefix is active. - `DELETING` The public delegated
25462
+ # prefix is being deprovsioned.
25420
25463
  # Corresponds to the JSON property `status`
25421
25464
  # @return [String]
25422
25465
  attr_accessor :status
@@ -27355,31 +27398,31 @@ module Google
27355
27398
 
27356
27399
  # An Identity and Access Management (IAM) policy, which specifies access
27357
27400
  # controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
27358
- # A `binding` binds one or more `members` to a single `role`. Members can be
27359
- # user accounts, service accounts, Google groups, and domains (such as G Suite).
27360
- # A `role` is a named list of permissions; each `role` can be an IAM predefined
27361
- # role or a user-created custom role. For some types of Google Cloud resources,
27362
- # a `binding` can also specify a `condition`, which is a logical expression that
27363
- # allows access to a resource only if the expression evaluates to `true`. A
27364
- # condition can add constraints based on attributes of the request, the resource,
27365
- # or both. To learn which resources support conditions in their IAM policies,
27366
- # see the [IAM documentation](https://cloud.google.com/iam/help/conditions/
27367
- # resource-policies). **JSON example:** ` "bindings": [ ` "role": "roles/
27368
- # resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "
27369
- # group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@
27370
- # appspot.gserviceaccount.com" ] `, ` "role": "roles/resourcemanager.
27371
- # organizationViewer", "members": [ "user:eve@example.com" ], "condition": ` "
27372
- # title": "expirable access", "description": "Does not grant access after Sep
27373
- # 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", `
27374
- # ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:** bindings: -
27375
- # members: - user:mike@example.com - group:admins@example.com - domain:google.
27376
- # com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/
27377
- # resourcemanager.organizationAdmin - members: - user:eve@example.com role:
27378
- # roles/resourcemanager.organizationViewer condition: title: expirable access
27379
- # description: Does not grant access after Sep 2020 expression: request.time <
27380
- # timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For a
27381
- # description of IAM and its features, see the [IAM documentation](https://cloud.
27382
- # google.com/iam/docs/).
27401
+ # A `binding` binds one or more `members`, or principals, to a single `role`.
27402
+ # Principals can be user accounts, service accounts, Google groups, and domains (
27403
+ # such as G Suite). A `role` is a named list of permissions; each `role` can be
27404
+ # an IAM predefined role or a user-created custom role. For some types of Google
27405
+ # Cloud resources, a `binding` can also specify a `condition`, which is a
27406
+ # logical expression that allows access to a resource only if the expression
27407
+ # evaluates to `true`. A condition can add constraints based on attributes of
27408
+ # the request, the resource, or both. To learn which resources support
27409
+ # conditions in their IAM policies, see the [IAM documentation](https://cloud.
27410
+ # google.com/iam/help/conditions/resource-policies). **JSON example:** ` "
27411
+ # bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
27412
+ # "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
27413
+ # serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
27414
+ # roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
27415
+ # ], "condition": ` "title": "expirable access", "description": "Does not grant
27416
+ # access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
27417
+ # 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
27418
+ # bindings: - members: - user:mike@example.com - group:admins@example.com -
27419
+ # domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
27420
+ # role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
27421
+ # com role: roles/resourcemanager.organizationViewer condition: title: expirable
27422
+ # access description: Does not grant access after Sep 2020 expression: request.
27423
+ # time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
27424
+ # a description of IAM and its features, see the [IAM documentation](https://
27425
+ # cloud.google.com/iam/docs/).
27383
27426
  # Corresponds to the JSON property `policy`
27384
27427
  # @return [Google::Apis::ComputeBeta::Policy]
27385
27428
  attr_accessor :policy
@@ -27420,21 +27463,21 @@ module Google
27420
27463
  class RegionUrlMapsValidateRequest
27421
27464
  include Google::Apis::Core::Hashable
27422
27465
 
27423
- # Represents a URL Map resource. Google Compute Engine has two URL Map resources:
27424
- # * [Global](/compute/docs/reference/rest/beta/urlMaps) * [Regional](/compute/
27425
- # docs/reference/rest/beta/regionUrlMaps) A URL map resource is a component of
27426
- # certain types of GCP load balancers and Traffic Director. * urlMaps are used
27466
+ # Represents a URL Map resource. Compute Engine has two URL Map resources: * [
27467
+ # Global](/compute/docs/reference/rest/beta/urlMaps) * [Regional](/compute/docs/
27468
+ # reference/rest/beta/regionUrlMaps) A URL map resource is a component of
27469
+ # certain types of cloud load balancers and Traffic Director: * urlMaps are used
27427
27470
  # by external HTTP(S) load balancers and Traffic Director. * regionUrlMaps are
27428
27471
  # used by internal HTTP(S) load balancers. For a list of supported URL map
27429
- # features by load balancer type, see the Load balancing features: Routing and
27430
- # traffic management table. For a list of supported URL map features for Traffic
27431
- # Director, see the Traffic Director features: Routing and traffic management
27432
- # table. This resource defines mappings from host names and URL paths to either
27433
- # a backend service or a backend bucket. To use the global urlMaps resource, the
27434
- # backend service must have a loadBalancingScheme of either EXTERNAL or
27435
- # INTERNAL_SELF_MANAGED. To use the regionUrlMaps resource, the backend service
27436
- # must have a loadBalancingScheme of INTERNAL_MANAGED. For more information,
27437
- # read URL Map Concepts.
27472
+ # features by the load balancer type, see the Load balancing features: Routing
27473
+ # and traffic management table. For a list of supported URL map features for
27474
+ # Traffic Director, see the Traffic Director features: Routing and traffic
27475
+ # management table. This resource defines mappings from hostnames and URL paths
27476
+ # to either a backend service or a backend bucket. To use the global urlMaps
27477
+ # resource, the backend service must have a loadBalancingScheme of either
27478
+ # EXTERNAL or INTERNAL_SELF_MANAGED. To use the regionUrlMaps resource, the
27479
+ # backend service must have a loadBalancingScheme of INTERNAL_MANAGED. For more
27480
+ # information, read URL Map Concepts.
27438
27481
  # Corresponds to the JSON property `resource`
27439
27482
  # @return [Google::Apis::ComputeBeta::UrlMap]
27440
27483
  attr_accessor :resource
@@ -27450,9 +27493,9 @@ module Google
27450
27493
  end
27451
27494
 
27452
27495
  # A policy that specifies how requests intended for the route's backends are
27453
- # shadowed to a separate mirrored backend service. Loadbalancer does not wait
27454
- # for responses from the shadow service. Prior to sending traffic to the shadow
27455
- # service, the host / authority header is suffixed with -shadow.
27496
+ # shadowed to a separate mirrored backend service. The load balancer doesn't
27497
+ # wait for responses from the shadow service. Before sending traffic to the
27498
+ # shadow service, the host or authority header is suffixed with -shadow.
27456
27499
  class RequestMirrorPolicy
27457
27500
  include Google::Apis::Core::Hashable
27458
27501
 
@@ -30188,7 +30231,8 @@ module Google
30188
30231
  # "inIpRange(destination.ip, '1.1.0.0/16') || inIpRange(destination.ip, '2.2.0.
30189
30232
  # 0/16')" "destination.ip == '1.1.0.1' || destination.ip == '8.8.8.8'" The
30190
30233
  # following example is a valid match expression for private NAT: "nexthop.hub ==
30191
- # '/projects/my-project/global/hub/hub-1'"
30234
+ # 'https://networkconnectivity.googleapis.com/v1alpha1/projects/my-project/
30235
+ # global/hub/hub-1'"
30192
30236
  # Corresponds to the JSON property `match`
30193
30237
  # @return [String]
30194
30238
  attr_accessor :match
@@ -32626,9 +32670,8 @@ module Google
32626
32670
  class ShareSettings
32627
32671
  include Google::Apis::Core::Hashable
32628
32672
 
32629
- # A map of project id and project config. Using map format to ease add-to/remove-
32630
- # from the Project list in PATCH command. In future we will deprecate (And later
32631
- # remove) the array one.
32673
+ # A map of project id and project config. This is only valid when share_type's
32674
+ # value is SPECIFIC_PROJECTS.
32632
32675
  # Corresponds to the JSON property `projectMap`
32633
32676
  # @return [Hash<String,Google::Apis::ComputeBeta::ShareSettingsProjectConfig>]
32634
32677
  attr_accessor :project_map
@@ -34383,8 +34426,9 @@ module Google
34383
34426
 
34384
34427
  # Whether to enable flow logging for this subnetwork. If this field is not
34385
34428
  # explicitly set, it will not appear in get listings. If not set the default
34386
- # behavior is to disable flow logging. This field isn't supported with the
34387
- # purpose field set to INTERNAL_HTTPS_LOAD_BALANCER.
34429
+ # behavior is determined by the org policy, if there is no org policy specified,
34430
+ # then it will default to disabled. This field isn't supported with the purpose
34431
+ # field set to INTERNAL_HTTPS_LOAD_BALANCER.
34388
34432
  # Corresponds to the JSON property `enableFlowLogs`
34389
34433
  # @return [Boolean]
34390
34434
  attr_accessor :enable_flow_logs
@@ -34832,7 +34876,8 @@ module Google
34832
34876
 
34833
34877
  # Whether to enable flow logging for this subnetwork. If this field is not
34834
34878
  # explicitly set, it will not appear in get listings. If not set the default
34835
- # behavior is to disable flow logging.
34879
+ # behavior is determined by the org policy, if there is no org policy specified,
34880
+ # then it will default to disabled.
34836
34881
  # Corresponds to the JSON property `enable`
34837
34882
  # @return [Boolean]
34838
34883
  attr_accessor :enable
@@ -34847,8 +34892,8 @@ module Google
34847
34892
  # Can only be specified if VPC flow logging for this subnetwork is enabled. The
34848
34893
  # value of the field must be in [0, 1]. Set the sampling rate of VPC flow logs
34849
34894
  # within the subnetwork where 1.0 means all collected logs are reported and 0.0
34850
- # means no logs are reported. Default is 0.5, which means half of all collected
34851
- # logs are reported.
34895
+ # means no logs are reported. Default is 0.5 unless otherwise specified by the
34896
+ # org policy, which means half of all collected logs are reported.
34852
34897
  # Corresponds to the JSON property `flowSampling`
34853
34898
  # @return [Float]
34854
34899
  attr_accessor :flow_sampling
@@ -38434,7 +38479,7 @@ module Google
38434
38479
  class TestFailure
38435
38480
  include Google::Apis::Core::Hashable
38436
38481
 
38437
- # The actual output URL evaluated by load balancer containing the scheme, host,
38482
+ # The actual output URL evaluated by a load balancer containing the scheme, host,
38438
38483
  # path and query parameters.
38439
38484
  # Corresponds to the JSON property `actualOutputUrl`
38440
38485
  # @return [String]
@@ -38451,8 +38496,8 @@ module Google
38451
38496
  # @return [String]
38452
38497
  attr_accessor :actual_service
38453
38498
 
38454
- # The expected output URL evaluated by load balancer containing the scheme, host,
38455
- # path and query parameters.
38499
+ # The expected output URL evaluated by a load balancer containing the scheme,
38500
+ # host, path and query parameters.
38456
38501
  # Corresponds to the JSON property `expectedOutputUrl`
38457
38502
  # @return [String]
38458
38503
  attr_accessor :expected_output_url
@@ -38566,21 +38611,21 @@ module Google
38566
38611
  end
38567
38612
  end
38568
38613
 
38569
- # Represents a URL Map resource. Google Compute Engine has two URL Map resources:
38570
- # * [Global](/compute/docs/reference/rest/beta/urlMaps) * [Regional](/compute/
38571
- # docs/reference/rest/beta/regionUrlMaps) A URL map resource is a component of
38572
- # certain types of GCP load balancers and Traffic Director. * urlMaps are used
38614
+ # Represents a URL Map resource. Compute Engine has two URL Map resources: * [
38615
+ # Global](/compute/docs/reference/rest/beta/urlMaps) * [Regional](/compute/docs/
38616
+ # reference/rest/beta/regionUrlMaps) A URL map resource is a component of
38617
+ # certain types of cloud load balancers and Traffic Director: * urlMaps are used
38573
38618
  # by external HTTP(S) load balancers and Traffic Director. * regionUrlMaps are
38574
38619
  # used by internal HTTP(S) load balancers. For a list of supported URL map
38575
- # features by load balancer type, see the Load balancing features: Routing and
38576
- # traffic management table. For a list of supported URL map features for Traffic
38577
- # Director, see the Traffic Director features: Routing and traffic management
38578
- # table. This resource defines mappings from host names and URL paths to either
38579
- # a backend service or a backend bucket. To use the global urlMaps resource, the
38580
- # backend service must have a loadBalancingScheme of either EXTERNAL or
38581
- # INTERNAL_SELF_MANAGED. To use the regionUrlMaps resource, the backend service
38582
- # must have a loadBalancingScheme of INTERNAL_MANAGED. For more information,
38583
- # read URL Map Concepts.
38620
+ # features by the load balancer type, see the Load balancing features: Routing
38621
+ # and traffic management table. For a list of supported URL map features for
38622
+ # Traffic Director, see the Traffic Director features: Routing and traffic
38623
+ # management table. This resource defines mappings from hostnames and URL paths
38624
+ # to either a backend service or a backend bucket. To use the global urlMaps
38625
+ # resource, the backend service must have a loadBalancingScheme of either
38626
+ # EXTERNAL or INTERNAL_SELF_MANAGED. To use the regionUrlMaps resource, the
38627
+ # backend service must have a loadBalancingScheme of INTERNAL_MANAGED. For more
38628
+ # information, read URL Map Concepts.
38584
38629
  class UrlMap
38585
38630
  include Google::Apis::Core::Hashable
38586
38631
 
@@ -38590,28 +38635,28 @@ module Google
38590
38635
  attr_accessor :creation_timestamp
38591
38636
 
38592
38637
  # defaultRouteAction takes effect when none of the hostRules match. The load
38593
- # balancer performs advanced routing actions like URL rewrites, header
38594
- # transformations, etc. prior to forwarding the request to the selected backend.
38595
- # If defaultRouteAction specifies any weightedBackendServices, defaultService
38596
- # must not be set. Conversely if defaultService is set, defaultRouteAction
38597
- # cannot contain any weightedBackendServices. Only one of defaultRouteAction or
38638
+ # balancer performs advanced routing actions, such as URL rewrites and header
38639
+ # transformations, before forwarding the request to the selected backend. If
38640
+ # defaultRouteAction specifies any weightedBackendServices, defaultService must
38641
+ # not be set. Conversely if defaultService is set, defaultRouteAction cannot
38642
+ # contain any weightedBackendServices. Only one of defaultRouteAction or
38598
38643
  # defaultUrlRedirect must be set. UrlMaps for external HTTP(S) load balancers
38599
38644
  # support only the urlRewrite action within defaultRouteAction.
38600
- # defaultRouteAction has no effect when the URL map is bound to target gRPC
38601
- # proxy that has validateForProxyless field set to true.
38645
+ # defaultRouteAction has no effect when the URL map is bound to a target gRPC
38646
+ # proxy that has the validateForProxyless field set to true.
38602
38647
  # Corresponds to the JSON property `defaultRouteAction`
38603
38648
  # @return [Google::Apis::ComputeBeta::HttpRouteAction]
38604
38649
  attr_accessor :default_route_action
38605
38650
 
38606
38651
  # The full or partial URL of the defaultService resource to which traffic is
38607
- # directed if none of the hostRules match. If defaultRouteAction is additionally
38608
- # specified, advanced routing actions like URL Rewrites, etc. take effect prior
38609
- # to sending the request to the backend. However, if defaultService is specified,
38652
+ # directed if none of the hostRules match. If defaultRouteAction is also
38653
+ # specified, advanced routing actions, such as URL rewrites, take effect before
38654
+ # sending the request to the backend. However, if defaultService is specified,
38610
38655
  # defaultRouteAction cannot contain any weightedBackendServices. Conversely, if
38611
38656
  # routeAction specifies any weightedBackendServices, service must not be
38612
- # specified. Only one of defaultService, defaultUrlRedirect or
38657
+ # specified. Only one of defaultService, defaultUrlRedirect , or
38613
38658
  # defaultRouteAction.weightedBackendService must be set. defaultService has no
38614
- # effect when the URL map is bound to target gRPC proxy that has
38659
+ # effect when the URL map is bound to a target gRPC proxy that has the
38615
38660
  # validateForProxyless field set to true.
38616
38661
  # Corresponds to the JSON property `defaultService`
38617
38662
  # @return [String]
@@ -38629,11 +38674,10 @@ module Google
38629
38674
  attr_accessor :description
38630
38675
 
38631
38676
  # Fingerprint of this resource. A hash of the contents stored in this object.
38632
- # This field is used in optimistic locking. This field will be ignored when
38633
- # inserting a UrlMap. An up-to-date fingerprint must be provided in order to
38634
- # update the UrlMap, otherwise the request will fail with error 412
38635
- # conditionNotMet. To see the latest fingerprint, make a get() request to
38636
- # retrieve a UrlMap.
38677
+ # This field is used in optimistic locking. This field is ignored when inserting
38678
+ # a UrlMap. An up-to-date fingerprint must be provided in order to update the
38679
+ # UrlMap, otherwise the request will fail with error 412 conditionNotMet. To see
38680
+ # the latest fingerprint, make a get() request to retrieve a UrlMap.
38637
38681
  # Corresponds to the JSON property `fingerprint`
38638
38682
  # NOTE: Values are automatically base64 encoded/decoded in the client library.
38639
38683
  # @return [String]
@@ -38645,7 +38689,7 @@ module Google
38645
38689
  # @return [Google::Apis::ComputeBeta::HttpHeaderAction]
38646
38690
  attr_accessor :header_action
38647
38691
 
38648
- # The list of HostRules to use against the URL.
38692
+ # The list of host rules to use against the URL.
38649
38693
  # Corresponds to the JSON property `hostRules`
38650
38694
  # @return [Array<Google::Apis::ComputeBeta::HostRule>]
38651
38695
  attr_accessor :host_rules
@@ -38688,10 +38732,10 @@ module Google
38688
38732
  # @return [String]
38689
38733
  attr_accessor :self_link
38690
38734
 
38691
- # The list of expected URL mapping tests. Request to update this UrlMap will
38692
- # succeed only if all of the test cases pass. You can specify a maximum of 100
38693
- # tests per UrlMap. Not supported when the URL map is bound to target gRPC proxy
38694
- # that has validateForProxyless field set to true.
38735
+ # The list of expected URL mapping tests. Request to update the UrlMap succeeds
38736
+ # only if all test cases pass. You can specify a maximum of 100 tests per UrlMap.
38737
+ # Not supported when the URL map is bound to a target gRPC proxy that has
38738
+ # validateForProxyless field set to true.
38695
38739
  # Corresponds to the JSON property `tests`
38696
38740
  # @return [Array<Google::Apis::ComputeBeta::UrlMapTest>]
38697
38741
  attr_accessor :tests
@@ -38865,18 +38909,18 @@ module Google
38865
38909
  # @return [String]
38866
38910
  attr_accessor :description
38867
38911
 
38868
- # The expected output URL evaluated by load balancer containing the scheme, host,
38869
- # path and query parameters. For rules that forward requests to backends, the
38870
- # test passes only when expectedOutputUrl matches the request forwarded by load
38871
- # balancer to backends. For rules with urlRewrite, the test verifies that the
38872
- # forwarded request matches hostRewrite and pathPrefixRewrite in the urlRewrite
38873
- # action. When service is specified, expectedOutputUrl`s scheme is ignored. For
38874
- # rules with urlRedirect, the test passes only if expectedOutputUrl matches the
38875
- # URL in the load balancer's redirect response. If urlRedirect specifies
38876
- # https_redirect, the test passes only if the scheme in expectedOutputUrl is
38877
- # also set to https. If urlRedirect specifies strip_query, the test passes only
38878
- # if expectedOutputUrl does not contain any query parameters. expectedOutputUrl
38879
- # is optional when service is specified.
38912
+ # The expected output URL evaluated by the load balancer containing the scheme,
38913
+ # host, path and query parameters. For rules that forward requests to backends,
38914
+ # the test passes only when expectedOutputUrl matches the request forwarded by
38915
+ # the load balancer to backends. For rules with urlRewrite, the test verifies
38916
+ # that the forwarded request matches hostRewrite and pathPrefixRewrite in the
38917
+ # urlRewrite action. When service is specified, expectedOutputUrl`s scheme is
38918
+ # ignored. For rules with urlRedirect, the test passes only if expectedOutputUrl
38919
+ # matches the URL in the load balancer's redirect response. If urlRedirect
38920
+ # specifies https_redirect, the test passes only if the scheme in
38921
+ # expectedOutputUrl is also set to HTTPS. If urlRedirect specifies strip_query,
38922
+ # the test passes only if expectedOutputUrl does not contain any query
38923
+ # parameters. expectedOutputUrl is optional when service is specified.
38880
38924
  # Corresponds to the JSON property `expectedOutputUrl`
38881
38925
  # @return [String]
38882
38926
  attr_accessor :expected_output_url
@@ -38907,7 +38951,8 @@ module Google
38907
38951
  attr_accessor :path
38908
38952
 
38909
38953
  # Expected BackendService or BackendBucket resource the given URL should be
38910
- # mapped to. service cannot be set if expectedRedirectResponseCode is set.
38954
+ # mapped to. The service field cannot be set if expectedRedirectResponseCode is
38955
+ # set.
38911
38956
  # Corresponds to the JSON property `service`
38912
38957
  # @return [String]
38913
38958
  attr_accessor :service
@@ -39212,21 +39257,36 @@ module Google
39212
39257
  class ValidateUrlMapsRequest
39213
39258
  include Google::Apis::Core::Hashable
39214
39259
 
39215
- # Represents a URL Map resource. Google Compute Engine has two URL Map resources:
39216
- # * [Global](/compute/docs/reference/rest/beta/urlMaps) * [Regional](/compute/
39217
- # docs/reference/rest/beta/regionUrlMaps) A URL map resource is a component of
39218
- # certain types of GCP load balancers and Traffic Director. * urlMaps are used
39260
+ # Specifies the load balancer type(s) this validation request is for. Use
39261
+ # EXTERNAL_MANAGED for HTTP/HTTPS External Global Load Balancer with Advanced
39262
+ # Traffic Management. Use EXTERNAL for Classic HTTP/HTTPS External Global Load
39263
+ # Balancer. Other load balancer types are not supported. For more information,
39264
+ # refer to Choosing a load balancer. If unspecified, the load balancing scheme
39265
+ # will be inferred from the backend service resources this URL map references.
39266
+ # If that can not be inferred (for example, this URL map only references backend
39267
+ # buckets, or this Url map is for rewrites and redirects only and doesn't
39268
+ # reference any backends), EXTERNAL will be used as the default type. If
39269
+ # specified, the scheme(s) must not conflict with the load balancing scheme of
39270
+ # the backend service resources this Url map references.
39271
+ # Corresponds to the JSON property `loadBalancingSchemes`
39272
+ # @return [Array<String>]
39273
+ attr_accessor :load_balancing_schemes
39274
+
39275
+ # Represents a URL Map resource. Compute Engine has two URL Map resources: * [
39276
+ # Global](/compute/docs/reference/rest/beta/urlMaps) * [Regional](/compute/docs/
39277
+ # reference/rest/beta/regionUrlMaps) A URL map resource is a component of
39278
+ # certain types of cloud load balancers and Traffic Director: * urlMaps are used
39219
39279
  # by external HTTP(S) load balancers and Traffic Director. * regionUrlMaps are
39220
39280
  # used by internal HTTP(S) load balancers. For a list of supported URL map
39221
- # features by load balancer type, see the Load balancing features: Routing and
39222
- # traffic management table. For a list of supported URL map features for Traffic
39223
- # Director, see the Traffic Director features: Routing and traffic management
39224
- # table. This resource defines mappings from host names and URL paths to either
39225
- # a backend service or a backend bucket. To use the global urlMaps resource, the
39226
- # backend service must have a loadBalancingScheme of either EXTERNAL or
39227
- # INTERNAL_SELF_MANAGED. To use the regionUrlMaps resource, the backend service
39228
- # must have a loadBalancingScheme of INTERNAL_MANAGED. For more information,
39229
- # read URL Map Concepts.
39281
+ # features by the load balancer type, see the Load balancing features: Routing
39282
+ # and traffic management table. For a list of supported URL map features for
39283
+ # Traffic Director, see the Traffic Director features: Routing and traffic
39284
+ # management table. This resource defines mappings from hostnames and URL paths
39285
+ # to either a backend service or a backend bucket. To use the global urlMaps
39286
+ # resource, the backend service must have a loadBalancingScheme of either
39287
+ # EXTERNAL or INTERNAL_SELF_MANAGED. To use the regionUrlMaps resource, the
39288
+ # backend service must have a loadBalancingScheme of INTERNAL_MANAGED. For more
39289
+ # information, read URL Map Concepts.
39230
39290
  # Corresponds to the JSON property `resource`
39231
39291
  # @return [Google::Apis::ComputeBeta::UrlMap]
39232
39292
  attr_accessor :resource
@@ -39237,6 +39297,7 @@ module Google
39237
39297
 
39238
39298
  # Update properties of this object
39239
39299
  def update!(**args)
39300
+ @load_balancing_schemes = args[:load_balancing_schemes] if args.key?(:load_balancing_schemes)
39240
39301
  @resource = args[:resource] if args.key?(:resource)
39241
39302
  end
39242
39303
  end
@@ -39265,16 +39326,16 @@ module Google
39265
39326
  class UrlRewrite
39266
39327
  include Google::Apis::Core::Hashable
39267
39328
 
39268
- # Prior to forwarding the request to the selected service, the request's host
39269
- # header is replaced with contents of hostRewrite. The value must be between 1
39270
- # and 255 characters.
39329
+ # Before forwarding the request to the selected service, the request's host
39330
+ # header is replaced with contents of hostRewrite. The value must be from 1 to
39331
+ # 255 characters.
39271
39332
  # Corresponds to the JSON property `hostRewrite`
39272
39333
  # @return [String]
39273
39334
  attr_accessor :host_rewrite
39274
39335
 
39275
- # Prior to forwarding the request to the selected backend service, the matching
39336
+ # Before forwarding the request to the selected backend service, the matching
39276
39337
  # portion of the request's path is replaced by pathPrefixRewrite. The value must
39277
- # be between 1 and 1024 characters.
39338
+ # be from 1 to 1024 characters.
39278
39339
  # Corresponds to the JSON property `pathPrefixRewrite`
39279
39340
  # @return [String]
39280
39341
  attr_accessor :path_prefix_rewrite
@@ -40928,14 +40989,13 @@ module Google
40928
40989
 
40929
40990
  # In contrast to a single BackendService in HttpRouteAction to which all
40930
40991
  # matching traffic is directed to, WeightedBackendService allows traffic to be
40931
- # split across multiple BackendServices. The volume of traffic for each
40932
- # BackendService is proportional to the weight specified in each
40933
- # WeightedBackendService
40992
+ # split across multiple backend services. The volume of traffic for each backend
40993
+ # service is proportional to the weight specified in each WeightedBackendService
40934
40994
  class WeightedBackendService
40935
40995
  include Google::Apis::Core::Hashable
40936
40996
 
40937
40997
  # The full or partial URL to the default BackendService resource. Before
40938
- # forwarding the request to backendService, the loadbalancer applies any
40998
+ # forwarding the request to backendService, the load balancer applies any
40939
40999
  # relevant headerActions specified as part of this backendServiceWeight.
40940
41000
  # Corresponds to the JSON property `backendService`
40941
41001
  # @return [String]
@@ -40947,12 +41007,12 @@ module Google
40947
41007
  # @return [Google::Apis::ComputeBeta::HttpHeaderAction]
40948
41008
  attr_accessor :header_action
40949
41009
 
40950
- # Specifies the fraction of traffic sent to backendService, computed as weight /
40951
- # (sum of all weightedBackendService weights in routeAction) . The selection of
40952
- # a backend service is determined only for new traffic. Once a user's request
40953
- # has been directed to a backendService, subsequent requests will be sent to the
40954
- # same backendService as determined by the BackendService's session affinity
40955
- # policy. The value must be between 0 and 1000
41010
+ # Specifies the fraction of traffic sent to a backend service, computed as
41011
+ # weight / (sum of all weightedBackendService weights in routeAction) . The
41012
+ # selection of a backend service is determined only for new traffic. Once a user'
41013
+ # s request has been directed to a backend service, subsequent requests are sent
41014
+ # to the same backend service as determined by the backend service's session
41015
+ # affinity policy. The value must be from 0 to 1000.
40956
41016
  # Corresponds to the JSON property `weight`
40957
41017
  # @return [Fixnum]
40958
41018
  attr_accessor :weight
@@ -41362,31 +41422,31 @@ module Google
41362
41422
 
41363
41423
  # An Identity and Access Management (IAM) policy, which specifies access
41364
41424
  # controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
41365
- # A `binding` binds one or more `members` to a single `role`. Members can be
41366
- # user accounts, service accounts, Google groups, and domains (such as G Suite).
41367
- # A `role` is a named list of permissions; each `role` can be an IAM predefined
41368
- # role or a user-created custom role. For some types of Google Cloud resources,
41369
- # a `binding` can also specify a `condition`, which is a logical expression that
41370
- # allows access to a resource only if the expression evaluates to `true`. A
41371
- # condition can add constraints based on attributes of the request, the resource,
41372
- # or both. To learn which resources support conditions in their IAM policies,
41373
- # see the [IAM documentation](https://cloud.google.com/iam/help/conditions/
41374
- # resource-policies). **JSON example:** ` "bindings": [ ` "role": "roles/
41375
- # resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "
41376
- # group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@
41377
- # appspot.gserviceaccount.com" ] `, ` "role": "roles/resourcemanager.
41378
- # organizationViewer", "members": [ "user:eve@example.com" ], "condition": ` "
41379
- # title": "expirable access", "description": "Does not grant access after Sep
41380
- # 2020", "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z')", `
41381
- # ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:** bindings: -
41382
- # members: - user:mike@example.com - group:admins@example.com - domain:google.
41383
- # com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/
41384
- # resourcemanager.organizationAdmin - members: - user:eve@example.com role:
41385
- # roles/resourcemanager.organizationViewer condition: title: expirable access
41386
- # description: Does not grant access after Sep 2020 expression: request.time <
41387
- # timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For a
41388
- # description of IAM and its features, see the [IAM documentation](https://cloud.
41389
- # google.com/iam/docs/).
41425
+ # A `binding` binds one or more `members`, or principals, to a single `role`.
41426
+ # Principals can be user accounts, service accounts, Google groups, and domains (
41427
+ # such as G Suite). A `role` is a named list of permissions; each `role` can be
41428
+ # an IAM predefined role or a user-created custom role. For some types of Google
41429
+ # Cloud resources, a `binding` can also specify a `condition`, which is a
41430
+ # logical expression that allows access to a resource only if the expression
41431
+ # evaluates to `true`. A condition can add constraints based on attributes of
41432
+ # the request, the resource, or both. To learn which resources support
41433
+ # conditions in their IAM policies, see the [IAM documentation](https://cloud.
41434
+ # google.com/iam/help/conditions/resource-policies). **JSON example:** ` "
41435
+ # bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
41436
+ # "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
41437
+ # serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
41438
+ # roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
41439
+ # ], "condition": ` "title": "expirable access", "description": "Does not grant
41440
+ # access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
41441
+ # 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
41442
+ # bindings: - members: - user:mike@example.com - group:admins@example.com -
41443
+ # domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
41444
+ # role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
41445
+ # com role: roles/resourcemanager.organizationViewer condition: title: expirable
41446
+ # access description: Does not grant access after Sep 2020 expression: request.
41447
+ # time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
41448
+ # a description of IAM and its features, see the [IAM documentation](https://
41449
+ # cloud.google.com/iam/docs/).
41390
41450
  # Corresponds to the JSON property `policy`
41391
41451
  # @return [Google::Apis::ComputeBeta::Policy]
41392
41452
  attr_accessor :policy