google-apis-compute_beta 0.19.0 → 0.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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