google-apis-compute_beta 0.17.0 → 0.21.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +17 -0
- data/OVERVIEW.md +2 -2
- data/lib/google/apis/compute_beta/classes.rb +1146 -524
- data/lib/google/apis/compute_beta/gem_version.rb +2 -2
- data/lib/google/apis/compute_beta/representations.rb +185 -1
- data/lib/google/apis/compute_beta/service.rb +2322 -1621
- metadata +5 -5
@@ -510,13 +510,17 @@ module Google
|
|
510
510
|
attr_accessor :network_tier
|
511
511
|
|
512
512
|
# The DNS domain name for the public PTR record. You can set this field only if
|
513
|
-
# the `setPublicPtr` field is enabled.
|
513
|
+
# the `setPublicPtr` field is enabled in accessConfig. If this field is
|
514
|
+
# unspecified in ipv6AccessConfig, a default PTR record will be createc for
|
515
|
+
# first IP in associated external IPv6 range.
|
514
516
|
# Corresponds to the JSON property `publicPtrDomainName`
|
515
517
|
# @return [String]
|
516
518
|
attr_accessor :public_ptr_domain_name
|
517
519
|
|
518
520
|
# Specifies whether a public DNS 'PTR' record should be created to map the
|
519
|
-
# external IP address of the instance to a DNS domain name.
|
521
|
+
# external IP address of the instance to a DNS domain name. This field is not
|
522
|
+
# used in ipv6AccessConfig. A default PTR record will be created if the VM has
|
523
|
+
# external IPv6 range associated.
|
520
524
|
# Corresponds to the JSON property `setPublicPtr`
|
521
525
|
# @return [Boolean]
|
522
526
|
attr_accessor :set_public_ptr
|
@@ -648,14 +652,14 @@ module Google
|
|
648
652
|
# regional internal IP address in a subnet of a VPC network) - VPC_PEERING for
|
649
653
|
# global internal IP addresses used for private services access allocated ranges.
|
650
654
|
# - NAT_AUTO for the regional external IP addresses used by Cloud NAT when
|
651
|
-
# allocating addresses using
|
652
|
-
#
|
653
|
-
#
|
654
|
-
#
|
655
|
-
# an internal IP address that is
|
656
|
-
#
|
657
|
-
#
|
658
|
-
# purpose.
|
655
|
+
# allocating addresses using automatic NAT IP address allocation. -
|
656
|
+
# IPSEC_INTERCONNECT for addresses created from a private IP range that are
|
657
|
+
# reserved for a VLAN attachment in an *IPsec-encrypted Cloud Interconnect*
|
658
|
+
# configuration. These addresses are regional resources. Not currently available
|
659
|
+
# publicly. - `SHARED_LOADBALANCER_VIP` for an internal IP address that is
|
660
|
+
# assigned to multiple internal forwarding rules. - `PRIVATE_SERVICE_CONNECT`
|
661
|
+
# for a private network address that is used to configure Private Service
|
662
|
+
# Connect. Only global internal addresses can use this purpose.
|
659
663
|
# Corresponds to the JSON property `purpose`
|
660
664
|
# @return [String]
|
661
665
|
attr_accessor :purpose
|
@@ -1357,7 +1361,8 @@ module Google
|
|
1357
1361
|
# initializeParams.sourceSnapshot or disks.source is required except for local
|
1358
1362
|
# SSD. If desired, you can also attach existing non-root persistent disks using
|
1359
1363
|
# this property. This field is only applicable for persistent disks. Note that
|
1360
|
-
# for InstanceTemplate, specify the disk name,
|
1364
|
+
# for InstanceTemplate, specify the disk name for zonal disk, and the URL for
|
1365
|
+
# regional disk.
|
1361
1366
|
# Corresponds to the JSON property `source`
|
1362
1367
|
# @return [String]
|
1363
1368
|
attr_accessor :source
|
@@ -2774,7 +2779,7 @@ module Google
|
|
2774
2779
|
# specified), or else sets the response max-age directive to the lesser of the
|
2775
2780
|
# client_ttl and default_ttl, and also ensures a "public" cache-control
|
2776
2781
|
# directive is present. If a client TTL is not specified, a default value (1
|
2777
|
-
# hour) will be used. The maximum allowed value is
|
2782
|
+
# hour) will be used. The maximum allowed value is 31,622,400s (1 year).
|
2778
2783
|
# Corresponds to the JSON property `clientTtl`
|
2779
2784
|
# @return [Fixnum]
|
2780
2785
|
attr_accessor :client_ttl
|
@@ -3184,14 +3189,14 @@ module Google
|
|
3184
3189
|
|
3185
3190
|
# For load balancers that have configurable failover: [Internal TCP/UDP Load
|
3186
3191
|
# Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-
|
3187
|
-
# overview) and [external TCP/UDP Load Balancing](/
|
3188
|
-
# overview). On failover or failback,
|
3189
|
-
# draining will be honored. Google Cloud
|
3190
|
-
# of 10 minutes. A setting of true
|
3191
|
-
# active pool during failover and
|
3192
|
-
# setting of false allows existing TCP
|
3193
|
-
# longer in the active pool, for up to
|
3194
|
-
# timeout (10 minutes).
|
3192
|
+
# overview) and [external TCP/UDP Load Balancing](https://cloud.google.com/load-
|
3193
|
+
# balancing/docs/network/networklb-failover-overview). On failover or failback,
|
3194
|
+
# this field indicates whether connection draining will be honored. Google Cloud
|
3195
|
+
# has a fixed connection draining timeout of 10 minutes. A setting of true
|
3196
|
+
# terminates existing TCP connections to the active pool during failover and
|
3197
|
+
# failback, immediately draining traffic. A setting of false allows existing TCP
|
3198
|
+
# connections to persist, even on VMs no longer in the active pool, for up to
|
3199
|
+
# the duration of the connection draining timeout (10 minutes).
|
3195
3200
|
# Corresponds to the JSON property `failoverPolicy`
|
3196
3201
|
# @return [Google::Apis::ComputeBeta::BackendServiceFailoverPolicy]
|
3197
3202
|
attr_accessor :failover_policy
|
@@ -3262,8 +3267,8 @@ module Google
|
|
3262
3267
|
# INTERNAL_MANAGED. - A global backend service with the load_balancing_scheme
|
3263
3268
|
# set to INTERNAL_SELF_MANAGED. If sessionAffinity is not NONE, and this field
|
3264
3269
|
# is not set to MAGLEV or RING_HASH, session affinity settings will not take
|
3265
|
-
# effect. Only
|
3266
|
-
#
|
3270
|
+
# effect. Only ROUND_ROBIN and RING_HASH are supported when the backend service
|
3271
|
+
# is referenced by a URL map that is bound to target gRPC proxy that has
|
3267
3272
|
# validateForProxyless field set to true.
|
3268
3273
|
# Corresponds to the JSON property `localityLbPolicy`
|
3269
3274
|
# @return [String]
|
@@ -3356,11 +3361,18 @@ module Google
|
|
3356
3361
|
# @return [String]
|
3357
3362
|
attr_accessor :self_link
|
3358
3363
|
|
3359
|
-
#
|
3360
|
-
#
|
3361
|
-
#
|
3362
|
-
#
|
3363
|
-
#
|
3364
|
+
# URLs of networkservices.ServiceBinding resources. Can only be set if load
|
3365
|
+
# balancing scheme is INTERNAL_SELF_MANAGED. If set, lists of backends and
|
3366
|
+
# health checks must be both empty.
|
3367
|
+
# Corresponds to the JSON property `serviceBindings`
|
3368
|
+
# @return [Array<String>]
|
3369
|
+
attr_accessor :service_bindings
|
3370
|
+
|
3371
|
+
# Type of session affinity to use. The default is NONE. Only NONE and
|
3372
|
+
# HEADER_FIELD are supported when the backend service is referenced by a URL map
|
3373
|
+
# that is bound to target gRPC proxy that has validateForProxyless field set to
|
3374
|
+
# true. For more details, see: [Session Affinity](https://cloud.google.com/load-
|
3375
|
+
# balancing/docs/backend-service#session_affinity).
|
3364
3376
|
# Corresponds to the JSON property `sessionAffinity`
|
3365
3377
|
# @return [String]
|
3366
3378
|
attr_accessor :session_affinity
|
@@ -3419,6 +3431,7 @@ module Google
|
|
3419
3431
|
@security_policy = args[:security_policy] if args.key?(:security_policy)
|
3420
3432
|
@security_settings = args[:security_settings] if args.key?(:security_settings)
|
3421
3433
|
@self_link = args[:self_link] if args.key?(:self_link)
|
3434
|
+
@service_bindings = args[:service_bindings] if args.key?(:service_bindings)
|
3422
3435
|
@session_affinity = args[:session_affinity] if args.key?(:session_affinity)
|
3423
3436
|
@subsetting = args[:subsetting] if args.key?(:subsetting)
|
3424
3437
|
@timeout_sec = args[:timeout_sec] if args.key?(:timeout_sec)
|
@@ -3589,7 +3602,7 @@ module Google
|
|
3589
3602
|
# specified), or else sets the response max-age directive to the lesser of the
|
3590
3603
|
# client_ttl and default_ttl, and also ensures a "public" cache-control
|
3591
3604
|
# directive is present. If a client TTL is not specified, a default value (1
|
3592
|
-
# hour) will be used. The maximum allowed value is
|
3605
|
+
# hour) will be used. The maximum allowed value is 31,622,400s (1 year).
|
3593
3606
|
# Corresponds to the JSON property `clientTtl`
|
3594
3607
|
# @return [Fixnum]
|
3595
3608
|
attr_accessor :client_ttl
|
@@ -3769,32 +3782,42 @@ module Google
|
|
3769
3782
|
# healthy backends (unless all backends are unhealthy). If set to ALWAYS_PERSIST,
|
3770
3783
|
# existing connections always persist on unhealthy backends regardless of
|
3771
3784
|
# protocol and session affinity. It is generally not recommended to use this
|
3772
|
-
# mode overriding the default.
|
3785
|
+
# mode overriding the default. For more details, see [Connection Persistence for
|
3786
|
+
# Network Load Balancing](https://cloud.google.com/load-balancing/docs/network/
|
3787
|
+
# networklb-backend-service#connection-persistence) and [Connection Persistence
|
3788
|
+
# for Internal TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/
|
3789
|
+
# docs/internal#connection-persistence).
|
3773
3790
|
# Corresponds to the JSON property `connectionPersistenceOnUnhealthyBackends`
|
3774
3791
|
# @return [String]
|
3775
3792
|
attr_accessor :connection_persistence_on_unhealthy_backends
|
3776
3793
|
|
3777
|
-
# Enable Strong Session Affinity
|
3778
|
-
#
|
3794
|
+
# Enable Strong Session Affinity for Network Load Balancing. This option is not
|
3795
|
+
# available publicly.
|
3779
3796
|
# Corresponds to the JSON property `enableStrongAffinity`
|
3780
3797
|
# @return [Boolean]
|
3781
3798
|
attr_accessor :enable_strong_affinity
|
3782
3799
|
alias_method :enable_strong_affinity?, :enable_strong_affinity
|
3783
3800
|
|
3784
3801
|
# Specifies how long to keep a Connection Tracking entry while there is no
|
3785
|
-
# matching traffic (in seconds). For
|
3786
|
-
# and maximum is 16 hours.
|
3787
|
-
#
|
3788
|
-
#
|
3802
|
+
# matching traffic (in seconds). For Internal TCP/UDP Load Balancing: - The
|
3803
|
+
# minimum (default) is 10 minutes and the maximum is 16 hours. - It can be set
|
3804
|
+
# only if Connection Tracking is less than 5-tuple (i.e. Session Affinity is
|
3805
|
+
# CLIENT_IP_NO_DESTINATION, CLIENT_IP or CLIENT_IP_PROTO, and Tracking Mode is
|
3806
|
+
# PER_SESSION). For Network Load Balancer the default is 60 seconds. This option
|
3807
|
+
# is not available publicly.
|
3789
3808
|
# Corresponds to the JSON property `idleTimeoutSec`
|
3790
3809
|
# @return [Fixnum]
|
3791
3810
|
attr_accessor :idle_timeout_sec
|
3792
3811
|
|
3793
|
-
# Specifies the key used for connection tracking. There are two options:
|
3812
|
+
# Specifies the key used for connection tracking. There are two options: -
|
3794
3813
|
# PER_CONNECTION: This is the default mode. The Connection Tracking is performed
|
3795
|
-
# as per the Connection Key (default Hash Method) for the specific protocol.
|
3814
|
+
# as per the Connection Key (default Hash Method) for the specific protocol. -
|
3796
3815
|
# PER_SESSION: The Connection Tracking is performed as per the configured
|
3797
|
-
# Session Affinity. It matches the configured Session Affinity.
|
3816
|
+
# Session Affinity. It matches the configured Session Affinity. For more details,
|
3817
|
+
# see [Tracking Mode for Network Load Balancing](https://cloud.google.com/load-
|
3818
|
+
# balancing/docs/network/networklb-backend-service#tracking-mode) and [Tracking
|
3819
|
+
# Mode for Internal TCP/UDP Load Balancing](https://cloud.google.com/load-
|
3820
|
+
# balancing/docs/internal#tracking-mode).
|
3798
3821
|
# Corresponds to the JSON property `trackingMode`
|
3799
3822
|
# @return [String]
|
3800
3823
|
attr_accessor :tracking_mode
|
@@ -3814,14 +3837,14 @@ module Google
|
|
3814
3837
|
|
3815
3838
|
# For load balancers that have configurable failover: [Internal TCP/UDP Load
|
3816
3839
|
# Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-
|
3817
|
-
# overview) and [external TCP/UDP Load Balancing](/
|
3818
|
-
# overview). On failover or failback,
|
3819
|
-
# draining will be honored. Google Cloud
|
3820
|
-
# of 10 minutes. A setting of true
|
3821
|
-
# active pool during failover and
|
3822
|
-
# setting of false allows existing TCP
|
3823
|
-
# longer in the active pool, for up to
|
3824
|
-
# timeout (10 minutes).
|
3840
|
+
# overview) and [external TCP/UDP Load Balancing](https://cloud.google.com/load-
|
3841
|
+
# balancing/docs/network/networklb-failover-overview). On failover or failback,
|
3842
|
+
# this field indicates whether connection draining will be honored. Google Cloud
|
3843
|
+
# has a fixed connection draining timeout of 10 minutes. A setting of true
|
3844
|
+
# terminates existing TCP connections to the active pool during failover and
|
3845
|
+
# failback, immediately draining traffic. A setting of false allows existing TCP
|
3846
|
+
# connections to persist, even on VMs no longer in the active pool, for up to
|
3847
|
+
# the duration of the connection draining timeout (10 minutes).
|
3825
3848
|
class BackendServiceFailoverPolicy
|
3826
3849
|
include Google::Apis::Core::Hashable
|
3827
3850
|
|
@@ -3836,8 +3859,9 @@ module Google
|
|
3836
3859
|
# distributed among all primary VMs when all primary and all backup backend VMs
|
3837
3860
|
# are unhealthy. For load balancers that have configurable failover: [Internal
|
3838
3861
|
# TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/
|
3839
|
-
# failover-overview) and [external TCP/UDP Load Balancing](
|
3840
|
-
# failover-overview). The default is
|
3862
|
+
# failover-overview) and [external TCP/UDP Load Balancing](https://cloud.google.
|
3863
|
+
# com/load-balancing/docs/network/networklb-failover-overview). The default is
|
3864
|
+
# false.
|
3841
3865
|
# Corresponds to the JSON property `dropTrafficIfUnhealthy`
|
3842
3866
|
# @return [Boolean]
|
3843
3867
|
attr_accessor :drop_traffic_if_unhealthy
|
@@ -3849,7 +3873,8 @@ module Google
|
|
3849
3873
|
# the total number of healthy primary VMs is less than this ratio. For load
|
3850
3874
|
# balancers that have configurable failover: [Internal TCP/UDP Load Balancing](
|
3851
3875
|
# https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [
|
3852
|
-
# external TCP/UDP Load Balancing](/
|
3876
|
+
# external TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/
|
3877
|
+
# network/networklb-failover-overview).
|
3853
3878
|
# Corresponds to the JSON property `failoverRatio`
|
3854
3879
|
# @return [Float]
|
3855
3880
|
attr_accessor :failover_ratio
|
@@ -4450,7 +4475,7 @@ module Google
|
|
4450
4475
|
end
|
4451
4476
|
end
|
4452
4477
|
|
4453
|
-
# Associates `members
|
4478
|
+
# Associates `members`, or principals, with a `role`.
|
4454
4479
|
class Binding
|
4455
4480
|
include Google::Apis::Core::Hashable
|
4456
4481
|
|
@@ -4478,7 +4503,7 @@ module Google
|
|
4478
4503
|
# @return [Google::Apis::ComputeBeta::Expr]
|
4479
4504
|
attr_accessor :condition
|
4480
4505
|
|
4481
|
-
# Specifies the
|
4506
|
+
# Specifies the principals requesting access for a Cloud Platform resource. `
|
4482
4507
|
# members` can have the following values: * `allUsers`: A special identifier
|
4483
4508
|
# that represents anyone who is on the internet; with or without a Google
|
4484
4509
|
# account. * `allAuthenticatedUsers`: A special identifier that represents
|
@@ -4508,8 +4533,8 @@ module Google
|
|
4508
4533
|
# @return [Array<String>]
|
4509
4534
|
attr_accessor :members
|
4510
4535
|
|
4511
|
-
# Role that is assigned to `members
|
4512
|
-
#
|
4536
|
+
# Role that is assigned to the list of `members`, or principals. For example, `
|
4537
|
+
# roles/viewer`, `roles/editor`, or `roles/owner`.
|
4513
4538
|
# Corresponds to the JSON property `role`
|
4514
4539
|
# @return [String]
|
4515
4540
|
attr_accessor :role
|
@@ -4787,6 +4812,16 @@ module Google
|
|
4787
4812
|
class Commitment
|
4788
4813
|
include Google::Apis::Core::Hashable
|
4789
4814
|
|
4815
|
+
# Specifies whether to enable automatic renewal for the commitment. The default
|
4816
|
+
# value is false if not specified. The field can be updated until the day of the
|
4817
|
+
# commitment expiration at 12:00am PST. If the field is set to true, the
|
4818
|
+
# commitment will be automatically renewed for either one or three years
|
4819
|
+
# according to the terms of the existing commitment.
|
4820
|
+
# Corresponds to the JSON property `autoRenew`
|
4821
|
+
# @return [Boolean]
|
4822
|
+
attr_accessor :auto_renew
|
4823
|
+
alias_method :auto_renew?, :auto_renew
|
4824
|
+
|
4790
4825
|
# The category of the commitment. Category MACHINE specifies commitments
|
4791
4826
|
# composed of machine resources such as VCPU or MEMORY, listed in resources.
|
4792
4827
|
# Category LICENSE specifies commitments composed of software licenses, listed
|
@@ -4897,6 +4932,7 @@ module Google
|
|
4897
4932
|
|
4898
4933
|
# Update properties of this object
|
4899
4934
|
def update!(**args)
|
4935
|
+
@auto_renew = args[:auto_renew] if args.key?(:auto_renew)
|
4900
4936
|
@category = args[:category] if args.key?(:category)
|
4901
4937
|
@creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
|
4902
4938
|
@description = args[:description] if args.key?(:description)
|
@@ -5405,14 +5441,15 @@ module Google
|
|
5405
5441
|
end
|
5406
5442
|
end
|
5407
5443
|
|
5408
|
-
# The specification for allowing client
|
5409
|
-
# W3C
|
5444
|
+
# The specification for allowing client-side cross-origin requests. For more
|
5445
|
+
# information about the W3C recommendation for cross-origin resource sharing (
|
5446
|
+
# CORS), see Fetch API Living Standard.
|
5410
5447
|
class CorsPolicy
|
5411
5448
|
include Google::Apis::Core::Hashable
|
5412
5449
|
|
5413
5450
|
# In response to a preflight request, setting this to true indicates that the
|
5414
|
-
# actual request can include user credentials. This translates to the
|
5415
|
-
# Control-Allow-Credentials header. Default is false.
|
5451
|
+
# actual request can include user credentials. This field translates to the
|
5452
|
+
# Access-Control-Allow-Credentials header. Default is false.
|
5416
5453
|
# Corresponds to the JSON property `allowCredentials`
|
5417
5454
|
# @return [Boolean]
|
5418
5455
|
attr_accessor :allow_credentials
|
@@ -5428,23 +5465,23 @@ module Google
|
|
5428
5465
|
# @return [Array<String>]
|
5429
5466
|
attr_accessor :allow_methods
|
5430
5467
|
|
5431
|
-
# Specifies
|
5432
|
-
# regular expression
|
5433
|
-
#
|
5468
|
+
# Specifies a regular expression that matches allowed origins. For more
|
5469
|
+
# information about the regular expression syntax, see Syntax. An origin is
|
5470
|
+
# allowed if it matches either an item in allowOrigins or an item in
|
5434
5471
|
# allowOriginRegexes.
|
5435
5472
|
# Corresponds to the JSON property `allowOriginRegexes`
|
5436
5473
|
# @return [Array<String>]
|
5437
5474
|
attr_accessor :allow_origin_regexes
|
5438
5475
|
|
5439
|
-
# Specifies the list of origins that
|
5440
|
-
#
|
5476
|
+
# Specifies the list of origins that is allowed to do CORS requests. An origin
|
5477
|
+
# is allowed if it matches either an item in allowOrigins or an item in
|
5441
5478
|
# allowOriginRegexes.
|
5442
5479
|
# Corresponds to the JSON property `allowOrigins`
|
5443
5480
|
# @return [Array<String>]
|
5444
5481
|
attr_accessor :allow_origins
|
5445
5482
|
|
5446
|
-
# If true, specifies the CORS policy is disabled. The default value
|
5447
|
-
# which indicates that the CORS policy is in effect.
|
5483
|
+
# If true, the setting specifies the CORS policy is disabled. The default value
|
5484
|
+
# of false, which indicates that the CORS policy is in effect.
|
5448
5485
|
# Corresponds to the JSON property `disabled`
|
5449
5486
|
# @return [Boolean]
|
5450
5487
|
attr_accessor :disabled
|
@@ -5456,7 +5493,7 @@ module Google
|
|
5456
5493
|
attr_accessor :expose_headers
|
5457
5494
|
|
5458
5495
|
# Specifies how long results of a preflight request can be cached in seconds.
|
5459
|
-
# This translates to the Access-Control-Max-Age header.
|
5496
|
+
# This field translates to the Access-Control-Max-Age header.
|
5460
5497
|
# Corresponds to the JSON property `maxAge`
|
5461
5498
|
# @return [Fixnum]
|
5462
5499
|
attr_accessor :max_age
|
@@ -5482,30 +5519,39 @@ module Google
|
|
5482
5519
|
class CustomerEncryptionKey
|
5483
5520
|
include Google::Apis::Core::Hashable
|
5484
5521
|
|
5485
|
-
# The name of the encryption key that is stored in Google Cloud KMS.
|
5522
|
+
# The name of the encryption key that is stored in Google Cloud KMS. For example:
|
5523
|
+
# "kmsKeyName": "projects/kms_project_id/locations/region/keyRings/ key_region/
|
5524
|
+
# cryptoKeys/key
|
5486
5525
|
# Corresponds to the JSON property `kmsKeyName`
|
5487
5526
|
# @return [String]
|
5488
5527
|
attr_accessor :kms_key_name
|
5489
5528
|
|
5490
5529
|
# The service account being used for the encryption request for the given KMS
|
5491
|
-
# key. If absent, the Compute Engine default service account is used.
|
5530
|
+
# key. If absent, the Compute Engine default service account is used. For
|
5531
|
+
# example: "kmsKeyServiceAccount": "name@project_id.iam.gserviceaccount.com/
|
5492
5532
|
# Corresponds to the JSON property `kmsKeyServiceAccount`
|
5493
5533
|
# @return [String]
|
5494
5534
|
attr_accessor :kms_key_service_account
|
5495
5535
|
|
5496
5536
|
# Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648
|
5497
|
-
# base64 to either encrypt or decrypt this resource.
|
5537
|
+
# base64 to either encrypt or decrypt this resource. You can provide either the
|
5538
|
+
# rawKey or the rsaEncryptedKey. For example: "rawKey": "
|
5539
|
+
# SGVsbG8gZnJvbSBHb29nbGUgQ2xvdWQgUGxhdGZvcm0="
|
5498
5540
|
# Corresponds to the JSON property `rawKey`
|
5499
5541
|
# @return [String]
|
5500
5542
|
attr_accessor :raw_key
|
5501
5543
|
|
5502
5544
|
# Specifies an RFC 4648 base64 encoded, RSA-wrapped 2048-bit customer-supplied
|
5503
|
-
# encryption key to either encrypt or decrypt this resource.
|
5504
|
-
# the
|
5505
|
-
#
|
5506
|
-
#
|
5507
|
-
#
|
5508
|
-
#
|
5545
|
+
# encryption key to either encrypt or decrypt this resource. You can provide
|
5546
|
+
# either the rawKey or the rsaEncryptedKey. For example: "rsaEncryptedKey": "
|
5547
|
+
# ieCx/NcW06PcT7Ep1X6LUTc/hLvUDYyzSZPPVCVPTVEohpeHASqC8uw5TzyO9U+Fka9JFH
|
5548
|
+
# z0mBibXUInrC/jEk014kCK/NPjYgEMOyssZ4ZINPKxlUh2zn1bV+MCaTICrdmuSBTWlUUiFoD
|
5549
|
+
# D6PYznLwh8ZNdaheCeZ8ewEXgFQ8V+sDroLaN3Xs3MDTXQEMMoNUXMCZEIpg9Vtp9x2oe==" The
|
5550
|
+
# key must meet the following requirements before you can provide it to Compute
|
5551
|
+
# Engine: 1. The key is wrapped using a RSA public key certificate provided by
|
5552
|
+
# Google. 2. After being wrapped, the key must be encoded in RFC 4648 base64
|
5553
|
+
# encoding. Gets the RSA public key certificate provided by Google at: https://
|
5554
|
+
# cloud-certs.storage.googleapis.com/google-cloud-csek-ingress.pem
|
5509
5555
|
# Corresponds to the JSON property `rsaEncryptedKey`
|
5510
5556
|
# @return [String]
|
5511
5557
|
attr_accessor :rsa_encrypted_key
|
@@ -5540,7 +5586,8 @@ module Google
|
|
5540
5586
|
attr_accessor :disk_encryption_key
|
5541
5587
|
|
5542
5588
|
# Specifies a valid partial or full URL to an existing Persistent Disk resource.
|
5543
|
-
# This field is only applicable for persistent disks.
|
5589
|
+
# This field is only applicable for persistent disks. For example: "source": "/
|
5590
|
+
# compute/v1/projects/project_id/zones/zone/disks/ disk_name
|
5544
5591
|
# Corresponds to the JSON property `source`
|
5545
5592
|
# @return [String]
|
5546
5593
|
attr_accessor :source
|
@@ -7573,7 +7620,7 @@ module Google
|
|
7573
7620
|
# Name of the resource; provided by the client when the resource is created. The
|
7574
7621
|
# name must be 1-63 characters long, and comply with RFC1035. Specifically, the
|
7575
7622
|
# name must be 1-63 characters long and match the regular expression `[a-z]([-a-
|
7576
|
-
# z0-9]*[a-z0-9])
|
7623
|
+
# z0-9]*[a-z0-9])?`. The first character must be a lowercase letter, and all
|
7577
7624
|
# following characters (except for the last character) must be a dash, lowercase
|
7578
7625
|
# letter, or digit. The last character must be a lowercase letter or digit.
|
7579
7626
|
# Corresponds to the JSON property `name`
|
@@ -8651,8 +8698,7 @@ module Google
|
|
8651
8698
|
attr_accessor :self_link
|
8652
8699
|
|
8653
8700
|
# Service Directory resources to register this forwarding rule with. Currently,
|
8654
|
-
# only supports a single Service Directory resource.
|
8655
|
-
# internal load balancing.
|
8701
|
+
# only supports a single Service Directory resource.
|
8656
8702
|
# Corresponds to the JSON property `serviceDirectoryRegistrations`
|
8657
8703
|
# @return [Array<Google::Apis::ComputeBeta::ForwardingRuleServiceDirectoryRegistration>]
|
8658
8704
|
attr_accessor :service_directory_registrations
|
@@ -9234,31 +9280,31 @@ module Google
|
|
9234
9280
|
|
9235
9281
|
# An Identity and Access Management (IAM) policy, which specifies access
|
9236
9282
|
# controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
|
9237
|
-
# A `binding` binds one or more `members
|
9238
|
-
# user accounts, service accounts, Google groups, and domains (
|
9239
|
-
# A `role` is a named list of permissions; each `role` can be
|
9240
|
-
# role or a user-created custom role. For some types of Google
|
9241
|
-
# a `binding` can also specify a `condition`, which is a
|
9242
|
-
# allows access to a resource only if the expression
|
9243
|
-
# condition can add constraints based on attributes of
|
9244
|
-
# or both. To learn which resources support
|
9245
|
-
# see the [IAM documentation](https://cloud.
|
9246
|
-
# resource-policies). **JSON example:** ` "
|
9247
|
-
# resourcemanager.organizationAdmin", "members": [
|
9248
|
-
# group:admins@example.com", "domain:google.com", "
|
9249
|
-
# appspot.gserviceaccount.com" ] `, ` "role": "
|
9250
|
-
# organizationViewer", "members": [ "user:eve@example.com"
|
9251
|
-
# title": "expirable access", "description": "Does not grant
|
9252
|
-
# 2020", "expression": "request.time < timestamp('2020-10-01T00:
|
9253
|
-
# ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
|
9254
|
-
# members: - user:mike@example.com - group:admins@example.com -
|
9255
|
-
# com - serviceAccount:my-project-id@appspot.gserviceaccount.com
|
9256
|
-
# resourcemanager.organizationAdmin - members: - user:eve@example.
|
9257
|
-
# roles/resourcemanager.organizationViewer condition: title: expirable
|
9258
|
-
# description: Does not grant access after Sep 2020 expression: request.
|
9259
|
-
# timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
|
9260
|
-
# description of IAM and its features, see the [IAM documentation](https://
|
9261
|
-
# google.com/iam/docs/).
|
9283
|
+
# A `binding` binds one or more `members`, or principals, to a single `role`.
|
9284
|
+
# Principals can be user accounts, service accounts, Google groups, and domains (
|
9285
|
+
# such as G Suite). A `role` is a named list of permissions; each `role` can be
|
9286
|
+
# an IAM predefined role or a user-created custom role. For some types of Google
|
9287
|
+
# Cloud resources, a `binding` can also specify a `condition`, which is a
|
9288
|
+
# logical expression that allows access to a resource only if the expression
|
9289
|
+
# evaluates to `true`. A condition can add constraints based on attributes of
|
9290
|
+
# the request, the resource, or both. To learn which resources support
|
9291
|
+
# conditions in their IAM policies, see the [IAM documentation](https://cloud.
|
9292
|
+
# google.com/iam/help/conditions/resource-policies). **JSON example:** ` "
|
9293
|
+
# bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
|
9294
|
+
# "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
|
9295
|
+
# serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
|
9296
|
+
# roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
|
9297
|
+
# ], "condition": ` "title": "expirable access", "description": "Does not grant
|
9298
|
+
# access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
|
9299
|
+
# 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
|
9300
|
+
# bindings: - members: - user:mike@example.com - group:admins@example.com -
|
9301
|
+
# domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
|
9302
|
+
# role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
|
9303
|
+
# com role: roles/resourcemanager.organizationViewer condition: title: expirable
|
9304
|
+
# access description: Does not grant access after Sep 2020 expression: request.
|
9305
|
+
# time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
|
9306
|
+
# a description of IAM and its features, see the [IAM documentation](https://
|
9307
|
+
# cloud.google.com/iam/docs/).
|
9262
9308
|
# Corresponds to the JSON property `policy`
|
9263
9309
|
# @return [Google::Apis::ComputeBeta::Policy]
|
9264
9310
|
attr_accessor :policy
|
@@ -9331,31 +9377,31 @@ module Google
|
|
9331
9377
|
|
9332
9378
|
# An Identity and Access Management (IAM) policy, which specifies access
|
9333
9379
|
# controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
|
9334
|
-
# A `binding` binds one or more `members
|
9335
|
-
# user accounts, service accounts, Google groups, and domains (
|
9336
|
-
# A `role` is a named list of permissions; each `role` can be
|
9337
|
-
# role or a user-created custom role. For some types of Google
|
9338
|
-
# a `binding` can also specify a `condition`, which is a
|
9339
|
-
# allows access to a resource only if the expression
|
9340
|
-
# condition can add constraints based on attributes of
|
9341
|
-
# or both. To learn which resources support
|
9342
|
-
# see the [IAM documentation](https://cloud.
|
9343
|
-
# resource-policies). **JSON example:** ` "
|
9344
|
-
# resourcemanager.organizationAdmin", "members": [
|
9345
|
-
# group:admins@example.com", "domain:google.com", "
|
9346
|
-
# appspot.gserviceaccount.com" ] `, ` "role": "
|
9347
|
-
# organizationViewer", "members": [ "user:eve@example.com"
|
9348
|
-
# title": "expirable access", "description": "Does not grant
|
9349
|
-
# 2020", "expression": "request.time < timestamp('2020-10-01T00:
|
9350
|
-
# ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
|
9351
|
-
# members: - user:mike@example.com - group:admins@example.com -
|
9352
|
-
# com - serviceAccount:my-project-id@appspot.gserviceaccount.com
|
9353
|
-
# resourcemanager.organizationAdmin - members: - user:eve@example.
|
9354
|
-
# roles/resourcemanager.organizationViewer condition: title: expirable
|
9355
|
-
# description: Does not grant access after Sep 2020 expression: request.
|
9356
|
-
# timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
|
9357
|
-
# description of IAM and its features, see the [IAM documentation](https://
|
9358
|
-
# google.com/iam/docs/).
|
9380
|
+
# A `binding` binds one or more `members`, or principals, to a single `role`.
|
9381
|
+
# Principals can be user accounts, service accounts, Google groups, and domains (
|
9382
|
+
# such as G Suite). A `role` is a named list of permissions; each `role` can be
|
9383
|
+
# an IAM predefined role or a user-created custom role. For some types of Google
|
9384
|
+
# Cloud resources, a `binding` can also specify a `condition`, which is a
|
9385
|
+
# logical expression that allows access to a resource only if the expression
|
9386
|
+
# evaluates to `true`. A condition can add constraints based on attributes of
|
9387
|
+
# the request, the resource, or both. To learn which resources support
|
9388
|
+
# conditions in their IAM policies, see the [IAM documentation](https://cloud.
|
9389
|
+
# google.com/iam/help/conditions/resource-policies). **JSON example:** ` "
|
9390
|
+
# bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
|
9391
|
+
# "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
|
9392
|
+
# serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
|
9393
|
+
# roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
|
9394
|
+
# ], "condition": ` "title": "expirable access", "description": "Does not grant
|
9395
|
+
# access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
|
9396
|
+
# 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
|
9397
|
+
# bindings: - members: - user:mike@example.com - group:admins@example.com -
|
9398
|
+
# domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
|
9399
|
+
# role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
|
9400
|
+
# com role: roles/resourcemanager.organizationViewer condition: title: expirable
|
9401
|
+
# access description: Does not grant access after Sep 2020 expression: request.
|
9402
|
+
# time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
|
9403
|
+
# a description of IAM and its features, see the [IAM documentation](https://
|
9404
|
+
# cloud.google.com/iam/docs/).
|
9359
9405
|
# Corresponds to the JSON property `policy`
|
9360
9406
|
# @return [Google::Apis::ComputeBeta::Policy]
|
9361
9407
|
attr_accessor :policy
|
@@ -9477,8 +9523,11 @@ module Google
|
|
9477
9523
|
class GuestOsFeature
|
9478
9524
|
include Google::Apis::Core::Hashable
|
9479
9525
|
|
9480
|
-
# The ID of a supported feature.
|
9481
|
-
# to
|
9526
|
+
# The ID of a supported feature. To add multiple values, use commas to separate
|
9527
|
+
# values. Set to one or more of the following values: - VIRTIO_SCSI_MULTIQUEUE -
|
9528
|
+
# WINDOWS - MULTI_IP_SUBNET - UEFI_COMPATIBLE - SECURE_BOOT - GVNIC -
|
9529
|
+
# SEV_CAPABLE - SUSPEND_RESUME_COMPATIBLE For more information, see Enabling
|
9530
|
+
# guest operating system features.
|
9482
9531
|
# Corresponds to the JSON property `type`
|
9483
9532
|
# @return [String]
|
9484
9533
|
attr_accessor :type
|
@@ -9812,8 +9861,8 @@ module Google
|
|
9812
9861
|
attr_accessor :timeout_sec
|
9813
9862
|
|
9814
9863
|
# Specifies the type of the healthCheck, either TCP, SSL, HTTP, HTTPS or HTTP2.
|
9815
|
-
#
|
9816
|
-
#
|
9864
|
+
# Exactly one of the protocol-specific health check field must be specified,
|
9865
|
+
# which must match type field.
|
9817
9866
|
# Corresponds to the JSON property `type`
|
9818
9867
|
# @return [String]
|
9819
9868
|
attr_accessor :type
|
@@ -10638,7 +10687,8 @@ module Google
|
|
10638
10687
|
# port numbers in the format host:port. * matches any string of ([a-z0-9-.]*).
|
10639
10688
|
# In that case, * must be the first character and must be followed in the
|
10640
10689
|
# pattern by either - or .. * based matching is not supported when the URL map
|
10641
|
-
# is bound to target gRPC proxy that has validateForProxyless field set to
|
10690
|
+
# is bound to a target gRPC proxy that has the validateForProxyless field set to
|
10691
|
+
# true.
|
10642
10692
|
# Corresponds to the JSON property `hosts`
|
10643
10693
|
# @return [Array<String>]
|
10644
10694
|
attr_accessor :hosts
|
@@ -10665,8 +10715,8 @@ module Google
|
|
10665
10715
|
class HttpFaultAbort
|
10666
10716
|
include Google::Apis::Core::Hashable
|
10667
10717
|
|
10668
|
-
# The HTTP status code used to abort the request. The value must be
|
10669
|
-
#
|
10718
|
+
# The HTTP status code used to abort the request. The value must be from 200 to
|
10719
|
+
# 599 inclusive. For gRPC protocol, the gRPC status code is mapped to HTTP
|
10670
10720
|
# status code according to this mapping table. HTTP status 200 is mapped to gRPC
|
10671
10721
|
# status UNKNOWN. Injecting an OK status is currently not supported by Traffic
|
10672
10722
|
# Director.
|
@@ -10674,8 +10724,8 @@ module Google
|
|
10674
10724
|
# @return [Fixnum]
|
10675
10725
|
attr_accessor :http_status
|
10676
10726
|
|
10677
|
-
# The percentage of traffic
|
10678
|
-
# aborted as part of fault injection. The value must be
|
10727
|
+
# The percentage of traffic for connections, operations, or requests that is
|
10728
|
+
# aborted as part of fault injection. The value must be from 0.0 to 100.0
|
10679
10729
|
# inclusive.
|
10680
10730
|
# Corresponds to the JSON property `percentage`
|
10681
10731
|
# @return [Float]
|
@@ -10692,8 +10742,8 @@ module Google
|
|
10692
10742
|
end
|
10693
10743
|
end
|
10694
10744
|
|
10695
|
-
# Specifies the delay introduced by
|
10696
|
-
# to the backend service as part of fault injection.
|
10745
|
+
# Specifies the delay introduced by the load balancer before forwarding the
|
10746
|
+
# request to the backend service as part of fault injection.
|
10697
10747
|
class HttpFaultDelay
|
10698
10748
|
include Google::Apis::Core::Hashable
|
10699
10749
|
|
@@ -10705,9 +10755,9 @@ module Google
|
|
10705
10755
|
# @return [Google::Apis::ComputeBeta::Duration]
|
10706
10756
|
attr_accessor :fixed_delay
|
10707
10757
|
|
10708
|
-
# The percentage of traffic
|
10709
|
-
#
|
10710
|
-
#
|
10758
|
+
# The percentage of traffic for connections, operations, or requests for which a
|
10759
|
+
# delay is introduced as part of fault injection. The value must be from 0.0 to
|
10760
|
+
# 100.0 inclusive.
|
10711
10761
|
# Corresponds to the JSON property `percentage`
|
10712
10762
|
# @return [Float]
|
10713
10763
|
attr_accessor :percentage
|
@@ -10726,9 +10776,9 @@ module Google
|
|
10726
10776
|
# The specification for fault injection introduced into traffic to test the
|
10727
10777
|
# resiliency of clients to backend service failure. As part of fault injection,
|
10728
10778
|
# when clients send requests to a backend service, delays can be introduced by
|
10729
|
-
#
|
10730
|
-
# backend service. Similarly requests from clients can be aborted by the
|
10731
|
-
#
|
10779
|
+
# the load balancer on a percentage of requests before sending those request to
|
10780
|
+
# the backend service. Similarly requests from clients can be aborted by the
|
10781
|
+
# load balancer for a percentage of requests.
|
10732
10782
|
class HttpFaultInjection
|
10733
10783
|
include Google::Apis::Core::Hashable
|
10734
10784
|
|
@@ -10737,8 +10787,8 @@ module Google
|
|
10737
10787
|
# @return [Google::Apis::ComputeBeta::HttpFaultAbort]
|
10738
10788
|
attr_accessor :abort
|
10739
10789
|
|
10740
|
-
# Specifies the delay introduced by
|
10741
|
-
# to the backend service as part of fault injection.
|
10790
|
+
# Specifies the delay introduced by the load balancer before forwarding the
|
10791
|
+
# request to the backend service as part of fault injection.
|
10742
10792
|
# Corresponds to the JSON property `delay`
|
10743
10793
|
# @return [Google::Apis::ComputeBeta::HttpFaultDelay]
|
10744
10794
|
attr_accessor :delay
|
@@ -10796,25 +10846,25 @@ module Google
|
|
10796
10846
|
class HttpHeaderAction
|
10797
10847
|
include Google::Apis::Core::Hashable
|
10798
10848
|
|
10799
|
-
# Headers to add to a matching request
|
10849
|
+
# Headers to add to a matching request before forwarding the request to the
|
10800
10850
|
# backendService.
|
10801
10851
|
# Corresponds to the JSON property `requestHeadersToAdd`
|
10802
10852
|
# @return [Array<Google::Apis::ComputeBeta::HttpHeaderOption>]
|
10803
10853
|
attr_accessor :request_headers_to_add
|
10804
10854
|
|
10805
10855
|
# A list of header names for headers that need to be removed from the request
|
10806
|
-
#
|
10856
|
+
# before forwarding the request to the backendService.
|
10807
10857
|
# Corresponds to the JSON property `requestHeadersToRemove`
|
10808
10858
|
# @return [Array<String>]
|
10809
10859
|
attr_accessor :request_headers_to_remove
|
10810
10860
|
|
10811
|
-
# Headers to add the response
|
10861
|
+
# Headers to add the response before sending the response back to the client.
|
10812
10862
|
# Corresponds to the JSON property `responseHeadersToAdd`
|
10813
10863
|
# @return [Array<Google::Apis::ComputeBeta::HttpHeaderOption>]
|
10814
10864
|
attr_accessor :response_headers_to_add
|
10815
10865
|
|
10816
10866
|
# A list of header names for headers that need to be removed from the response
|
10817
|
-
#
|
10867
|
+
# before sending the response back to the client.
|
10818
10868
|
# Corresponds to the JSON property `responseHeadersToRemove`
|
10819
10869
|
# @return [Array<String>]
|
10820
10870
|
attr_accessor :response_headers_to_remove
|
@@ -10844,21 +10894,21 @@ module Google
|
|
10844
10894
|
|
10845
10895
|
# The name of the HTTP header to match. For matching against the HTTP request's
|
10846
10896
|
# authority, use a headerMatch with the header name ":authority". For matching a
|
10847
|
-
# request's method, use the headerName ":method". When the URL map is bound to
|
10848
|
-
# target gRPC proxy that has validateForProxyless field set to true, only
|
10849
|
-
# binary user-specified custom metadata and the `content-type` header are
|
10897
|
+
# request's method, use the headerName ":method". When the URL map is bound to a
|
10898
|
+
# target gRPC proxy that has the validateForProxyless field set to true, only
|
10899
|
+
# non-binary user-specified custom metadata and the `content-type` header are
|
10850
10900
|
# supported. The following transport-level headers cannot be used in header
|
10851
10901
|
# matching rules: `:authority`, `:method`, `:path`, `:scheme`, `user-agent`, `
|
10852
10902
|
# accept-encoding`, `content-encoding`, `grpc-accept-encoding`, `grpc-encoding`,
|
10853
10903
|
# `grpc-previous-rpc-attempts`, `grpc-tags-bin`, `grpc-timeout` and `grpc-trace-
|
10854
|
-
# bin
|
10904
|
+
# bin`.
|
10855
10905
|
# Corresponds to the JSON property `headerName`
|
10856
10906
|
# @return [String]
|
10857
10907
|
attr_accessor :header_name
|
10858
10908
|
|
10859
|
-
# If set to false, the headerMatch is considered a match if the match
|
10860
|
-
#
|
10861
|
-
# match criteria
|
10909
|
+
# If set to false, the headerMatch is considered a match if the preceding match
|
10910
|
+
# criteria are met. If set to true, the headerMatch is considered a match if the
|
10911
|
+
# preceding match criteria are NOT met. The default setting is false.
|
10862
10912
|
# Corresponds to the JSON property `invertMatch`
|
10863
10913
|
# @return [Boolean]
|
10864
10914
|
attr_accessor :invert_match
|
@@ -10886,13 +10936,13 @@ module Google
|
|
10886
10936
|
attr_accessor :range_match
|
10887
10937
|
|
10888
10938
|
# The value of the header must match the regular expression specified in
|
10889
|
-
# regexMatch. For regular expression
|
10890
|
-
#
|
10891
|
-
#
|
10892
|
-
#
|
10893
|
-
#
|
10894
|
-
#
|
10895
|
-
#
|
10939
|
+
# regexMatch. For more information about regular expression syntax, see Syntax.
|
10940
|
+
# For matching against a port specified in the HTTP request, use a headerMatch
|
10941
|
+
# with headerName set to PORT and a regular expression that satisfies the
|
10942
|
+
# RFC2616 Host header's port specifier. Only one of exactMatch, prefixMatch,
|
10943
|
+
# suffixMatch, regexMatch, presentMatch or rangeMatch must be set. regexMatch
|
10944
|
+
# only applies to load balancers that have loadBalancingScheme set to
|
10945
|
+
# INTERNAL_SELF_MANAGED.
|
10896
10946
|
# Corresponds to the JSON property `regexMatch`
|
10897
10947
|
# @return [String]
|
10898
10948
|
attr_accessor :regex_match
|
@@ -11187,8 +11237,8 @@ module Google
|
|
11187
11237
|
include Google::Apis::Core::Hashable
|
11188
11238
|
|
11189
11239
|
# The queryParameterMatch matches if the value of the parameter exactly matches
|
11190
|
-
# the contents of exactMatch. Only one of presentMatch, exactMatch or
|
11191
|
-
# must be set.
|
11240
|
+
# the contents of exactMatch. Only one of presentMatch, exactMatch, or
|
11241
|
+
# regexMatch must be set.
|
11192
11242
|
# Corresponds to the JSON property `exactMatch`
|
11193
11243
|
# @return [String]
|
11194
11244
|
attr_accessor :exact_match
|
@@ -11201,17 +11251,17 @@ module Google
|
|
11201
11251
|
|
11202
11252
|
# Specifies that the queryParameterMatch matches if the request contains the
|
11203
11253
|
# query parameter, irrespective of whether the parameter has a value or not.
|
11204
|
-
# Only one of presentMatch, exactMatch or regexMatch must be set.
|
11254
|
+
# Only one of presentMatch, exactMatch, or regexMatch must be set.
|
11205
11255
|
# Corresponds to the JSON property `presentMatch`
|
11206
11256
|
# @return [Boolean]
|
11207
11257
|
attr_accessor :present_match
|
11208
11258
|
alias_method :present_match?, :present_match
|
11209
11259
|
|
11210
11260
|
# The queryParameterMatch matches if the value of the parameter matches the
|
11211
|
-
# regular expression specified by regexMatch. For
|
11212
|
-
#
|
11213
|
-
#
|
11214
|
-
#
|
11261
|
+
# regular expression specified by regexMatch. For more information about regular
|
11262
|
+
# expression syntax, see Syntax. Only one of presentMatch, exactMatch, or
|
11263
|
+
# regexMatch must be set. regexMatch only applies when the loadBalancingScheme
|
11264
|
+
# is set to INTERNAL_SELF_MANAGED.
|
11215
11265
|
# Corresponds to the JSON property `regexMatch`
|
11216
11266
|
# @return [String]
|
11217
11267
|
attr_accessor :regex_match
|
@@ -11233,15 +11283,15 @@ module Google
|
|
11233
11283
|
class HttpRedirectAction
|
11234
11284
|
include Google::Apis::Core::Hashable
|
11235
11285
|
|
11236
|
-
# The host that
|
11237
|
-
#
|
11286
|
+
# The host that is used in the redirect response instead of the one that was
|
11287
|
+
# supplied in the request. The value must be from 1 to 255 characters.
|
11238
11288
|
# Corresponds to the JSON property `hostRedirect`
|
11239
11289
|
# @return [String]
|
11240
11290
|
attr_accessor :host_redirect
|
11241
11291
|
|
11242
|
-
# If set to true, the URL scheme in the redirected request is set to
|
11243
|
-
# set to false, the URL scheme of the redirected request
|
11244
|
-
# that of the request. This must only be set for
|
11292
|
+
# If set to true, the URL scheme in the redirected request is set to HTTPS. If
|
11293
|
+
# set to false, the URL scheme of the redirected request remains the same as
|
11294
|
+
# that of the request. This must only be set for URL maps used in
|
11245
11295
|
# TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The
|
11246
11296
|
# default is set to false.
|
11247
11297
|
# Corresponds to the JSON property `httpsRedirect`
|
@@ -11249,11 +11299,11 @@ module Google
|
|
11249
11299
|
attr_accessor :https_redirect
|
11250
11300
|
alias_method :https_redirect?, :https_redirect
|
11251
11301
|
|
11252
|
-
# The path that
|
11253
|
-
#
|
11302
|
+
# The path that is used in the redirect response instead of the one that was
|
11303
|
+
# supplied in the request. pathRedirect cannot be supplied together with
|
11254
11304
|
# prefixRedirect. Supply one alone or neither. If neither is supplied, the path
|
11255
|
-
# of the original request
|
11256
|
-
#
|
11305
|
+
# of the original request is used for the redirect. The value must be from 1 to
|
11306
|
+
# 1024 characters.
|
11257
11307
|
# Corresponds to the JSON property `pathRedirect`
|
11258
11308
|
# @return [String]
|
11259
11309
|
attr_accessor :path_redirect
|
@@ -11261,8 +11311,8 @@ module Google
|
|
11261
11311
|
# The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch,
|
11262
11312
|
# retaining the remaining portion of the URL before redirecting the request.
|
11263
11313
|
# prefixRedirect cannot be supplied together with pathRedirect. Supply one alone
|
11264
|
-
# or neither. If neither is supplied, the path of the original request
|
11265
|
-
#
|
11314
|
+
# or neither. If neither is supplied, the path of the original request is used
|
11315
|
+
# for the redirect. The value must be from 1 to 1024 characters.
|
11266
11316
|
# Corresponds to the JSON property `prefixRedirect`
|
11267
11317
|
# @return [String]
|
11268
11318
|
attr_accessor :prefix_redirect
|
@@ -11271,14 +11321,14 @@ module Google
|
|
11271
11321
|
# MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. -
|
11272
11322
|
# FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. -
|
11273
11323
|
# TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method
|
11274
|
-
#
|
11275
|
-
#
|
11324
|
+
# is retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the
|
11325
|
+
# request method is retained.
|
11276
11326
|
# Corresponds to the JSON property `redirectResponseCode`
|
11277
11327
|
# @return [String]
|
11278
11328
|
attr_accessor :redirect_response_code
|
11279
11329
|
|
11280
11330
|
# If set to true, any accompanying query portion of the original URL is removed
|
11281
|
-
#
|
11331
|
+
# before redirecting the request. If set to false, the query portion of the
|
11282
11332
|
# original URL is retained. The default is set to false.
|
11283
11333
|
# Corresponds to the JSON property `stripQuery`
|
11284
11334
|
# @return [Boolean]
|
@@ -11319,25 +11369,27 @@ module Google
|
|
11319
11369
|
attr_accessor :per_try_timeout
|
11320
11370
|
|
11321
11371
|
# Specifies one or more conditions when this retry policy applies. Valid values
|
11322
|
-
# are: - 5xx:
|
11323
|
-
#
|
11324
|
-
# example
|
11372
|
+
# are: - 5xx: retry is attempted if the instance or endpoint responds with any
|
11373
|
+
# 5xx response code, or if the instance or endpoint does not respond at all. For
|
11374
|
+
# example, disconnects, reset, read timeout, connection failure, and refused
|
11325
11375
|
# streams. - gateway-error: Similar to 5xx, but only applies to response codes
|
11326
|
-
# 502, 503 or 504. -
|
11327
|
-
# connecting to the instance or endpoint
|
11328
|
-
#
|
11329
|
-
#
|
11330
|
-
#
|
11331
|
-
#
|
11332
|
-
#
|
11333
|
-
#
|
11334
|
-
#
|
11335
|
-
#
|
11336
|
-
#
|
11337
|
-
#
|
11338
|
-
#
|
11339
|
-
#
|
11340
|
-
#
|
11376
|
+
# 502, 503 or 504. - connect-failure: a retry is attempted on failures
|
11377
|
+
# connecting to the instance or endpoint. For example, connection timeouts. -
|
11378
|
+
# retriable-4xx: a retry is attempted if the instance or endpoint responds with
|
11379
|
+
# a 4xx response code. The only error that you can retry is error code 409. -
|
11380
|
+
# refused-stream: a retry is attempted if the instance or endpoint resets the
|
11381
|
+
# stream with a REFUSED_STREAM error code. This reset type indicates that it is
|
11382
|
+
# safe to retry. - cancelled: a retry is attempted if the gRPC status code in
|
11383
|
+
# the response header is set to cancelled. - deadline-exceeded: a retry is
|
11384
|
+
# attempted if the gRPC status code in the response header is set to deadline-
|
11385
|
+
# exceeded. - internal: a retry is attempted if the gRPC status code in the
|
11386
|
+
# response header is set to internal. - resource-exhausted: a retry is attempted
|
11387
|
+
# if the gRPC status code in the response header is set to resource-exhausted. -
|
11388
|
+
# unavailable: a retry is attempted if the gRPC status code in the response
|
11389
|
+
# header is set to unavailable. Only the following codes are supported when the
|
11390
|
+
# URL map is bound to target gRPC proxy that has validateForProxyless field set
|
11391
|
+
# to true. - cancelled - deadline-exceeded - internal - resource-exhausted -
|
11392
|
+
# unavailable
|
11341
11393
|
# Corresponds to the JSON property `retryConditions`
|
11342
11394
|
# @return [Array<String>]
|
11343
11395
|
attr_accessor :retry_conditions
|
@@ -11358,8 +11410,9 @@ module Google
|
|
11358
11410
|
class HttpRouteAction
|
11359
11411
|
include Google::Apis::Core::Hashable
|
11360
11412
|
|
11361
|
-
# The specification for allowing client
|
11362
|
-
# W3C
|
11413
|
+
# The specification for allowing client-side cross-origin requests. For more
|
11414
|
+
# information about the W3C recommendation for cross-origin resource sharing (
|
11415
|
+
# CORS), see Fetch API Living Standard.
|
11363
11416
|
# Corresponds to the JSON property `corsPolicy`
|
11364
11417
|
# @return [Google::Apis::ComputeBeta::CorsPolicy]
|
11365
11418
|
attr_accessor :cors_policy
|
@@ -11367,9 +11420,9 @@ module Google
|
|
11367
11420
|
# The specification for fault injection introduced into traffic to test the
|
11368
11421
|
# resiliency of clients to backend service failure. As part of fault injection,
|
11369
11422
|
# when clients send requests to a backend service, delays can be introduced by
|
11370
|
-
#
|
11371
|
-
# backend service. Similarly requests from clients can be aborted by the
|
11372
|
-
#
|
11423
|
+
# the load balancer on a percentage of requests before sending those request to
|
11424
|
+
# the backend service. Similarly requests from clients can be aborted by the
|
11425
|
+
# load balancer for a percentage of requests.
|
11373
11426
|
# Corresponds to the JSON property `faultInjectionPolicy`
|
11374
11427
|
# @return [Google::Apis::ComputeBeta::HttpFaultInjection]
|
11375
11428
|
attr_accessor :fault_injection_policy
|
@@ -11383,9 +11436,9 @@ module Google
|
|
11383
11436
|
attr_accessor :max_stream_duration
|
11384
11437
|
|
11385
11438
|
# A policy that specifies how requests intended for the route's backends are
|
11386
|
-
# shadowed to a separate mirrored backend service.
|
11387
|
-
# for responses from the shadow service.
|
11388
|
-
# service, the host
|
11439
|
+
# shadowed to a separate mirrored backend service. The load balancer doesn't
|
11440
|
+
# wait for responses from the shadow service. Before sending traffic to the
|
11441
|
+
# shadow service, the host or authority header is suffixed with -shadow.
|
11389
11442
|
# Corresponds to the JSON property `requestMirrorPolicy`
|
11390
11443
|
# @return [Google::Apis::ComputeBeta::RequestMirrorPolicy]
|
11391
11444
|
attr_accessor :request_mirror_policy
|
@@ -11413,7 +11466,7 @@ module Google
|
|
11413
11466
|
# occurs. The weights determine the fraction of traffic that flows to their
|
11414
11467
|
# corresponding backend service. If all traffic needs to go to a single backend
|
11415
11468
|
# service, there must be one weightedBackendService with weight set to a non-
|
11416
|
-
# zero number.
|
11469
|
+
# zero number. After a backend service is identified and before forwarding the
|
11417
11470
|
# request to the backend service, advanced routing actions such as URL rewrites
|
11418
11471
|
# and header transformations are applied depending on additional settings
|
11419
11472
|
# specified in this HttpRouteAction.
|
@@ -11438,8 +11491,8 @@ module Google
|
|
11438
11491
|
end
|
11439
11492
|
end
|
11440
11493
|
|
11441
|
-
#
|
11442
|
-
# routing action that load balancing proxies
|
11494
|
+
# The HttpRouteRule setting specifies how to match an HTTP request and the
|
11495
|
+
# corresponding routing action that load balancing proxies perform.
|
11443
11496
|
class HttpRouteRule
|
11444
11497
|
include Google::Apis::Core::Hashable
|
11445
11498
|
|
@@ -11456,9 +11509,9 @@ module Google
|
|
11456
11509
|
attr_accessor :header_action
|
11457
11510
|
|
11458
11511
|
# Outbound route specific configuration for networkservices.HttpFilter resources
|
11459
|
-
# enabled by Traffic Director. httpFilterConfigs only applies for
|
11512
|
+
# enabled by Traffic Director. httpFilterConfigs only applies for load balancers
|
11460
11513
|
# with loadBalancingScheme set to INTERNAL_SELF_MANAGED. See ForwardingRule for
|
11461
|
-
# more details. Not supported when the URL map is bound to target gRPC proxy
|
11514
|
+
# more details. Not supported when the URL map is bound to a target gRPC proxy
|
11462
11515
|
# that has validateForProxyless field set to true.
|
11463
11516
|
# Corresponds to the JSON property `httpFilterConfigs`
|
11464
11517
|
# @return [Array<Google::Apis::ComputeBeta::HttpFilterConfig>]
|
@@ -11466,10 +11519,10 @@ module Google
|
|
11466
11519
|
|
11467
11520
|
# Outbound route specific metadata supplied to networkservices.HttpFilter
|
11468
11521
|
# resources enabled by Traffic Director. httpFilterMetadata only applies for
|
11469
|
-
#
|
11522
|
+
# load balancers with loadBalancingScheme set to INTERNAL_SELF_MANAGED. See
|
11470
11523
|
# ForwardingRule for more details. The only configTypeUrl supported is type.
|
11471
11524
|
# googleapis.com/google.protobuf.Struct Not supported when the URL map is bound
|
11472
|
-
# to target gRPC proxy that has validateForProxyless field set to true.
|
11525
|
+
# to a target gRPC proxy that has validateForProxyless field set to true.
|
11473
11526
|
# Corresponds to the JSON property `httpFilterMetadata`
|
11474
11527
|
# @return [Array<Google::Apis::ComputeBeta::HttpFilterConfig>]
|
11475
11528
|
attr_accessor :http_filter_metadata
|
@@ -11484,11 +11537,11 @@ module Google
|
|
11484
11537
|
attr_accessor :match_rules
|
11485
11538
|
|
11486
11539
|
# For routeRules within a given pathMatcher, priority determines the order in
|
11487
|
-
# which load balancer
|
11488
|
-
#
|
11540
|
+
# which a load balancer interprets routeRules. RouteRules are evaluated in order
|
11541
|
+
# of priority, from the lowest to highest number. The priority of a rule
|
11489
11542
|
# decreases as its number increases (1, 2, 3, N+1). The first rule that matches
|
11490
11543
|
# the request is applied. You cannot configure two or more routeRules with the
|
11491
|
-
# same priority. Priority for each rule must be set to a number
|
11544
|
+
# same priority. Priority for each rule must be set to a number from 0 to
|
11492
11545
|
# 2147483647 inclusive. Priority numbers can have gaps, which enable you to add
|
11493
11546
|
# or remove rules in the future without affecting the rest of the rules. For
|
11494
11547
|
# example, 1, 2, 3, 4, 5, 9, 12, 16 is a valid series of priority numbers to
|
@@ -11499,24 +11552,24 @@ module Google
|
|
11499
11552
|
attr_accessor :priority
|
11500
11553
|
|
11501
11554
|
# In response to a matching matchRule, the load balancer performs advanced
|
11502
|
-
# routing actions
|
11555
|
+
# routing actions, such as URL rewrites and header transformations, before
|
11503
11556
|
# forwarding the request to the selected backend. If routeAction specifies any
|
11504
11557
|
# weightedBackendServices, service must not be set. Conversely if service is set,
|
11505
11558
|
# routeAction cannot contain any weightedBackendServices. Only one of
|
11506
11559
|
# urlRedirect, service or routeAction.weightedBackendService must be set.
|
11507
11560
|
# UrlMaps for external HTTP(S) load balancers support only the urlRewrite action
|
11508
|
-
# within a
|
11561
|
+
# within a route rule's routeAction.
|
11509
11562
|
# Corresponds to the JSON property `routeAction`
|
11510
11563
|
# @return [Google::Apis::ComputeBeta::HttpRouteAction]
|
11511
11564
|
attr_accessor :route_action
|
11512
11565
|
|
11513
11566
|
# The full or partial URL of the backend service resource to which traffic is
|
11514
|
-
# directed if this rule is matched. If routeAction is
|
11515
|
-
#
|
11516
|
-
#
|
11517
|
-
#
|
11518
|
-
#
|
11519
|
-
#
|
11567
|
+
# directed if this rule is matched. If routeAction is also specified, advanced
|
11568
|
+
# routing actions, such as URL rewrites, take effect before sending the request
|
11569
|
+
# to the backend. However, if service is specified, routeAction cannot contain
|
11570
|
+
# any weightedBackendServices. Conversely, if routeAction specifies any
|
11571
|
+
# weightedBackendServices, service must not be specified. Only one of
|
11572
|
+
# urlRedirect, service or routeAction.weightedBackendService must be set.
|
11520
11573
|
# Corresponds to the JSON property `service`
|
11521
11574
|
# @return [String]
|
11522
11575
|
attr_accessor :service
|
@@ -11551,9 +11604,9 @@ module Google
|
|
11551
11604
|
|
11552
11605
|
# For satisfying the matchRule condition, the path of the request must exactly
|
11553
11606
|
# match the value specified in fullPathMatch after removing any query parameters
|
11554
|
-
# and anchor that may be part of the original URL. fullPathMatch must be
|
11555
|
-
#
|
11556
|
-
#
|
11607
|
+
# and anchor that may be part of the original URL. fullPathMatch must be from 1
|
11608
|
+
# to 1024 characters. Only one of prefixMatch, fullPathMatch or regexMatch must
|
11609
|
+
# be specified.
|
11557
11610
|
# Corresponds to the JSON property `fullPathMatch`
|
11558
11611
|
# @return [String]
|
11559
11612
|
attr_accessor :full_path_match
|
@@ -11566,53 +11619,52 @@ module Google
|
|
11566
11619
|
|
11567
11620
|
# Specifies that prefixMatch and fullPathMatch matches are case sensitive. The
|
11568
11621
|
# default value is false. ignoreCase must not be used with regexMatch. Not
|
11569
|
-
# supported when the URL map is bound to target gRPC proxy.
|
11622
|
+
# supported when the URL map is bound to a target gRPC proxy.
|
11570
11623
|
# Corresponds to the JSON property `ignoreCase`
|
11571
11624
|
# @return [Boolean]
|
11572
11625
|
attr_accessor :ignore_case
|
11573
11626
|
alias_method :ignore_case?, :ignore_case
|
11574
11627
|
|
11575
|
-
# Opaque filter criteria used by
|
11576
|
-
# to a limited set of xDS compliant clients. In their xDS requests
|
11577
|
-
#
|
11578
|
-
# relevant routing configuration is made available to those proxies. For
|
11579
|
-
# metadataFilter in this list, if its filterMatchCriteria is set to
|
11580
|
-
# at least one of the filterLabels must match the corresponding label
|
11581
|
-
# in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then
|
11582
|
-
# its filterLabels must match with corresponding labels provided in the
|
11583
|
-
# If multiple
|
11584
|
-
# in order to be considered a match. metadataFilters specified here
|
11628
|
+
# Opaque filter criteria used by the load balancer to restrict routing
|
11629
|
+
# configuration to a limited set of xDS compliant clients. In their xDS requests
|
11630
|
+
# to the load balancer, xDS clients present node metadata. When there is a match,
|
11631
|
+
# the relevant routing configuration is made available to those proxies. For
|
11632
|
+
# each metadataFilter in this list, if its filterMatchCriteria is set to
|
11633
|
+
# MATCH_ANY, at least one of the filterLabels must match the corresponding label
|
11634
|
+
# provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then
|
11635
|
+
# all of its filterLabels must match with corresponding labels provided in the
|
11636
|
+
# metadata. If multiple metadata filters are specified, all of them need to be
|
11637
|
+
# satisfied in order to be considered a match. metadataFilters specified here is
|
11585
11638
|
# applied after those specified in ForwardingRule that refers to the UrlMap this
|
11586
|
-
# HttpRouteRuleMatch belongs to. metadataFilters only applies to
|
11587
|
-
# that have
|
11588
|
-
#
|
11589
|
-
#
|
11639
|
+
# HttpRouteRuleMatch belongs to. metadataFilters only applies to load balancers
|
11640
|
+
# that have loadBalancingScheme set to INTERNAL_SELF_MANAGED. Not supported when
|
11641
|
+
# the URL map is bound to a target gRPC proxy that has validateForProxyless
|
11642
|
+
# field set to true.
|
11590
11643
|
# Corresponds to the JSON property `metadataFilters`
|
11591
11644
|
# @return [Array<Google::Apis::ComputeBeta::MetadataFilter>]
|
11592
11645
|
attr_accessor :metadata_filters
|
11593
11646
|
|
11594
11647
|
# For satisfying the matchRule condition, the request's path must begin with the
|
11595
|
-
# specified prefixMatch. prefixMatch must begin with a /. The value must be
|
11596
|
-
#
|
11597
|
-
#
|
11648
|
+
# specified prefixMatch. prefixMatch must begin with a /. The value must be from
|
11649
|
+
# 1 to 1024 characters. Only one of prefixMatch, fullPathMatch or regexMatch
|
11650
|
+
# must be specified.
|
11598
11651
|
# Corresponds to the JSON property `prefixMatch`
|
11599
11652
|
# @return [String]
|
11600
11653
|
attr_accessor :prefix_match
|
11601
11654
|
|
11602
11655
|
# Specifies a list of query parameter match criteria, all of which must match
|
11603
11656
|
# corresponding query parameters in the request. Not supported when the URL map
|
11604
|
-
# is bound to target gRPC proxy.
|
11657
|
+
# is bound to a target gRPC proxy.
|
11605
11658
|
# Corresponds to the JSON property `queryParameterMatches`
|
11606
11659
|
# @return [Array<Google::Apis::ComputeBeta::HttpQueryParameterMatch>]
|
11607
11660
|
attr_accessor :query_parameter_matches
|
11608
11661
|
|
11609
11662
|
# For satisfying the matchRule condition, the path of the request must satisfy
|
11610
11663
|
# the regular expression specified in regexMatch after removing any query
|
11611
|
-
# parameters and anchor supplied with the original URL. For
|
11612
|
-
#
|
11613
|
-
# fullPathMatch or regexMatch must be specified.
|
11614
|
-
#
|
11615
|
-
# INTERNAL_SELF_MANAGED.
|
11664
|
+
# parameters and anchor supplied with the original URL. For more information
|
11665
|
+
# about regular expression syntax, see Syntax. Only one of prefixMatch,
|
11666
|
+
# fullPathMatch or regexMatch must be specified. regexMatch only applies to load
|
11667
|
+
# balancers that have loadBalancingScheme set to INTERNAL_SELF_MANAGED.
|
11616
11668
|
# Corresponds to the JSON property `regexMatch`
|
11617
11669
|
# @return [String]
|
11618
11670
|
attr_accessor :regex_match
|
@@ -11900,8 +11952,8 @@ module Google
|
|
11900
11952
|
attr_accessor :family
|
11901
11953
|
|
11902
11954
|
# A list of features to enable on the guest operating system. Applicable only
|
11903
|
-
# for bootable images.
|
11904
|
-
#
|
11955
|
+
# for bootable images. To see a list of available options, see the
|
11956
|
+
# guestOSfeatures[].type parameter.
|
11905
11957
|
# Corresponds to the JSON property `guestOsFeatures`
|
11906
11958
|
# @return [Array<Google::Apis::ComputeBeta::GuestOsFeature>]
|
11907
11959
|
attr_accessor :guest_os_features
|
@@ -15318,7 +15370,7 @@ module Google
|
|
15318
15370
|
# @return [Array<Google::Apis::ComputeBeta::NetworkInterface>]
|
15319
15371
|
attr_accessor :network_interfaces
|
15320
15372
|
|
15321
|
-
#
|
15373
|
+
# Note that for MachineImage, this is not supported yet.
|
15322
15374
|
# Corresponds to the JSON property `networkPerformanceConfig`
|
15323
15375
|
# @return [Google::Apis::ComputeBeta::NetworkPerformanceConfig]
|
15324
15376
|
attr_accessor :network_performance_config
|
@@ -15329,7 +15381,8 @@ module Google
|
|
15329
15381
|
attr_accessor :post_key_revocation_action_type
|
15330
15382
|
|
15331
15383
|
# The private IPv6 google access type for VMs. If not specified, use
|
15332
|
-
# INHERIT_FROM_SUBNETWORK as default.
|
15384
|
+
# INHERIT_FROM_SUBNETWORK as default. Note that for MachineImage, this is not
|
15385
|
+
# supported yet.
|
15333
15386
|
# Corresponds to the JSON property `privateIpv6GoogleAccess`
|
15334
15387
|
# @return [String]
|
15335
15388
|
attr_accessor :private_ipv6_google_access
|
@@ -15340,7 +15393,7 @@ module Google
|
|
15340
15393
|
attr_accessor :reservation_affinity
|
15341
15394
|
|
15342
15395
|
# Resource policies (names, not ULRs) applied to instances created from these
|
15343
|
-
# properties.
|
15396
|
+
# properties. Note that for MachineImage, this is not supported yet.
|
15344
15397
|
# Corresponds to the JSON property `resourcePolicies`
|
15345
15398
|
# @return [Array<String>]
|
15346
15399
|
attr_accessor :resource_policies
|
@@ -16264,6 +16317,14 @@ module Google
|
|
16264
16317
|
# @return [Fixnum]
|
16265
16318
|
attr_accessor :requested_link_count
|
16266
16319
|
|
16320
|
+
# [Output Only] Set to true if the resource satisfies the zone separation
|
16321
|
+
# organization policy constraints and false otherwise. Defaults to false if the
|
16322
|
+
# field is not present.
|
16323
|
+
# Corresponds to the JSON property `satisfiesPzs`
|
16324
|
+
# @return [Boolean]
|
16325
|
+
attr_accessor :satisfies_pzs
|
16326
|
+
alias_method :satisfies_pzs?, :satisfies_pzs
|
16327
|
+
|
16267
16328
|
# [Output Only] Server-defined URL for the resource.
|
16268
16329
|
# Corresponds to the JSON property `selfLink`
|
16269
16330
|
# @return [String]
|
@@ -16308,6 +16369,7 @@ module Google
|
|
16308
16369
|
@peer_ip_address = args[:peer_ip_address] if args.key?(:peer_ip_address)
|
16309
16370
|
@provisioned_link_count = args[:provisioned_link_count] if args.key?(:provisioned_link_count)
|
16310
16371
|
@requested_link_count = args[:requested_link_count] if args.key?(:requested_link_count)
|
16372
|
+
@satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
|
16311
16373
|
@self_link = args[:self_link] if args.key?(:self_link)
|
16312
16374
|
@state = args[:state] if args.key?(:state)
|
16313
16375
|
end
|
@@ -16368,7 +16430,10 @@ module Google
|
|
16368
16430
|
# @return [String]
|
16369
16431
|
attr_accessor :customer_router_ip_address
|
16370
16432
|
|
16371
|
-
# [Output
|
16433
|
+
# [Output only for types PARTNER and DEDICATED. Not present for PARTNER_PROVIDER.
|
16434
|
+
# ] Dataplane version for this InterconnectAttachment. This field is only
|
16435
|
+
# present for Dataplane version 2 and higher. Absence of this field in the API
|
16436
|
+
# output indicates that the Dataplane is version 1.
|
16372
16437
|
# Corresponds to the JSON property `dataplaneVersion`
|
16373
16438
|
# @return [Fixnum]
|
16374
16439
|
attr_accessor :dataplane_version
|
@@ -16533,6 +16598,14 @@ module Google
|
|
16533
16598
|
# @return [String]
|
16534
16599
|
attr_accessor :router
|
16535
16600
|
|
16601
|
+
# [Output Only] Set to true if the resource satisfies the zone separation
|
16602
|
+
# organization policy constraints and false otherwise. Defaults to false if the
|
16603
|
+
# field is not present.
|
16604
|
+
# Corresponds to the JSON property `satisfiesPzs`
|
16605
|
+
# @return [Boolean]
|
16606
|
+
attr_accessor :satisfies_pzs
|
16607
|
+
alias_method :satisfies_pzs?, :satisfies_pzs
|
16608
|
+
|
16536
16609
|
# [Output Only] Server-defined URL for the resource.
|
16537
16610
|
# Corresponds to the JSON property `selfLink`
|
16538
16611
|
# @return [String]
|
@@ -16604,6 +16677,7 @@ module Google
|
|
16604
16677
|
@private_interconnect_info = args[:private_interconnect_info] if args.key?(:private_interconnect_info)
|
16605
16678
|
@region = args[:region] if args.key?(:region)
|
16606
16679
|
@router = args[:router] if args.key?(:router)
|
16680
|
+
@satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
|
16607
16681
|
@self_link = args[:self_link] if args.key?(:self_link)
|
16608
16682
|
@state = args[:state] if args.key?(:state)
|
16609
16683
|
@type = args[:type] if args.key?(:type)
|
@@ -17431,6 +17505,13 @@ module Google
|
|
17431
17505
|
# @return [String]
|
17432
17506
|
attr_accessor :status
|
17433
17507
|
|
17508
|
+
# [Output Only] Set to true for locations that support physical zone separation.
|
17509
|
+
# Defaults to false if the field is not present.
|
17510
|
+
# Corresponds to the JSON property `supportsPzs`
|
17511
|
+
# @return [Boolean]
|
17512
|
+
attr_accessor :supports_pzs
|
17513
|
+
alias_method :supports_pzs?, :supports_pzs
|
17514
|
+
|
17434
17515
|
def initialize(**args)
|
17435
17516
|
update!(**args)
|
17436
17517
|
end
|
@@ -17452,6 +17533,7 @@ module Google
|
|
17452
17533
|
@region_infos = args[:region_infos] if args.key?(:region_infos)
|
17453
17534
|
@self_link = args[:self_link] if args.key?(:self_link)
|
17454
17535
|
@status = args[:status] if args.key?(:status)
|
17536
|
+
@supports_pzs = args[:supports_pzs] if args.key?(:supports_pzs)
|
17455
17537
|
end
|
17456
17538
|
end
|
17457
17539
|
|
@@ -18098,6 +18180,11 @@ module Google
|
|
18098
18180
|
# @return [Hash<String,Google::Apis::ComputeBeta::LocationPolicyLocation>]
|
18099
18181
|
attr_accessor :locations
|
18100
18182
|
|
18183
|
+
# Strategy for distributing VMs across zones in a region.
|
18184
|
+
# Corresponds to the JSON property `targetShape`
|
18185
|
+
# @return [String]
|
18186
|
+
attr_accessor :target_shape
|
18187
|
+
|
18101
18188
|
def initialize(**args)
|
18102
18189
|
update!(**args)
|
18103
18190
|
end
|
@@ -18105,6 +18192,7 @@ module Google
|
|
18105
18192
|
# Update properties of this object
|
18106
18193
|
def update!(**args)
|
18107
18194
|
@locations = args[:locations] if args.key?(:locations)
|
18195
|
+
@target_shape = args[:target_shape] if args.key?(:target_shape)
|
18108
18196
|
end
|
18109
18197
|
end
|
18110
18198
|
|
@@ -18291,6 +18379,11 @@ module Google
|
|
18291
18379
|
# @return [Fixnum]
|
18292
18380
|
attr_accessor :id
|
18293
18381
|
|
18382
|
+
# [Output Only] Properties of source instance
|
18383
|
+
# Corresponds to the JSON property `instanceProperties`
|
18384
|
+
# @return [Google::Apis::ComputeBeta::InstanceProperties]
|
18385
|
+
attr_accessor :instance_properties
|
18386
|
+
|
18294
18387
|
# [Output Only] The resource type, which is always compute#machineImage for
|
18295
18388
|
# machine image.
|
18296
18389
|
# Corresponds to the JSON property `kind`
|
@@ -18326,6 +18419,12 @@ module Google
|
|
18326
18419
|
attr_accessor :satisfies_pzs
|
18327
18420
|
alias_method :satisfies_pzs?, :satisfies_pzs
|
18328
18421
|
|
18422
|
+
# An array of Machine Image specific properties for disks attached to the source
|
18423
|
+
# instance
|
18424
|
+
# Corresponds to the JSON property `savedDisks`
|
18425
|
+
# @return [Array<Google::Apis::ComputeBeta::SavedDisk>]
|
18426
|
+
attr_accessor :saved_disks
|
18427
|
+
|
18329
18428
|
# [Output Only] The URL for this machine image. The server defines this URL.
|
18330
18429
|
# Corresponds to the JSON property `selfLink`
|
18331
18430
|
# @return [String]
|
@@ -18346,7 +18445,8 @@ module Google
|
|
18346
18445
|
# @return [String]
|
18347
18446
|
attr_accessor :source_instance
|
18348
18447
|
|
18349
|
-
#
|
18448
|
+
# DEPRECATED: Please use compute#instanceProperties instead. New properties will
|
18449
|
+
# not be added to this field.
|
18350
18450
|
# Corresponds to the JSON property `sourceInstanceProperties`
|
18351
18451
|
# @return [Google::Apis::ComputeBeta::SourceInstanceProperties]
|
18352
18452
|
attr_accessor :source_instance_properties
|
@@ -18378,10 +18478,12 @@ module Google
|
|
18378
18478
|
@description = args[:description] if args.key?(:description)
|
18379
18479
|
@guest_flush = args[:guest_flush] if args.key?(:guest_flush)
|
18380
18480
|
@id = args[:id] if args.key?(:id)
|
18481
|
+
@instance_properties = args[:instance_properties] if args.key?(:instance_properties)
|
18381
18482
|
@kind = args[:kind] if args.key?(:kind)
|
18382
18483
|
@machine_image_encryption_key = args[:machine_image_encryption_key] if args.key?(:machine_image_encryption_key)
|
18383
18484
|
@name = args[:name] if args.key?(:name)
|
18384
18485
|
@satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
|
18486
|
+
@saved_disks = args[:saved_disks] if args.key?(:saved_disks)
|
18385
18487
|
@self_link = args[:self_link] if args.key?(:self_link)
|
18386
18488
|
@source_disk_encryption_keys = args[:source_disk_encryption_keys] if args.key?(:source_disk_encryption_keys)
|
18387
18489
|
@source_instance = args[:source_instance] if args.key?(:source_instance)
|
@@ -19256,18 +19358,18 @@ module Google
|
|
19256
19358
|
end
|
19257
19359
|
end
|
19258
19360
|
|
19259
|
-
# Opaque filter criteria used by
|
19260
|
-
# to a limited set of
|
19261
|
-
#
|
19262
|
-
# to match criteria specified here. If a match takes place,
|
19263
|
-
# configuration is made available to those proxies. For each
|
19264
|
-
# this list, if its filterMatchCriteria is set to MATCH_ANY,
|
19265
|
-
# filterLabels must match the corresponding label provided
|
19266
|
-
# its filterMatchCriteria is set to MATCH_ALL, then all of
|
19267
|
-
# match with corresponding labels provided in the metadata.
|
19268
|
-
# metadataFilters would be: if
|
19269
|
-
# receive routing configuration when values in metadataFilters
|
19270
|
-
# supplied in of their XDS requests to loadbalancers.
|
19361
|
+
# Opaque filter criteria used by load balancers to restrict routing
|
19362
|
+
# configuration to a limited set of load balancing proxies. Proxies and sidecars
|
19363
|
+
# involved in load balancing would typically present metadata to the load
|
19364
|
+
# balancers that need to match criteria specified here. If a match takes place,
|
19365
|
+
# the relevant configuration is made available to those proxies. For each
|
19366
|
+
# metadataFilter in this list, if its filterMatchCriteria is set to MATCH_ANY,
|
19367
|
+
# at least one of the filterLabels must match the corresponding label provided
|
19368
|
+
# in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then all of
|
19369
|
+
# its filterLabels must match with corresponding labels provided in the metadata.
|
19370
|
+
# An example for using metadataFilters would be: if load balancing involves
|
19371
|
+
# Envoys, they receive routing configuration when values in metadataFilters
|
19372
|
+
# match values supplied in of their XDS requests to loadbalancers.
|
19271
19373
|
class MetadataFilter
|
19272
19374
|
include Google::Apis::Core::Hashable
|
19273
19375
|
|
@@ -19278,11 +19380,11 @@ module Google
|
|
19278
19380
|
# @return [Array<Google::Apis::ComputeBeta::MetadataFilterLabelMatch>]
|
19279
19381
|
attr_accessor :filter_labels
|
19280
19382
|
|
19281
|
-
# Specifies how individual
|
19282
|
-
#
|
19283
|
-
# MATCH_ANY:
|
19284
|
-
# provided metadata. - MATCH_ALL:
|
19285
|
-
# the provided metadata.
|
19383
|
+
# Specifies how individual filter label matches within the list of filterLabels
|
19384
|
+
# and contributes toward the overall metadataFilter match. Supported values are:
|
19385
|
+
# - MATCH_ANY: at least one of the filterLabels must have a matching label in
|
19386
|
+
# the provided metadata. - MATCH_ALL: all filterLabels must have matching labels
|
19387
|
+
# in the provided metadata.
|
19286
19388
|
# Corresponds to the JSON property `filterMatchCriteria`
|
19287
19389
|
# @return [String]
|
19288
19390
|
attr_accessor :filter_match_criteria
|
@@ -19299,7 +19401,7 @@ module Google
|
|
19299
19401
|
end
|
19300
19402
|
|
19301
19403
|
# MetadataFilter label name value pairs that are expected to match corresponding
|
19302
|
-
# labels presented as metadata to the
|
19404
|
+
# labels presented as metadata to the load balancer.
|
19303
19405
|
class MetadataFilterLabelMatch
|
19304
19406
|
include Google::Apis::Core::Hashable
|
19305
19407
|
|
@@ -20510,14 +20612,15 @@ module Google
|
|
20510
20612
|
# @return [String]
|
20511
20613
|
attr_accessor :name
|
20512
20614
|
|
20513
|
-
# URL of the network resource for this instance. When creating an instance,
|
20514
|
-
# neither the network nor the subnetwork is specified, the default network
|
20515
|
-
# global/networks/default is used
|
20516
|
-
#
|
20517
|
-
#
|
20518
|
-
#
|
20519
|
-
#
|
20520
|
-
# global/networks/
|
20615
|
+
# URL of the VPC network resource for this instance. When creating an instance,
|
20616
|
+
# if neither the network nor the subnetwork is specified, the default network
|
20617
|
+
# global/networks/default is used. If the selected project doesn't have the
|
20618
|
+
# default network, you must specify a network or subnet. If the network is not
|
20619
|
+
# specified but the subnetwork is specified, the network is inferred. If you
|
20620
|
+
# specify this property, you can specify the network as a full or partial URL.
|
20621
|
+
# For example, the following are all valid URLs: - https://www.googleapis.com/
|
20622
|
+
# compute/v1/projects/project/global/networks/ network - projects/project/global/
|
20623
|
+
# networks/network - global/networks/default
|
20521
20624
|
# Corresponds to the JSON property `network`
|
20522
20625
|
# @return [String]
|
20523
20626
|
attr_accessor :network
|
@@ -20726,7 +20829,8 @@ module Google
|
|
20726
20829
|
attr_accessor :exchange_subnet_routes
|
20727
20830
|
alias_method :exchange_subnet_routes?, :exchange_subnet_routes
|
20728
20831
|
|
20729
|
-
# Whether to export the custom routes to peer network.
|
20832
|
+
# Whether to export the custom routes to peer network. The default value is
|
20833
|
+
# false.
|
20730
20834
|
# Corresponds to the JSON property `exportCustomRoutes`
|
20731
20835
|
# @return [Boolean]
|
20732
20836
|
attr_accessor :export_custom_routes
|
@@ -20740,7 +20844,8 @@ module Google
|
|
20740
20844
|
attr_accessor :export_subnet_routes_with_public_ip
|
20741
20845
|
alias_method :export_subnet_routes_with_public_ip?, :export_subnet_routes_with_public_ip
|
20742
20846
|
|
20743
|
-
# Whether to import the custom routes from peer network.
|
20847
|
+
# Whether to import the custom routes from peer network. The default value is
|
20848
|
+
# false.
|
20744
20849
|
# Corresponds to the JSON property `importCustomRoutes`
|
20745
20850
|
# @return [Boolean]
|
20746
20851
|
attr_accessor :import_custom_routes
|
@@ -24426,37 +24531,37 @@ module Google
|
|
24426
24531
|
|
24427
24532
|
# A matcher for the path portion of the URL. The BackendService from the longest-
|
24428
24533
|
# matched rule will serve the URL. If no rule was matched, the default service
|
24429
|
-
#
|
24534
|
+
# is used.
|
24430
24535
|
class PathMatcher
|
24431
24536
|
include Google::Apis::Core::Hashable
|
24432
24537
|
|
24433
24538
|
# defaultRouteAction takes effect when none of the pathRules or routeRules match.
|
24434
|
-
# The load balancer performs advanced routing actions
|
24435
|
-
# transformations,
|
24539
|
+
# The load balancer performs advanced routing actions, such as URL rewrites and
|
24540
|
+
# header transformations, before forwarding the request to the selected backend.
|
24436
24541
|
# If defaultRouteAction specifies any weightedBackendServices, defaultService
|
24437
24542
|
# must not be set. Conversely if defaultService is set, defaultRouteAction
|
24438
24543
|
# cannot contain any weightedBackendServices. Only one of defaultRouteAction or
|
24439
24544
|
# defaultUrlRedirect must be set. UrlMaps for external HTTP(S) load balancers
|
24440
|
-
# support only the urlRewrite action within a
|
24545
|
+
# support only the urlRewrite action within a path matcher's defaultRouteAction.
|
24441
24546
|
# Corresponds to the JSON property `defaultRouteAction`
|
24442
24547
|
# @return [Google::Apis::ComputeBeta::HttpRouteAction]
|
24443
24548
|
attr_accessor :default_route_action
|
24444
24549
|
|
24445
|
-
# The full or partial URL to the BackendService resource. This
|
24550
|
+
# The full or partial URL to the BackendService resource. This URL is used if
|
24446
24551
|
# none of the pathRules or routeRules defined by this PathMatcher are matched.
|
24447
24552
|
# For example, the following are all valid URLs to a BackendService resource: -
|
24448
24553
|
# https://www.googleapis.com/compute/v1/projects/project /global/backendServices/
|
24449
24554
|
# backendService - compute/v1/projects/project/global/backendServices/
|
24450
24555
|
# backendService - global/backendServices/backendService If defaultRouteAction
|
24451
|
-
# is
|
24452
|
-
#
|
24453
|
-
#
|
24454
|
-
#
|
24455
|
-
#
|
24456
|
-
#
|
24457
|
-
#
|
24458
|
-
#
|
24459
|
-
#
|
24556
|
+
# is also specified, advanced routing actions, such as URL rewrites, take effect
|
24557
|
+
# before sending the request to the backend. However, if defaultService is
|
24558
|
+
# specified, defaultRouteAction cannot contain any weightedBackendServices.
|
24559
|
+
# Conversely, if defaultRouteAction specifies any weightedBackendServices,
|
24560
|
+
# defaultService must not be specified. Only one of defaultService,
|
24561
|
+
# defaultUrlRedirect , or defaultRouteAction.weightedBackendService must be set.
|
24562
|
+
# Authorization requires one or more of the following Google IAM permissions on
|
24563
|
+
# the specified resource default_service: - compute.backendBuckets.use - compute.
|
24564
|
+
# backendServices.use
|
24460
24565
|
# Corresponds to the JSON property `defaultService`
|
24461
24566
|
# @return [String]
|
24462
24567
|
attr_accessor :default_service
|
@@ -24532,23 +24637,23 @@ module Google
|
|
24532
24637
|
attr_accessor :paths
|
24533
24638
|
|
24534
24639
|
# In response to a matching path, the load balancer performs advanced routing
|
24535
|
-
# actions
|
24640
|
+
# actions, such as URL rewrites and header transformations, before forwarding
|
24536
24641
|
# the request to the selected backend. If routeAction specifies any
|
24537
24642
|
# weightedBackendServices, service must not be set. Conversely if service is set,
|
24538
24643
|
# routeAction cannot contain any weightedBackendServices. Only one of
|
24539
|
-
# routeAction or urlRedirect must be set.
|
24540
|
-
# balancers support only the urlRewrite action within a
|
24644
|
+
# routeAction or urlRedirect must be set. URL maps for external HTTP(S) load
|
24645
|
+
# balancers support only the urlRewrite action within a path rule's routeAction.
|
24541
24646
|
# Corresponds to the JSON property `routeAction`
|
24542
24647
|
# @return [Google::Apis::ComputeBeta::HttpRouteAction]
|
24543
24648
|
attr_accessor :route_action
|
24544
24649
|
|
24545
24650
|
# The full or partial URL of the backend service resource to which traffic is
|
24546
|
-
# directed if this rule is matched. If routeAction is
|
24547
|
-
#
|
24548
|
-
#
|
24549
|
-
#
|
24550
|
-
#
|
24551
|
-
#
|
24651
|
+
# directed if this rule is matched. If routeAction is also specified, advanced
|
24652
|
+
# routing actions, such as URL rewrites, take effect before sending the request
|
24653
|
+
# to the backend. However, if service is specified, routeAction cannot contain
|
24654
|
+
# any weightedBackendServices. Conversely, if routeAction specifies any
|
24655
|
+
# weightedBackendServices, service must not be specified. Only one of
|
24656
|
+
# urlRedirect, service or routeAction.weightedBackendService must be set.
|
24552
24657
|
# Corresponds to the JSON property `service`
|
24553
24658
|
# @return [String]
|
24554
24659
|
attr_accessor :service
|
@@ -24620,31 +24725,31 @@ module Google
|
|
24620
24725
|
|
24621
24726
|
# An Identity and Access Management (IAM) policy, which specifies access
|
24622
24727
|
# controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
|
24623
|
-
# A `binding` binds one or more `members
|
24624
|
-
# user accounts, service accounts, Google groups, and domains (
|
24625
|
-
# A `role` is a named list of permissions; each `role` can be
|
24626
|
-
# role or a user-created custom role. For some types of Google
|
24627
|
-
# a `binding` can also specify a `condition`, which is a
|
24628
|
-
# allows access to a resource only if the expression
|
24629
|
-
# condition can add constraints based on attributes of
|
24630
|
-
# or both. To learn which resources support
|
24631
|
-
# see the [IAM documentation](https://cloud.
|
24632
|
-
# resource-policies). **JSON example:** ` "
|
24633
|
-
# resourcemanager.organizationAdmin", "members": [
|
24634
|
-
# group:admins@example.com", "domain:google.com", "
|
24635
|
-
# appspot.gserviceaccount.com" ] `, ` "role": "
|
24636
|
-
# organizationViewer", "members": [ "user:eve@example.com"
|
24637
|
-
# title": "expirable access", "description": "Does not grant
|
24638
|
-
# 2020", "expression": "request.time < timestamp('2020-10-01T00:
|
24639
|
-
# ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
|
24640
|
-
# members: - user:mike@example.com - group:admins@example.com -
|
24641
|
-
# com - serviceAccount:my-project-id@appspot.gserviceaccount.com
|
24642
|
-
# resourcemanager.organizationAdmin - members: - user:eve@example.
|
24643
|
-
# roles/resourcemanager.organizationViewer condition: title: expirable
|
24644
|
-
# description: Does not grant access after Sep 2020 expression: request.
|
24645
|
-
# timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
|
24646
|
-
# description of IAM and its features, see the [IAM documentation](https://
|
24647
|
-
# google.com/iam/docs/).
|
24728
|
+
# A `binding` binds one or more `members`, or principals, to a single `role`.
|
24729
|
+
# Principals can be user accounts, service accounts, Google groups, and domains (
|
24730
|
+
# such as G Suite). A `role` is a named list of permissions; each `role` can be
|
24731
|
+
# an IAM predefined role or a user-created custom role. For some types of Google
|
24732
|
+
# Cloud resources, a `binding` can also specify a `condition`, which is a
|
24733
|
+
# logical expression that allows access to a resource only if the expression
|
24734
|
+
# evaluates to `true`. A condition can add constraints based on attributes of
|
24735
|
+
# the request, the resource, or both. To learn which resources support
|
24736
|
+
# conditions in their IAM policies, see the [IAM documentation](https://cloud.
|
24737
|
+
# google.com/iam/help/conditions/resource-policies). **JSON example:** ` "
|
24738
|
+
# bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
|
24739
|
+
# "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
|
24740
|
+
# serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
|
24741
|
+
# roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
|
24742
|
+
# ], "condition": ` "title": "expirable access", "description": "Does not grant
|
24743
|
+
# access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
|
24744
|
+
# 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
|
24745
|
+
# bindings: - members: - user:mike@example.com - group:admins@example.com -
|
24746
|
+
# domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
|
24747
|
+
# role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
|
24748
|
+
# com role: roles/resourcemanager.organizationViewer condition: title: expirable
|
24749
|
+
# access description: Does not grant access after Sep 2020 expression: request.
|
24750
|
+
# time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
|
24751
|
+
# a description of IAM and its features, see the [IAM documentation](https://
|
24752
|
+
# cloud.google.com/iam/docs/).
|
24648
24753
|
class Policy
|
24649
24754
|
include Google::Apis::Core::Hashable
|
24650
24755
|
|
@@ -24653,9 +24758,14 @@ module Google
|
|
24653
24758
|
# @return [Array<Google::Apis::ComputeBeta::AuditConfig>]
|
24654
24759
|
attr_accessor :audit_configs
|
24655
24760
|
|
24656
|
-
# Associates a list of `members
|
24657
|
-
# condition` that determines how and when the `bindings` are applied.
|
24658
|
-
# the `bindings` must contain at least one
|
24761
|
+
# Associates a list of `members`, or principals, with a `role`. Optionally, may
|
24762
|
+
# specify a `condition` that determines how and when the `bindings` are applied.
|
24763
|
+
# Each of the `bindings` must contain at least one principal. The `bindings` in
|
24764
|
+
# a `Policy` can refer to up to 1,500 principals; up to 250 of these principals
|
24765
|
+
# can be Google groups. Each occurrence of a principal counts towards these
|
24766
|
+
# limits. For example, if the `bindings` grant 50 different roles to `user:alice@
|
24767
|
+
# example.com`, and not to any other principal, then you can add another 1,450
|
24768
|
+
# principals to the `bindings` in the `Policy`.
|
24659
24769
|
# Corresponds to the JSON property `bindings`
|
24660
24770
|
# @return [Array<Google::Apis::ComputeBeta::Binding>]
|
24661
24771
|
attr_accessor :bindings
|
@@ -24676,12 +24786,6 @@ module Google
|
|
24676
24786
|
# @return [String]
|
24677
24787
|
attr_accessor :etag
|
24678
24788
|
|
24679
|
-
# This is deprecated and has no effect. Do not use.
|
24680
|
-
# Corresponds to the JSON property `iamOwned`
|
24681
|
-
# @return [Boolean]
|
24682
|
-
attr_accessor :iam_owned
|
24683
|
-
alias_method :iam_owned?, :iam_owned
|
24684
|
-
|
24685
24789
|
# This is deprecated and has no effect. Do not use.
|
24686
24790
|
# Corresponds to the JSON property `rules`
|
24687
24791
|
# @return [Array<Google::Apis::ComputeBeta::Rule>]
|
@@ -24715,7 +24819,6 @@ module Google
|
|
24715
24819
|
@audit_configs = args[:audit_configs] if args.key?(:audit_configs)
|
24716
24820
|
@bindings = args[:bindings] if args.key?(:bindings)
|
24717
24821
|
@etag = args[:etag] if args.key?(:etag)
|
24718
|
-
@iam_owned = args[:iam_owned] if args.key?(:iam_owned)
|
24719
24822
|
@rules = args[:rules] if args.key?(:rules)
|
24720
24823
|
@version = args[:version] if args.key?(:version)
|
24721
24824
|
end
|
@@ -24750,6 +24853,18 @@ module Google
|
|
24750
24853
|
# @return [Hash<String,Google::Apis::ComputeBeta::PreservedStatePreservedDisk>]
|
24751
24854
|
attr_accessor :disks
|
24752
24855
|
|
24856
|
+
# Preserved external IPs defined for this instance. This map is keyed with the
|
24857
|
+
# name of the network interface.
|
24858
|
+
# Corresponds to the JSON property `externalIPs`
|
24859
|
+
# @return [Hash<String,Google::Apis::ComputeBeta::PreservedStatePreservedNetworkIp>]
|
24860
|
+
attr_accessor :external_i_ps
|
24861
|
+
|
24862
|
+
# Preserved internal IPs defined for this instance. This map is keyed with the
|
24863
|
+
# name of the network interface.
|
24864
|
+
# Corresponds to the JSON property `internalIPs`
|
24865
|
+
# @return [Hash<String,Google::Apis::ComputeBeta::PreservedStatePreservedNetworkIp>]
|
24866
|
+
attr_accessor :internal_i_ps
|
24867
|
+
|
24753
24868
|
# Preserved metadata defined for this instance.
|
24754
24869
|
# Corresponds to the JSON property `metadata`
|
24755
24870
|
# @return [Hash<String,String>]
|
@@ -24762,6 +24877,8 @@ module Google
|
|
24762
24877
|
# Update properties of this object
|
24763
24878
|
def update!(**args)
|
24764
24879
|
@disks = args[:disks] if args.key?(:disks)
|
24880
|
+
@external_i_ps = args[:external_i_ps] if args.key?(:external_i_ps)
|
24881
|
+
@internal_i_ps = args[:internal_i_ps] if args.key?(:internal_i_ps)
|
24765
24882
|
@metadata = args[:metadata] if args.key?(:metadata)
|
24766
24883
|
end
|
24767
24884
|
end
|
@@ -24803,6 +24920,60 @@ module Google
|
|
24803
24920
|
end
|
24804
24921
|
end
|
24805
24922
|
|
24923
|
+
#
|
24924
|
+
class PreservedStatePreservedNetworkIp
|
24925
|
+
include Google::Apis::Core::Hashable
|
24926
|
+
|
24927
|
+
# These stateful IPs will never be released during autohealing, update or VM
|
24928
|
+
# instance recreate operations. This flag is used to configure if the IP
|
24929
|
+
# reservation should be deleted after it is no longer used by the group, e.g.
|
24930
|
+
# when the given instance or the whole group is deleted.
|
24931
|
+
# Corresponds to the JSON property `autoDelete`
|
24932
|
+
# @return [String]
|
24933
|
+
attr_accessor :auto_delete
|
24934
|
+
|
24935
|
+
# Ip address representation
|
24936
|
+
# Corresponds to the JSON property `ipAddress`
|
24937
|
+
# @return [Google::Apis::ComputeBeta::PreservedStatePreservedNetworkIpIpAddress]
|
24938
|
+
attr_accessor :ip_address
|
24939
|
+
|
24940
|
+
def initialize(**args)
|
24941
|
+
update!(**args)
|
24942
|
+
end
|
24943
|
+
|
24944
|
+
# Update properties of this object
|
24945
|
+
def update!(**args)
|
24946
|
+
@auto_delete = args[:auto_delete] if args.key?(:auto_delete)
|
24947
|
+
@ip_address = args[:ip_address] if args.key?(:ip_address)
|
24948
|
+
end
|
24949
|
+
end
|
24950
|
+
|
24951
|
+
#
|
24952
|
+
class PreservedStatePreservedNetworkIpIpAddress
|
24953
|
+
include Google::Apis::Core::Hashable
|
24954
|
+
|
24955
|
+
# The URL of the reservation for this IP address.
|
24956
|
+
# Corresponds to the JSON property `address`
|
24957
|
+
# @return [String]
|
24958
|
+
attr_accessor :address
|
24959
|
+
|
24960
|
+
# An IPv4 internal network address to assign to the instance for this network
|
24961
|
+
# interface.
|
24962
|
+
# Corresponds to the JSON property `literal`
|
24963
|
+
# @return [String]
|
24964
|
+
attr_accessor :literal
|
24965
|
+
|
24966
|
+
def initialize(**args)
|
24967
|
+
update!(**args)
|
24968
|
+
end
|
24969
|
+
|
24970
|
+
# Update properties of this object
|
24971
|
+
def update!(**args)
|
24972
|
+
@address = args[:address] if args.key?(:address)
|
24973
|
+
@literal = args[:literal] if args.key?(:literal)
|
24974
|
+
end
|
24975
|
+
end
|
24976
|
+
|
24806
24977
|
# Represents a Project resource. A project is used to organize resources in a
|
24807
24978
|
# Google Cloud Platform environment. For more information, read about the
|
24808
24979
|
# Resource Hierarchy.
|
@@ -25096,7 +25267,13 @@ module Google
|
|
25096
25267
|
# @return [String]
|
25097
25268
|
attr_accessor :shared_secret
|
25098
25269
|
|
25099
|
-
# The status of the public advertised prefix.
|
25270
|
+
# The status of the public advertised prefix. Possible values include: - `
|
25271
|
+
# INITIAL`: RPKI validation is complete. - `PTR_CONFIGURED`: User has configured
|
25272
|
+
# the PTR. - `VALIDATED`: Reverse DNS lookup is successful. - `
|
25273
|
+
# REVERSE_DNS_LOOKUP_FAILED`: Reverse DNS lookup failed. - `
|
25274
|
+
# PREFIX_CONFIGURATION_IN_PROGRESS`: The prefix is being configured. - `
|
25275
|
+
# PREFIX_CONFIGURATION_COMPLETE`: The prefix is fully configured. - `
|
25276
|
+
# PREFIX_REMOVAL_IN_PROGRESS`: The prefix is being removed.
|
25100
25277
|
# Corresponds to the JSON property `status`
|
25101
25278
|
# @return [String]
|
25102
25279
|
attr_accessor :status
|
@@ -25375,7 +25552,12 @@ module Google
|
|
25375
25552
|
# @return [String]
|
25376
25553
|
attr_accessor :self_link
|
25377
25554
|
|
25378
|
-
# [Output Only] The status of the public delegated prefix
|
25555
|
+
# [Output Only] The status of the public delegated prefix, which can be one of
|
25556
|
+
# following values: - `INITIALIZING` The public delegated prefix is being
|
25557
|
+
# initialized and addresses cannot be created yet. - `READY_TO_ANNOUNCE` The
|
25558
|
+
# public delegated prefix is a live migration prefix and is active. - `ANNOUNCED`
|
25559
|
+
# The public delegated prefix is active. - `DELETING` The public delegated
|
25560
|
+
# prefix is being deprovsioned.
|
25379
25561
|
# Corresponds to the JSON property `status`
|
25380
25562
|
# @return [String]
|
25381
25563
|
attr_accessor :status
|
@@ -26862,6 +27044,47 @@ module Google
|
|
26862
27044
|
end
|
26863
27045
|
end
|
26864
27046
|
|
27047
|
+
#
|
27048
|
+
class RegionInstanceGroupManagersResizeAdvancedRequest
|
27049
|
+
include Google::Apis::Core::Hashable
|
27050
|
+
|
27051
|
+
# If this flag is true, the managed instance group attempts to create all
|
27052
|
+
# instances initiated by this resize request only once. If there is an error
|
27053
|
+
# during creation, the managed instance group does not retry create this
|
27054
|
+
# instance, and we will decrease the targetSize of the request instead. If the
|
27055
|
+
# flag is false, the group attempts to recreate each instance continuously until
|
27056
|
+
# it succeeds. This flag matters only in the first attempt of creation of an
|
27057
|
+
# instance. After an instance is successfully created while this flag is enabled,
|
27058
|
+
# the instance behaves the same way as all the other instances created with a
|
27059
|
+
# regular resize request. In particular, if a running instance dies unexpectedly
|
27060
|
+
# at a later time and needs to be recreated, this mode does not affect the
|
27061
|
+
# recreation behavior in that scenario. This flag is applicable only to the
|
27062
|
+
# current resize request. It does not influence other resize requests in any way.
|
27063
|
+
# You can see which instances ar being created in which mode by calling the get
|
27064
|
+
# or listManagedInstances API.
|
27065
|
+
# Corresponds to the JSON property `noCreationRetries`
|
27066
|
+
# @return [Boolean]
|
27067
|
+
attr_accessor :no_creation_retries
|
27068
|
+
alias_method :no_creation_retries?, :no_creation_retries
|
27069
|
+
|
27070
|
+
# The number of running instances that the managed instance group should
|
27071
|
+
# maintain at any given time. The group automatically adds or removes instances
|
27072
|
+
# to maintain the number of instances specified by this parameter.
|
27073
|
+
# Corresponds to the JSON property `targetSize`
|
27074
|
+
# @return [Fixnum]
|
27075
|
+
attr_accessor :target_size
|
27076
|
+
|
27077
|
+
def initialize(**args)
|
27078
|
+
update!(**args)
|
27079
|
+
end
|
27080
|
+
|
27081
|
+
# Update properties of this object
|
27082
|
+
def update!(**args)
|
27083
|
+
@no_creation_retries = args[:no_creation_retries] if args.key?(:no_creation_retries)
|
27084
|
+
@target_size = args[:target_size] if args.key?(:target_size)
|
27085
|
+
end
|
27086
|
+
end
|
27087
|
+
|
26865
27088
|
#
|
26866
27089
|
class RegionInstanceGroupManagersSetAutoHealingRequest
|
26867
27090
|
include Google::Apis::Core::Hashable
|
@@ -27273,31 +27496,31 @@ module Google
|
|
27273
27496
|
|
27274
27497
|
# An Identity and Access Management (IAM) policy, which specifies access
|
27275
27498
|
# controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
|
27276
|
-
# A `binding` binds one or more `members
|
27277
|
-
# user accounts, service accounts, Google groups, and domains (
|
27278
|
-
# A `role` is a named list of permissions; each `role` can be
|
27279
|
-
# role or a user-created custom role. For some types of Google
|
27280
|
-
# a `binding` can also specify a `condition`, which is a
|
27281
|
-
# allows access to a resource only if the expression
|
27282
|
-
# condition can add constraints based on attributes of
|
27283
|
-
# or both. To learn which resources support
|
27284
|
-
# see the [IAM documentation](https://cloud.
|
27285
|
-
# resource-policies). **JSON example:** ` "
|
27286
|
-
# resourcemanager.organizationAdmin", "members": [
|
27287
|
-
# group:admins@example.com", "domain:google.com", "
|
27288
|
-
# appspot.gserviceaccount.com" ] `, ` "role": "
|
27289
|
-
# organizationViewer", "members": [ "user:eve@example.com"
|
27290
|
-
# title": "expirable access", "description": "Does not grant
|
27291
|
-
# 2020", "expression": "request.time < timestamp('2020-10-01T00:
|
27292
|
-
# ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
|
27293
|
-
# members: - user:mike@example.com - group:admins@example.com -
|
27294
|
-
# com - serviceAccount:my-project-id@appspot.gserviceaccount.com
|
27295
|
-
# resourcemanager.organizationAdmin - members: - user:eve@example.
|
27296
|
-
# roles/resourcemanager.organizationViewer condition: title: expirable
|
27297
|
-
# description: Does not grant access after Sep 2020 expression: request.
|
27298
|
-
# timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
|
27299
|
-
# description of IAM and its features, see the [IAM documentation](https://
|
27300
|
-
# google.com/iam/docs/).
|
27499
|
+
# A `binding` binds one or more `members`, or principals, to a single `role`.
|
27500
|
+
# Principals can be user accounts, service accounts, Google groups, and domains (
|
27501
|
+
# such as G Suite). A `role` is a named list of permissions; each `role` can be
|
27502
|
+
# an IAM predefined role or a user-created custom role. For some types of Google
|
27503
|
+
# Cloud resources, a `binding` can also specify a `condition`, which is a
|
27504
|
+
# logical expression that allows access to a resource only if the expression
|
27505
|
+
# evaluates to `true`. A condition can add constraints based on attributes of
|
27506
|
+
# the request, the resource, or both. To learn which resources support
|
27507
|
+
# conditions in their IAM policies, see the [IAM documentation](https://cloud.
|
27508
|
+
# google.com/iam/help/conditions/resource-policies). **JSON example:** ` "
|
27509
|
+
# bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
|
27510
|
+
# "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
|
27511
|
+
# serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
|
27512
|
+
# roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
|
27513
|
+
# ], "condition": ` "title": "expirable access", "description": "Does not grant
|
27514
|
+
# access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
|
27515
|
+
# 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
|
27516
|
+
# bindings: - members: - user:mike@example.com - group:admins@example.com -
|
27517
|
+
# domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
|
27518
|
+
# role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
|
27519
|
+
# com role: roles/resourcemanager.organizationViewer condition: title: expirable
|
27520
|
+
# access description: Does not grant access after Sep 2020 expression: request.
|
27521
|
+
# time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
|
27522
|
+
# a description of IAM and its features, see the [IAM documentation](https://
|
27523
|
+
# cloud.google.com/iam/docs/).
|
27301
27524
|
# Corresponds to the JSON property `policy`
|
27302
27525
|
# @return [Google::Apis::ComputeBeta::Policy]
|
27303
27526
|
attr_accessor :policy
|
@@ -27338,21 +27561,21 @@ module Google
|
|
27338
27561
|
class RegionUrlMapsValidateRequest
|
27339
27562
|
include Google::Apis::Core::Hashable
|
27340
27563
|
|
27341
|
-
# Represents a URL Map resource.
|
27342
|
-
#
|
27343
|
-
#
|
27344
|
-
# certain types of
|
27564
|
+
# Represents a URL Map resource. Compute Engine has two URL Map resources: * [
|
27565
|
+
# Global](/compute/docs/reference/rest/beta/urlMaps) * [Regional](/compute/docs/
|
27566
|
+
# reference/rest/beta/regionUrlMaps) A URL map resource is a component of
|
27567
|
+
# certain types of cloud load balancers and Traffic Director: * urlMaps are used
|
27345
27568
|
# by external HTTP(S) load balancers and Traffic Director. * regionUrlMaps are
|
27346
27569
|
# used by internal HTTP(S) load balancers. For a list of supported URL map
|
27347
|
-
# features by load balancer type, see the Load balancing features: Routing
|
27348
|
-
# traffic management table. For a list of supported URL map features for
|
27349
|
-
# Director, see the Traffic Director features: Routing and traffic
|
27350
|
-
# table. This resource defines mappings from
|
27351
|
-
# a backend service or a backend bucket. To use the global urlMaps
|
27352
|
-
# backend service must have a loadBalancingScheme of either
|
27353
|
-
# INTERNAL_SELF_MANAGED. To use the regionUrlMaps resource, the
|
27354
|
-
# must have a loadBalancingScheme of INTERNAL_MANAGED. For more
|
27355
|
-
# read URL Map Concepts.
|
27570
|
+
# features by the load balancer type, see the Load balancing features: Routing
|
27571
|
+
# and traffic management table. For a list of supported URL map features for
|
27572
|
+
# Traffic Director, see the Traffic Director features: Routing and traffic
|
27573
|
+
# management table. This resource defines mappings from hostnames and URL paths
|
27574
|
+
# to either a backend service or a backend bucket. To use the global urlMaps
|
27575
|
+
# resource, the backend service must have a loadBalancingScheme of either
|
27576
|
+
# EXTERNAL or INTERNAL_SELF_MANAGED. To use the regionUrlMaps resource, the
|
27577
|
+
# backend service must have a loadBalancingScheme of INTERNAL_MANAGED. For more
|
27578
|
+
# information, read URL Map Concepts.
|
27356
27579
|
# Corresponds to the JSON property `resource`
|
27357
27580
|
# @return [Google::Apis::ComputeBeta::UrlMap]
|
27358
27581
|
attr_accessor :resource
|
@@ -27368,9 +27591,9 @@ module Google
|
|
27368
27591
|
end
|
27369
27592
|
|
27370
27593
|
# A policy that specifies how requests intended for the route's backends are
|
27371
|
-
# shadowed to a separate mirrored backend service.
|
27372
|
-
# for responses from the shadow service.
|
27373
|
-
# service, the host
|
27594
|
+
# shadowed to a separate mirrored backend service. The load balancer doesn't
|
27595
|
+
# wait for responses from the shadow service. Before sending traffic to the
|
27596
|
+
# shadow service, the host or authority header is suffixed with -shadow.
|
27374
27597
|
class RequestMirrorPolicy
|
27375
27598
|
include Google::Apis::Core::Hashable
|
27376
27599
|
|
@@ -28829,6 +29052,11 @@ module Google
|
|
28829
29052
|
class Route
|
28830
29053
|
include Google::Apis::Core::Hashable
|
28831
29054
|
|
29055
|
+
# [Output Only] AS path.
|
29056
|
+
# Corresponds to the JSON property `asPaths`
|
29057
|
+
# @return [Array<Google::Apis::ComputeBeta::RouteAsPath>]
|
29058
|
+
attr_accessor :as_paths
|
29059
|
+
|
28832
29060
|
# [Output Only] Creation timestamp in RFC3339 text format.
|
28833
29061
|
# Corresponds to the JSON property `creationTimestamp`
|
28834
29062
|
# @return [String]
|
@@ -28933,6 +29161,15 @@ module Google
|
|
28933
29161
|
# @return [Fixnum]
|
28934
29162
|
attr_accessor :priority
|
28935
29163
|
|
29164
|
+
# [Output Only] The type of this route, which can be one of the following values:
|
29165
|
+
# - 'TRANSIT' for a transit route that this router learned from another Cloud
|
29166
|
+
# Router and will readvertise to one of its BGP peers - 'SUBNET' for a route
|
29167
|
+
# from a subnet of the VPC - 'BGP' for a route learned from a BGP peer of this
|
29168
|
+
# router - 'STATIC' for a static route
|
29169
|
+
# Corresponds to the JSON property `routeType`
|
29170
|
+
# @return [String]
|
29171
|
+
attr_accessor :route_type
|
29172
|
+
|
28936
29173
|
# [Output Only] Server-defined fully-qualified URL for this resource.
|
28937
29174
|
# Corresponds to the JSON property `selfLink`
|
28938
29175
|
# @return [String]
|
@@ -28955,6 +29192,7 @@ module Google
|
|
28955
29192
|
|
28956
29193
|
# Update properties of this object
|
28957
29194
|
def update!(**args)
|
29195
|
+
@as_paths = args[:as_paths] if args.key?(:as_paths)
|
28958
29196
|
@creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
|
28959
29197
|
@description = args[:description] if args.key?(:description)
|
28960
29198
|
@dest_range = args[:dest_range] if args.key?(:dest_range)
|
@@ -28971,6 +29209,7 @@ module Google
|
|
28971
29209
|
@next_hop_peering = args[:next_hop_peering] if args.key?(:next_hop_peering)
|
28972
29210
|
@next_hop_vpn_tunnel = args[:next_hop_vpn_tunnel] if args.key?(:next_hop_vpn_tunnel)
|
28973
29211
|
@priority = args[:priority] if args.key?(:priority)
|
29212
|
+
@route_type = args[:route_type] if args.key?(:route_type)
|
28974
29213
|
@self_link = args[:self_link] if args.key?(:self_link)
|
28975
29214
|
@tags = args[:tags] if args.key?(:tags)
|
28976
29215
|
@warnings = args[:warnings] if args.key?(:warnings)
|
@@ -29041,6 +29280,37 @@ module Google
|
|
29041
29280
|
end
|
29042
29281
|
end
|
29043
29282
|
|
29283
|
+
#
|
29284
|
+
class RouteAsPath
|
29285
|
+
include Google::Apis::Core::Hashable
|
29286
|
+
|
29287
|
+
# [Output Only] The AS numbers of the AS Path.
|
29288
|
+
# Corresponds to the JSON property `asLists`
|
29289
|
+
# @return [Array<Fixnum>]
|
29290
|
+
attr_accessor :as_lists
|
29291
|
+
|
29292
|
+
# [Output Only] The type of the AS Path, which can be one of the following
|
29293
|
+
# values: - 'AS_SET': unordered set of autonomous systems that the route in has
|
29294
|
+
# traversed - 'AS_SEQUENCE': ordered set of autonomous systems that the route
|
29295
|
+
# has traversed - 'AS_CONFED_SEQUENCE': ordered set of Member Autonomous Systems
|
29296
|
+
# in the local confederation that the route has traversed - 'AS_CONFED_SET':
|
29297
|
+
# unordered set of Member Autonomous Systems in the local confederation that the
|
29298
|
+
# route has traversed
|
29299
|
+
# Corresponds to the JSON property `pathSegmentType`
|
29300
|
+
# @return [String]
|
29301
|
+
attr_accessor :path_segment_type
|
29302
|
+
|
29303
|
+
def initialize(**args)
|
29304
|
+
update!(**args)
|
29305
|
+
end
|
29306
|
+
|
29307
|
+
# Update properties of this object
|
29308
|
+
def update!(**args)
|
29309
|
+
@as_lists = args[:as_lists] if args.key?(:as_lists)
|
29310
|
+
@path_segment_type = args[:path_segment_type] if args.key?(:path_segment_type)
|
29311
|
+
end
|
29312
|
+
end
|
29313
|
+
|
29044
29314
|
# Contains a list of Route resources.
|
29045
29315
|
class RouteList
|
29046
29316
|
include Google::Apis::Core::Hashable
|
@@ -29520,6 +29790,12 @@ module Google
|
|
29520
29790
|
# @return [String]
|
29521
29791
|
attr_accessor :enable
|
29522
29792
|
|
29793
|
+
# Enable IPv6 traffic over BGP Peer. If not specified, it is disabled by default.
|
29794
|
+
# Corresponds to the JSON property `enableIpv6`
|
29795
|
+
# @return [Boolean]
|
29796
|
+
attr_accessor :enable_ipv6
|
29797
|
+
alias_method :enable_ipv6?, :enable_ipv6
|
29798
|
+
|
29523
29799
|
# Name of the interface the BGP peer is associated with.
|
29524
29800
|
# Corresponds to the JSON property `interfaceName`
|
29525
29801
|
# @return [String]
|
@@ -29531,6 +29807,11 @@ module Google
|
|
29531
29807
|
# @return [String]
|
29532
29808
|
attr_accessor :ip_address
|
29533
29809
|
|
29810
|
+
# IPv6 address of the interface inside Google Cloud Platform.
|
29811
|
+
# Corresponds to the JSON property `ipv6NexthopAddress`
|
29812
|
+
# @return [String]
|
29813
|
+
attr_accessor :ipv6_nexthop_address
|
29814
|
+
|
29534
29815
|
# [Output Only] The resource that configures and manages this BGP peer. -
|
29535
29816
|
# MANAGED_BY_USER is the default value and can be managed by you or other users -
|
29536
29817
|
# MANAGED_BY_ATTACHMENT is a BGP peer that is configured and managed by Cloud
|
@@ -29563,6 +29844,11 @@ module Google
|
|
29563
29844
|
# @return [String]
|
29564
29845
|
attr_accessor :peer_ip_address
|
29565
29846
|
|
29847
|
+
# IPv6 address of the BGP interface outside Google Cloud Platform.
|
29848
|
+
# Corresponds to the JSON property `peerIpv6NexthopAddress`
|
29849
|
+
# @return [String]
|
29850
|
+
attr_accessor :peer_ipv6_nexthop_address
|
29851
|
+
|
29566
29852
|
# URI of the VM instance that is used as third-party router appliances such as
|
29567
29853
|
# Next Gen Firewalls, Virtual Routers, or Router Appliances. The VM instance
|
29568
29854
|
# must be located in zones contained in the same region as this Cloud Router.
|
@@ -29583,12 +29869,15 @@ module Google
|
|
29583
29869
|
@advertised_route_priority = args[:advertised_route_priority] if args.key?(:advertised_route_priority)
|
29584
29870
|
@bfd = args[:bfd] if args.key?(:bfd)
|
29585
29871
|
@enable = args[:enable] if args.key?(:enable)
|
29872
|
+
@enable_ipv6 = args[:enable_ipv6] if args.key?(:enable_ipv6)
|
29586
29873
|
@interface_name = args[:interface_name] if args.key?(:interface_name)
|
29587
29874
|
@ip_address = args[:ip_address] if args.key?(:ip_address)
|
29875
|
+
@ipv6_nexthop_address = args[:ipv6_nexthop_address] if args.key?(:ipv6_nexthop_address)
|
29588
29876
|
@management_type = args[:management_type] if args.key?(:management_type)
|
29589
29877
|
@name = args[:name] if args.key?(:name)
|
29590
29878
|
@peer_asn = args[:peer_asn] if args.key?(:peer_asn)
|
29591
29879
|
@peer_ip_address = args[:peer_ip_address] if args.key?(:peer_ip_address)
|
29880
|
+
@peer_ipv6_nexthop_address = args[:peer_ipv6_nexthop_address] if args.key?(:peer_ipv6_nexthop_address)
|
29592
29881
|
@router_appliance_instance = args[:router_appliance_instance] if args.key?(:router_appliance_instance)
|
29593
29882
|
end
|
29594
29883
|
end
|
@@ -29868,6 +30157,17 @@ module Google
|
|
29868
30157
|
# @return [Array<String>]
|
29869
30158
|
attr_accessor :drain_nat_ips
|
29870
30159
|
|
30160
|
+
# Enable Dynamic Port Allocation. If not specified, it is disabled by default.
|
30161
|
+
# If set to true, - Dynamic Port Allocation will be enabled on this NAT config. -
|
30162
|
+
# enableEndpointIndependentMapping cannot be set to true. - If minPorts is set,
|
30163
|
+
# minPortsPerVm must be set to a power of two greater than or equal to 32. If
|
30164
|
+
# minPortsPerVm is not set, a minimum of 32 ports will be allocated to a VM from
|
30165
|
+
# this NAT config.
|
30166
|
+
# Corresponds to the JSON property `enableDynamicPortAllocation`
|
30167
|
+
# @return [Boolean]
|
30168
|
+
attr_accessor :enable_dynamic_port_allocation
|
30169
|
+
alias_method :enable_dynamic_port_allocation?, :enable_dynamic_port_allocation
|
30170
|
+
|
29871
30171
|
#
|
29872
30172
|
# Corresponds to the JSON property `enableEndpointIndependentMapping`
|
29873
30173
|
# @return [Boolean]
|
@@ -29884,6 +30184,17 @@ module Google
|
|
29884
30184
|
# @return [Google::Apis::ComputeBeta::RouterNatLogConfig]
|
29885
30185
|
attr_accessor :log_config
|
29886
30186
|
|
30187
|
+
# Maximum number of ports allocated to a VM from this NAT config when Dynamic
|
30188
|
+
# Port Allocation is enabled. If Dynamic Port Allocation is not enabled, this
|
30189
|
+
# field has no effect. If Dynamic Port Allocation is enabled, and this field is
|
30190
|
+
# set, it must be set to a power of two greater than minPortsPerVm, or 64 if
|
30191
|
+
# minPortsPerVm is not set. If Dynamic Port Allocation is enabled and this field
|
30192
|
+
# is not set, a maximum of 65536 ports will be allocated to a VM from this NAT
|
30193
|
+
# config.
|
30194
|
+
# Corresponds to the JSON property `maxPortsPerVm`
|
30195
|
+
# @return [Fixnum]
|
30196
|
+
attr_accessor :max_ports_per_vm
|
30197
|
+
|
29887
30198
|
# Minimum number of ports allocated to a VM from this NAT config. If not set, a
|
29888
30199
|
# default number of ports is allocated to a VM. This is rounded up to the
|
29889
30200
|
# nearest power of 2. For example, if the value of this field is 50, at least 64
|
@@ -29913,6 +30224,11 @@ module Google
|
|
29913
30224
|
# @return [Array<String>]
|
29914
30225
|
attr_accessor :nat_ips
|
29915
30226
|
|
30227
|
+
# A list of rules associated with this NAT.
|
30228
|
+
# Corresponds to the JSON property `rules`
|
30229
|
+
# @return [Array<Google::Apis::ComputeBeta::RouterNatRule>]
|
30230
|
+
attr_accessor :rules
|
30231
|
+
|
29916
30232
|
# Specify the Nat option, which can take one of the following values: -
|
29917
30233
|
# ALL_SUBNETWORKS_ALL_IP_RANGES: All of the IP ranges in every Subnetwork are
|
29918
30234
|
# allowed to Nat. - ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES: All of the primary IP
|
@@ -29939,6 +30255,12 @@ module Google
|
|
29939
30255
|
# @return [Fixnum]
|
29940
30256
|
attr_accessor :tcp_established_idle_timeout_sec
|
29941
30257
|
|
30258
|
+
# Timeout (in seconds) for TCP connections that are in TIME_WAIT state. Defaults
|
30259
|
+
# to 120s if not set.
|
30260
|
+
# Corresponds to the JSON property `tcpTimeWaitTimeoutSec`
|
30261
|
+
# @return [Fixnum]
|
30262
|
+
attr_accessor :tcp_time_wait_timeout_sec
|
30263
|
+
|
29942
30264
|
# Timeout (in seconds) for TCP transitory connections. Defaults to 30s if not
|
29943
30265
|
# set.
|
29944
30266
|
# Corresponds to the JSON property `tcpTransitoryIdleTimeoutSec`
|
@@ -29957,16 +30279,20 @@ module Google
|
|
29957
30279
|
# Update properties of this object
|
29958
30280
|
def update!(**args)
|
29959
30281
|
@drain_nat_ips = args[:drain_nat_ips] if args.key?(:drain_nat_ips)
|
30282
|
+
@enable_dynamic_port_allocation = args[:enable_dynamic_port_allocation] if args.key?(:enable_dynamic_port_allocation)
|
29960
30283
|
@enable_endpoint_independent_mapping = args[:enable_endpoint_independent_mapping] if args.key?(:enable_endpoint_independent_mapping)
|
29961
30284
|
@icmp_idle_timeout_sec = args[:icmp_idle_timeout_sec] if args.key?(:icmp_idle_timeout_sec)
|
29962
30285
|
@log_config = args[:log_config] if args.key?(:log_config)
|
30286
|
+
@max_ports_per_vm = args[:max_ports_per_vm] if args.key?(:max_ports_per_vm)
|
29963
30287
|
@min_ports_per_vm = args[:min_ports_per_vm] if args.key?(:min_ports_per_vm)
|
29964
30288
|
@name = args[:name] if args.key?(:name)
|
29965
30289
|
@nat_ip_allocate_option = args[:nat_ip_allocate_option] if args.key?(:nat_ip_allocate_option)
|
29966
30290
|
@nat_ips = args[:nat_ips] if args.key?(:nat_ips)
|
30291
|
+
@rules = args[:rules] if args.key?(:rules)
|
29967
30292
|
@source_subnetwork_ip_ranges_to_nat = args[:source_subnetwork_ip_ranges_to_nat] if args.key?(:source_subnetwork_ip_ranges_to_nat)
|
29968
30293
|
@subnetworks = args[:subnetworks] if args.key?(:subnetworks)
|
29969
30294
|
@tcp_established_idle_timeout_sec = args[:tcp_established_idle_timeout_sec] if args.key?(:tcp_established_idle_timeout_sec)
|
30295
|
+
@tcp_time_wait_timeout_sec = args[:tcp_time_wait_timeout_sec] if args.key?(:tcp_time_wait_timeout_sec)
|
29970
30296
|
@tcp_transitory_idle_timeout_sec = args[:tcp_transitory_idle_timeout_sec] if args.key?(:tcp_transitory_idle_timeout_sec)
|
29971
30297
|
@udp_idle_timeout_sec = args[:udp_idle_timeout_sec] if args.key?(:udp_idle_timeout_sec)
|
29972
30298
|
end
|
@@ -30002,6 +30328,81 @@ module Google
|
|
30002
30328
|
end
|
30003
30329
|
end
|
30004
30330
|
|
30331
|
+
#
|
30332
|
+
class RouterNatRule
|
30333
|
+
include Google::Apis::Core::Hashable
|
30334
|
+
|
30335
|
+
# The action to be enforced for traffic that matches this rule.
|
30336
|
+
# Corresponds to the JSON property `action`
|
30337
|
+
# @return [Google::Apis::ComputeBeta::RouterNatRuleAction]
|
30338
|
+
attr_accessor :action
|
30339
|
+
|
30340
|
+
# An optional description of this rule.
|
30341
|
+
# Corresponds to the JSON property `description`
|
30342
|
+
# @return [String]
|
30343
|
+
attr_accessor :description
|
30344
|
+
|
30345
|
+
# CEL expression that specifies the match condition that egress traffic from a
|
30346
|
+
# VM is evaluated against. If it evaluates to true, the corresponding `action`
|
30347
|
+
# is enforced. The following examples are valid match expressions for public NAT:
|
30348
|
+
# "inIpRange(destination.ip, '1.1.0.0/16') || inIpRange(destination.ip, '2.2.0.
|
30349
|
+
# 0/16')" "destination.ip == '1.1.0.1' || destination.ip == '8.8.8.8'" The
|
30350
|
+
# following example is a valid match expression for private NAT: "nexthop.hub ==
|
30351
|
+
# 'https://networkconnectivity.googleapis.com/v1alpha1/projects/my-project/
|
30352
|
+
# global/hub/hub-1'"
|
30353
|
+
# Corresponds to the JSON property `match`
|
30354
|
+
# @return [String]
|
30355
|
+
attr_accessor :match
|
30356
|
+
|
30357
|
+
# An integer uniquely identifying a rule in the list. The rule number must be a
|
30358
|
+
# positive value between 0 and 65000, and must be unique among rules within a
|
30359
|
+
# NAT.
|
30360
|
+
# Corresponds to the JSON property `ruleNumber`
|
30361
|
+
# @return [Fixnum]
|
30362
|
+
attr_accessor :rule_number
|
30363
|
+
|
30364
|
+
def initialize(**args)
|
30365
|
+
update!(**args)
|
30366
|
+
end
|
30367
|
+
|
30368
|
+
# Update properties of this object
|
30369
|
+
def update!(**args)
|
30370
|
+
@action = args[:action] if args.key?(:action)
|
30371
|
+
@description = args[:description] if args.key?(:description)
|
30372
|
+
@match = args[:match] if args.key?(:match)
|
30373
|
+
@rule_number = args[:rule_number] if args.key?(:rule_number)
|
30374
|
+
end
|
30375
|
+
end
|
30376
|
+
|
30377
|
+
#
|
30378
|
+
class RouterNatRuleAction
|
30379
|
+
include Google::Apis::Core::Hashable
|
30380
|
+
|
30381
|
+
# A list of URLs of the IP resources used for this NAT rule. These IP addresses
|
30382
|
+
# must be valid static external IP addresses assigned to the project. This field
|
30383
|
+
# is used for public NAT.
|
30384
|
+
# Corresponds to the JSON property `sourceNatActiveIps`
|
30385
|
+
# @return [Array<String>]
|
30386
|
+
attr_accessor :source_nat_active_ips
|
30387
|
+
|
30388
|
+
# A list of URLs of the IP resources to be drained. These IPs must be valid
|
30389
|
+
# static external IPs that have been assigned to the NAT. These IPs should be
|
30390
|
+
# used for updating/patching a NAT rule only. This field is used for public NAT.
|
30391
|
+
# Corresponds to the JSON property `sourceNatDrainIps`
|
30392
|
+
# @return [Array<String>]
|
30393
|
+
attr_accessor :source_nat_drain_ips
|
30394
|
+
|
30395
|
+
def initialize(**args)
|
30396
|
+
update!(**args)
|
30397
|
+
end
|
30398
|
+
|
30399
|
+
# Update properties of this object
|
30400
|
+
def update!(**args)
|
30401
|
+
@source_nat_active_ips = args[:source_nat_active_ips] if args.key?(:source_nat_active_ips)
|
30402
|
+
@source_nat_drain_ips = args[:source_nat_drain_ips] if args.key?(:source_nat_drain_ips)
|
30403
|
+
end
|
30404
|
+
end
|
30405
|
+
|
30005
30406
|
# Defines the IP ranges that want to use NAT for a subnetwork.
|
30006
30407
|
class RouterNatSubnetworkToNat
|
30007
30408
|
include Google::Apis::Core::Hashable
|
@@ -30207,6 +30608,11 @@ module Google
|
|
30207
30608
|
# @return [Fixnum]
|
30208
30609
|
attr_accessor :num_vm_endpoints_with_nat_mappings
|
30209
30610
|
|
30611
|
+
# Status of rules in this NAT.
|
30612
|
+
# Corresponds to the JSON property `ruleStatus`
|
30613
|
+
# @return [Array<Google::Apis::ComputeBeta::RouterStatusNatStatusNatRuleStatus>]
|
30614
|
+
attr_accessor :rule_status
|
30615
|
+
|
30210
30616
|
# A list of fully qualified URLs of reserved IP address resources.
|
30211
30617
|
# Corresponds to the JSON property `userAllocatedNatIpResources`
|
30212
30618
|
# @return [Array<String>]
|
@@ -30230,11 +30636,58 @@ module Google
|
|
30230
30636
|
@min_extra_nat_ips_needed = args[:min_extra_nat_ips_needed] if args.key?(:min_extra_nat_ips_needed)
|
30231
30637
|
@name = args[:name] if args.key?(:name)
|
30232
30638
|
@num_vm_endpoints_with_nat_mappings = args[:num_vm_endpoints_with_nat_mappings] if args.key?(:num_vm_endpoints_with_nat_mappings)
|
30639
|
+
@rule_status = args[:rule_status] if args.key?(:rule_status)
|
30233
30640
|
@user_allocated_nat_ip_resources = args[:user_allocated_nat_ip_resources] if args.key?(:user_allocated_nat_ip_resources)
|
30234
30641
|
@user_allocated_nat_ips = args[:user_allocated_nat_ips] if args.key?(:user_allocated_nat_ips)
|
30235
30642
|
end
|
30236
30643
|
end
|
30237
30644
|
|
30645
|
+
# Status of a NAT Rule contained in this NAT.
|
30646
|
+
class RouterStatusNatStatusNatRuleStatus
|
30647
|
+
include Google::Apis::Core::Hashable
|
30648
|
+
|
30649
|
+
# A list of active IPs for NAT. Example: ["1.1.1.1", "179.12.26.133"].
|
30650
|
+
# Corresponds to the JSON property `activeNatIps`
|
30651
|
+
# @return [Array<String>]
|
30652
|
+
attr_accessor :active_nat_ips
|
30653
|
+
|
30654
|
+
# A list of IPs for NAT that are in drain mode. Example: ["1.1.1.1", "179.12.26.
|
30655
|
+
# 133"].
|
30656
|
+
# Corresponds to the JSON property `drainNatIps`
|
30657
|
+
# @return [Array<String>]
|
30658
|
+
attr_accessor :drain_nat_ips
|
30659
|
+
|
30660
|
+
# The number of extra IPs to allocate. This will be greater than 0 only if the
|
30661
|
+
# existing IPs in this NAT Rule are NOT enough to allow all configured VMs to
|
30662
|
+
# use NAT.
|
30663
|
+
# Corresponds to the JSON property `minExtraIpsNeeded`
|
30664
|
+
# @return [Fixnum]
|
30665
|
+
attr_accessor :min_extra_ips_needed
|
30666
|
+
|
30667
|
+
# Number of VM endpoints (i.e., NICs) that have NAT Mappings from this NAT Rule.
|
30668
|
+
# Corresponds to the JSON property `numVmEndpointsWithNatMappings`
|
30669
|
+
# @return [Fixnum]
|
30670
|
+
attr_accessor :num_vm_endpoints_with_nat_mappings
|
30671
|
+
|
30672
|
+
# Rule number of the rule.
|
30673
|
+
# Corresponds to the JSON property `ruleNumber`
|
30674
|
+
# @return [Fixnum]
|
30675
|
+
attr_accessor :rule_number
|
30676
|
+
|
30677
|
+
def initialize(**args)
|
30678
|
+
update!(**args)
|
30679
|
+
end
|
30680
|
+
|
30681
|
+
# Update properties of this object
|
30682
|
+
def update!(**args)
|
30683
|
+
@active_nat_ips = args[:active_nat_ips] if args.key?(:active_nat_ips)
|
30684
|
+
@drain_nat_ips = args[:drain_nat_ips] if args.key?(:drain_nat_ips)
|
30685
|
+
@min_extra_ips_needed = args[:min_extra_ips_needed] if args.key?(:min_extra_ips_needed)
|
30686
|
+
@num_vm_endpoints_with_nat_mappings = args[:num_vm_endpoints_with_nat_mappings] if args.key?(:num_vm_endpoints_with_nat_mappings)
|
30687
|
+
@rule_number = args[:rule_number] if args.key?(:rule_number)
|
30688
|
+
end
|
30689
|
+
end
|
30690
|
+
|
30238
30691
|
#
|
30239
30692
|
class RouterStatusResponse
|
30240
30693
|
include Google::Apis::Core::Hashable
|
@@ -30489,7 +30942,8 @@ module Google
|
|
30489
30942
|
end
|
30490
30943
|
end
|
30491
30944
|
|
30492
|
-
# An instance-attached disk
|
30945
|
+
# DEPRECATED: Please use compute#savedDisk instead. An instance-attached disk
|
30946
|
+
# resource.
|
30493
30947
|
class SavedAttachedDisk
|
30494
30948
|
include Google::Apis::Core::Hashable
|
30495
30949
|
|
@@ -30612,6 +31066,47 @@ module Google
|
|
30612
31066
|
end
|
30613
31067
|
end
|
30614
31068
|
|
31069
|
+
# An instance-attached disk resource.
|
31070
|
+
class SavedDisk
|
31071
|
+
include Google::Apis::Core::Hashable
|
31072
|
+
|
31073
|
+
# [Output Only] Type of the resource. Always compute#savedDisk for attached
|
31074
|
+
# disks.
|
31075
|
+
# Corresponds to the JSON property `kind`
|
31076
|
+
# @return [String]
|
31077
|
+
attr_accessor :kind
|
31078
|
+
|
31079
|
+
# Specifies a URL of the disk attached to the source instance.
|
31080
|
+
# Corresponds to the JSON property `sourceDisk`
|
31081
|
+
# @return [String]
|
31082
|
+
attr_accessor :source_disk
|
31083
|
+
|
31084
|
+
# [Output Only] Size of the individual disk snapshot used by this machine image.
|
31085
|
+
# Corresponds to the JSON property `storageBytes`
|
31086
|
+
# @return [Fixnum]
|
31087
|
+
attr_accessor :storage_bytes
|
31088
|
+
|
31089
|
+
# [Output Only] An indicator whether storageBytes is in a stable state or it is
|
31090
|
+
# being adjusted as a result of shared storage reallocation. This status can
|
31091
|
+
# either be UPDATING, meaning the size of the snapshot is being updated, or
|
31092
|
+
# UP_TO_DATE, meaning the size of the snapshot is up-to-date.
|
31093
|
+
# Corresponds to the JSON property `storageBytesStatus`
|
31094
|
+
# @return [String]
|
31095
|
+
attr_accessor :storage_bytes_status
|
31096
|
+
|
31097
|
+
def initialize(**args)
|
31098
|
+
update!(**args)
|
31099
|
+
end
|
31100
|
+
|
31101
|
+
# Update properties of this object
|
31102
|
+
def update!(**args)
|
31103
|
+
@kind = args[:kind] if args.key?(:kind)
|
31104
|
+
@source_disk = args[:source_disk] if args.key?(:source_disk)
|
31105
|
+
@storage_bytes = args[:storage_bytes] if args.key?(:storage_bytes)
|
31106
|
+
@storage_bytes_status = args[:storage_bytes_status] if args.key?(:storage_bytes_status)
|
31107
|
+
end
|
31108
|
+
end
|
31109
|
+
|
30615
31110
|
#
|
30616
31111
|
class ScalingScheduleStatus
|
30617
31112
|
include Google::Apis::Core::Hashable
|
@@ -30943,6 +31438,11 @@ module Google
|
|
30943
31438
|
# @return [String]
|
30944
31439
|
attr_accessor :parent
|
30945
31440
|
|
31441
|
+
#
|
31442
|
+
# Corresponds to the JSON property `recaptchaOptionsConfig`
|
31443
|
+
# @return [Google::Apis::ComputeBeta::SecurityPolicyRecaptchaOptionsConfig]
|
31444
|
+
attr_accessor :recaptcha_options_config
|
31445
|
+
|
30946
31446
|
# [Output Only] Total count of all security policy rule tuples. A security
|
30947
31447
|
# policy can not exceed a set number of tuples.
|
30948
31448
|
# Corresponds to the JSON property `ruleTupleCount`
|
@@ -30997,6 +31497,7 @@ module Google
|
|
30997
31497
|
@labels = args[:labels] if args.key?(:labels)
|
30998
31498
|
@name = args[:name] if args.key?(:name)
|
30999
31499
|
@parent = args[:parent] if args.key?(:parent)
|
31500
|
+
@recaptcha_options_config = args[:recaptcha_options_config] if args.key?(:recaptcha_options_config)
|
31000
31501
|
@rule_tuple_count = args[:rule_tuple_count] if args.key?(:rule_tuple_count)
|
31001
31502
|
@rules = args[:rules] if args.key?(:rules)
|
31002
31503
|
@self_link = args[:self_link] if args.key?(:self_link)
|
@@ -31225,6 +31726,29 @@ module Google
|
|
31225
31726
|
end
|
31226
31727
|
end
|
31227
31728
|
|
31729
|
+
#
|
31730
|
+
class SecurityPolicyRecaptchaOptionsConfig
|
31731
|
+
include Google::Apis::Core::Hashable
|
31732
|
+
|
31733
|
+
# An optional field to supply a reCAPTCHA site key to be used for all the rules
|
31734
|
+
# using the redirect action with the type of GOOGLE_RECAPTCHA under the security
|
31735
|
+
# policy. The specified site key needs to be created from the reCAPTCHA API. The
|
31736
|
+
# user is responsible for the validity of the specified site key. If not
|
31737
|
+
# specified, a Google-managed site key is used.
|
31738
|
+
# Corresponds to the JSON property `redirectSiteKey`
|
31739
|
+
# @return [String]
|
31740
|
+
attr_accessor :redirect_site_key
|
31741
|
+
|
31742
|
+
def initialize(**args)
|
31743
|
+
update!(**args)
|
31744
|
+
end
|
31745
|
+
|
31746
|
+
# Update properties of this object
|
31747
|
+
def update!(**args)
|
31748
|
+
@redirect_site_key = args[:redirect_site_key] if args.key?(:redirect_site_key)
|
31749
|
+
end
|
31750
|
+
end
|
31751
|
+
|
31228
31752
|
#
|
31229
31753
|
class SecurityPolicyReference
|
31230
31754
|
include Google::Apis::Core::Hashable
|
@@ -31249,9 +31773,17 @@ module Google
|
|
31249
31773
|
class SecurityPolicyRule
|
31250
31774
|
include Google::Apis::Core::Hashable
|
31251
31775
|
|
31252
|
-
# The Action to perform when the
|
31253
|
-
#
|
31254
|
-
# 404, and 502.
|
31776
|
+
# The Action to perform when the rule is matched. The following are the valid
|
31777
|
+
# actions: - allow: allow access to target. - deny(): deny access to target,
|
31778
|
+
# returns the HTTP response code specified (valid values are 403, 404, and 502).
|
31779
|
+
# - rate_based_ban: limit client traffic to the configured threshold and ban the
|
31780
|
+
# client if the traffic exceeds the threshold. Configure parameters for this
|
31781
|
+
# action in RateLimitOptions. Requires rate_limit_options to be set. - redirect:
|
31782
|
+
# redirect to a different target. This can either be an internal reCAPTCHA
|
31783
|
+
# redirect, or an external URL-based redirect via a 302 response. Parameters for
|
31784
|
+
# this action can be configured via redirectOptions. - throttle: limit client
|
31785
|
+
# traffic to the configured threshold. Configure parameters for this action in
|
31786
|
+
# rateLimitOptions. Requires rate_limit_options to be set for this.
|
31255
31787
|
# Corresponds to the JSON property `action`
|
31256
31788
|
# @return [String]
|
31257
31789
|
attr_accessor :action
|
@@ -31558,33 +32090,45 @@ module Google
|
|
31558
32090
|
attr_accessor :conform_action
|
31559
32091
|
|
31560
32092
|
# Determines the key to enforce the rate_limit_threshold on. Possible values are:
|
31561
|
-
#
|
31562
|
-
#
|
31563
|
-
#
|
31564
|
-
#
|
31565
|
-
#
|
31566
|
-
# header whose name is configured under "enforce_on_key_name". The key value is
|
32093
|
+
# - ALL: A single rate limit threshold is applied to all the requests matching
|
32094
|
+
# this rule. This is the default value if this field 'enforce_on_key' is not
|
32095
|
+
# configured. - IP: The source IP address of the request is the key. Each IP has
|
32096
|
+
# this limit enforced separately. - HTTP_HEADER: The value of the HTTP header
|
32097
|
+
# whose name is configured under "enforce_on_key_name". The key value is
|
31567
32098
|
# truncated to the first 128 bytes of the header value. If no such header is
|
31568
|
-
# present in the request, the key type defaults to
|
31569
|
-
#
|
31570
|
-
#
|
31571
|
-
#
|
32099
|
+
# present in the request, the key type defaults to ALL. - XFF_IP: The first IP
|
32100
|
+
# address (i.e. the originating client IP address) specified in the list of IPs
|
32101
|
+
# under X-Forwarded-For HTTP header. If no such header is present or the value
|
32102
|
+
# is not a valid IP, the key type defaults to ALL. - HTTP_COOKIE: The value of
|
32103
|
+
# the HTTP cookie whose name is configured under "enforce_on_key_name". The key
|
32104
|
+
# value is truncated to the first 128 bytes of the cookie value. If no such
|
32105
|
+
# cookie is present in the request, the key type defaults to ALL.
|
31572
32106
|
# Corresponds to the JSON property `enforceOnKey`
|
31573
32107
|
# @return [String]
|
31574
32108
|
attr_accessor :enforce_on_key
|
31575
32109
|
|
31576
32110
|
# Rate limit key name applicable only for the following key types: HTTP_HEADER --
|
31577
|
-
# Name of the HTTP header whose value is taken as the key value.
|
32111
|
+
# Name of the HTTP header whose value is taken as the key value. HTTP_COOKIE --
|
32112
|
+
# Name of the HTTP cookie whose value is taken as the key value.
|
31578
32113
|
# Corresponds to the JSON property `enforceOnKeyName`
|
31579
32114
|
# @return [String]
|
31580
32115
|
attr_accessor :enforce_on_key_name
|
31581
32116
|
|
31582
|
-
#
|
31583
|
-
#
|
32117
|
+
# Action to take for requests that are above the configured rate limit threshold,
|
32118
|
+
# to either deny with a specified HTTP response code, or redirect to a
|
32119
|
+
# different endpoint. Valid options are "deny()" where valid values for status
|
32120
|
+
# are 403, 404, 429, and 502, and "redirect" where the redirect parameters come
|
32121
|
+
# from exceed_redirect_options below.
|
31584
32122
|
# Corresponds to the JSON property `exceedAction`
|
31585
32123
|
# @return [String]
|
31586
32124
|
attr_accessor :exceed_action
|
31587
32125
|
|
32126
|
+
# Parameters defining the redirect action that is used as the exceed action.
|
32127
|
+
# Cannot be specified if the exceed action is not redirect.
|
32128
|
+
# Corresponds to the JSON property `exceedRedirectOptions`
|
32129
|
+
# @return [Google::Apis::ComputeBeta::SecurityPolicyRuleRedirectOptions]
|
32130
|
+
attr_accessor :exceed_redirect_options
|
32131
|
+
|
31588
32132
|
# Threshold at which to begin ratelimiting.
|
31589
32133
|
# Corresponds to the JSON property `rateLimitThreshold`
|
31590
32134
|
# @return [Google::Apis::ComputeBeta::SecurityPolicyRuleRateLimitOptionsThreshold]
|
@@ -31602,6 +32146,7 @@ module Google
|
|
31602
32146
|
@enforce_on_key = args[:enforce_on_key] if args.key?(:enforce_on_key)
|
31603
32147
|
@enforce_on_key_name = args[:enforce_on_key_name] if args.key?(:enforce_on_key_name)
|
31604
32148
|
@exceed_action = args[:exceed_action] if args.key?(:exceed_action)
|
32149
|
+
@exceed_redirect_options = args[:exceed_redirect_options] if args.key?(:exceed_redirect_options)
|
31605
32150
|
@rate_limit_threshold = args[:rate_limit_threshold] if args.key?(:rate_limit_threshold)
|
31606
32151
|
end
|
31607
32152
|
end
|
@@ -32334,9 +32879,8 @@ module Google
|
|
32334
32879
|
class ShareSettings
|
32335
32880
|
include Google::Apis::Core::Hashable
|
32336
32881
|
|
32337
|
-
# A map of project id and project config.
|
32338
|
-
#
|
32339
|
-
# remove) the array one.
|
32882
|
+
# A map of project id and project config. This is only valid when share_type's
|
32883
|
+
# value is SPECIFIC_PROJECTS.
|
32340
32884
|
# Corresponds to the JSON property `projectMap`
|
32341
32885
|
# @return [Hash<String,Google::Apis::ComputeBeta::ShareSettingsProjectConfig>]
|
32342
32886
|
attr_accessor :project_map
|
@@ -33030,7 +33574,8 @@ module Google
|
|
33030
33574
|
end
|
33031
33575
|
end
|
33032
33576
|
|
33033
|
-
#
|
33577
|
+
# DEPRECATED: Please use compute#instanceProperties instead. New properties will
|
33578
|
+
# not be added to this field.
|
33034
33579
|
class SourceInstanceProperties
|
33035
33580
|
include Google::Apis::Core::Hashable
|
33036
33581
|
|
@@ -33099,7 +33644,7 @@ module Google
|
|
33099
33644
|
# @return [Array<Google::Apis::ComputeBeta::NetworkInterface>]
|
33100
33645
|
attr_accessor :network_interfaces
|
33101
33646
|
|
33102
|
-
# PostKeyRevocationActionType of the instance.
|
33647
|
+
# PostKeyRevocationActionType of the instance.
|
33103
33648
|
# Corresponds to the JSON property `postKeyRevocationActionType`
|
33104
33649
|
# @return [String]
|
33105
33650
|
attr_accessor :post_key_revocation_action_type
|
@@ -34020,6 +34565,20 @@ module Google
|
|
34020
34565
|
# @return [Hash<String,Google::Apis::ComputeBeta::StatefulPolicyPreservedStateDiskDevice>]
|
34021
34566
|
attr_accessor :disks
|
34022
34567
|
|
34568
|
+
# External network IPs assigned to the instances that will be preserved on
|
34569
|
+
# instance delete, update, etc. This map is keyed with the network interface
|
34570
|
+
# name.
|
34571
|
+
# Corresponds to the JSON property `externalIPs`
|
34572
|
+
# @return [Hash<String,Google::Apis::ComputeBeta::StatefulPolicyPreservedStateNetworkIp>]
|
34573
|
+
attr_accessor :external_i_ps
|
34574
|
+
|
34575
|
+
# Internal network IPs assigned to the instances that will be preserved on
|
34576
|
+
# instance delete, update, etc. This map is keyed with the network interface
|
34577
|
+
# name.
|
34578
|
+
# Corresponds to the JSON property `internalIPs`
|
34579
|
+
# @return [Hash<String,Google::Apis::ComputeBeta::StatefulPolicyPreservedStateNetworkIp>]
|
34580
|
+
attr_accessor :internal_i_ps
|
34581
|
+
|
34023
34582
|
def initialize(**args)
|
34024
34583
|
update!(**args)
|
34025
34584
|
end
|
@@ -34027,6 +34586,8 @@ module Google
|
|
34027
34586
|
# Update properties of this object
|
34028
34587
|
def update!(**args)
|
34029
34588
|
@disks = args[:disks] if args.key?(:disks)
|
34589
|
+
@external_i_ps = args[:external_i_ps] if args.key?(:external_i_ps)
|
34590
|
+
@internal_i_ps = args[:internal_i_ps] if args.key?(:internal_i_ps)
|
34030
34591
|
end
|
34031
34592
|
end
|
34032
34593
|
|
@@ -34053,6 +34614,28 @@ module Google
|
|
34053
34614
|
end
|
34054
34615
|
end
|
34055
34616
|
|
34617
|
+
#
|
34618
|
+
class StatefulPolicyPreservedStateNetworkIp
|
34619
|
+
include Google::Apis::Core::Hashable
|
34620
|
+
|
34621
|
+
# These stateful IPs will never be released during autohealing, update or VM
|
34622
|
+
# instance recreate operations. This flag is used to configure if the IP
|
34623
|
+
# reservation should be deleted after it is no longer used by the group, e.g.
|
34624
|
+
# when the given instance or the whole group is deleted.
|
34625
|
+
# Corresponds to the JSON property `autoDelete`
|
34626
|
+
# @return [String]
|
34627
|
+
attr_accessor :auto_delete
|
34628
|
+
|
34629
|
+
def initialize(**args)
|
34630
|
+
update!(**args)
|
34631
|
+
end
|
34632
|
+
|
34633
|
+
# Update properties of this object
|
34634
|
+
def update!(**args)
|
34635
|
+
@auto_delete = args[:auto_delete] if args.key?(:auto_delete)
|
34636
|
+
end
|
34637
|
+
end
|
34638
|
+
|
34056
34639
|
# Represents a Subnetwork resource. A subnetwork (also known as a subnet) is a
|
34057
34640
|
# logical partition of a Virtual Private Cloud network with one primary IP range
|
34058
34641
|
# and zero or more secondary IP ranges. For more information, read Virtual
|
@@ -34091,8 +34674,9 @@ module Google
|
|
34091
34674
|
|
34092
34675
|
# Whether to enable flow logging for this subnetwork. If this field is not
|
34093
34676
|
# explicitly set, it will not appear in get listings. If not set the default
|
34094
|
-
# behavior is
|
34095
|
-
#
|
34677
|
+
# behavior is determined by the org policy, if there is no org policy specified,
|
34678
|
+
# then it will default to disabled. This field isn't supported with the purpose
|
34679
|
+
# field set to INTERNAL_HTTPS_LOAD_BALANCER.
|
34096
34680
|
# Corresponds to the JSON property `enableFlowLogs`
|
34097
34681
|
# @return [Boolean]
|
34098
34682
|
attr_accessor :enable_flow_logs
|
@@ -34540,7 +35124,8 @@ module Google
|
|
34540
35124
|
|
34541
35125
|
# Whether to enable flow logging for this subnetwork. If this field is not
|
34542
35126
|
# explicitly set, it will not appear in get listings. If not set the default
|
34543
|
-
# behavior is
|
35127
|
+
# behavior is determined by the org policy, if there is no org policy specified,
|
35128
|
+
# then it will default to disabled.
|
34544
35129
|
# Corresponds to the JSON property `enable`
|
34545
35130
|
# @return [Boolean]
|
34546
35131
|
attr_accessor :enable
|
@@ -34555,8 +35140,8 @@ module Google
|
|
34555
35140
|
# Can only be specified if VPC flow logging for this subnetwork is enabled. The
|
34556
35141
|
# value of the field must be in [0, 1]. Set the sampling rate of VPC flow logs
|
34557
35142
|
# within the subnetwork where 1.0 means all collected logs are reported and 0.0
|
34558
|
-
# means no logs are reported. Default is 0.5
|
34559
|
-
# logs are reported.
|
35143
|
+
# means no logs are reported. Default is 0.5 unless otherwise specified by the
|
35144
|
+
# org policy, which means half of all collected logs are reported.
|
34560
35145
|
# Corresponds to the JSON property `flowSampling`
|
34561
35146
|
# @return [Float]
|
34562
35147
|
attr_accessor :flow_sampling
|
@@ -34762,6 +35347,20 @@ module Google
|
|
34762
35347
|
# @return [String]
|
34763
35348
|
attr_accessor :policy
|
34764
35349
|
|
35350
|
+
# The number of backends per backend group assigned to each proxy instance or
|
35351
|
+
# each service mesh client. An input parameter to the `
|
35352
|
+
# CONSISTENT_HASH_SUBSETTING` algorithm. Can only be set if `policy` is set to `
|
35353
|
+
# CONSISTENT_HASH_SUBSETTING`. Can only be set if load balancing scheme is `
|
35354
|
+
# INTERNAL_MANAGED` or `INTERNAL_SELF_MANAGED`. `subset_size` is optional for
|
35355
|
+
# Internal HTTP(S) load balancing and required for Traffic Director. If you do
|
35356
|
+
# not provide this value, Cloud Load Balancing will calculate it dynamically to
|
35357
|
+
# optimize the number of proxies/clients visible to each backend and vice versa.
|
35358
|
+
# Must be greater than 0. If `subset_size` is larger than the number of backends/
|
35359
|
+
# endpoints, then subsetting is disabled.
|
35360
|
+
# Corresponds to the JSON property `subsetSize`
|
35361
|
+
# @return [Fixnum]
|
35362
|
+
attr_accessor :subset_size
|
35363
|
+
|
34765
35364
|
def initialize(**args)
|
34766
35365
|
update!(**args)
|
34767
35366
|
end
|
@@ -34769,6 +35368,7 @@ module Google
|
|
34769
35368
|
# Update properties of this object
|
34770
35369
|
def update!(**args)
|
34771
35370
|
@policy = args[:policy] if args.key?(:policy)
|
35371
|
+
@subset_size = args[:subset_size] if args.key?(:subset_size)
|
34772
35372
|
end
|
34773
35373
|
end
|
34774
35374
|
|
@@ -38127,7 +38727,7 @@ module Google
|
|
38127
38727
|
class TestFailure
|
38128
38728
|
include Google::Apis::Core::Hashable
|
38129
38729
|
|
38130
|
-
# The actual output URL evaluated by load balancer containing the scheme, host,
|
38730
|
+
# The actual output URL evaluated by a load balancer containing the scheme, host,
|
38131
38731
|
# path and query parameters.
|
38132
38732
|
# Corresponds to the JSON property `actualOutputUrl`
|
38133
38733
|
# @return [String]
|
@@ -38144,8 +38744,8 @@ module Google
|
|
38144
38744
|
# @return [String]
|
38145
38745
|
attr_accessor :actual_service
|
38146
38746
|
|
38147
|
-
# The expected output URL evaluated by load balancer containing the scheme,
|
38148
|
-
# path and query parameters.
|
38747
|
+
# The expected output URL evaluated by a load balancer containing the scheme,
|
38748
|
+
# host, path and query parameters.
|
38149
38749
|
# Corresponds to the JSON property `expectedOutputUrl`
|
38150
38750
|
# @return [String]
|
38151
38751
|
attr_accessor :expected_output_url
|
@@ -38259,21 +38859,21 @@ module Google
|
|
38259
38859
|
end
|
38260
38860
|
end
|
38261
38861
|
|
38262
|
-
# Represents a URL Map resource.
|
38263
|
-
#
|
38264
|
-
#
|
38265
|
-
# certain types of
|
38862
|
+
# Represents a URL Map resource. Compute Engine has two URL Map resources: * [
|
38863
|
+
# Global](/compute/docs/reference/rest/beta/urlMaps) * [Regional](/compute/docs/
|
38864
|
+
# reference/rest/beta/regionUrlMaps) A URL map resource is a component of
|
38865
|
+
# certain types of cloud load balancers and Traffic Director: * urlMaps are used
|
38266
38866
|
# by external HTTP(S) load balancers and Traffic Director. * regionUrlMaps are
|
38267
38867
|
# used by internal HTTP(S) load balancers. For a list of supported URL map
|
38268
|
-
# features by load balancer type, see the Load balancing features: Routing
|
38269
|
-
# traffic management table. For a list of supported URL map features for
|
38270
|
-
# Director, see the Traffic Director features: Routing and traffic
|
38271
|
-
# table. This resource defines mappings from
|
38272
|
-
# a backend service or a backend bucket. To use the global urlMaps
|
38273
|
-
# backend service must have a loadBalancingScheme of either
|
38274
|
-
# INTERNAL_SELF_MANAGED. To use the regionUrlMaps resource, the
|
38275
|
-
# must have a loadBalancingScheme of INTERNAL_MANAGED. For more
|
38276
|
-
# read URL Map Concepts.
|
38868
|
+
# features by the load balancer type, see the Load balancing features: Routing
|
38869
|
+
# and traffic management table. For a list of supported URL map features for
|
38870
|
+
# Traffic Director, see the Traffic Director features: Routing and traffic
|
38871
|
+
# management table. This resource defines mappings from hostnames and URL paths
|
38872
|
+
# to either a backend service or a backend bucket. To use the global urlMaps
|
38873
|
+
# resource, the backend service must have a loadBalancingScheme of either
|
38874
|
+
# EXTERNAL or INTERNAL_SELF_MANAGED. To use the regionUrlMaps resource, the
|
38875
|
+
# backend service must have a loadBalancingScheme of INTERNAL_MANAGED. For more
|
38876
|
+
# information, read URL Map Concepts.
|
38277
38877
|
class UrlMap
|
38278
38878
|
include Google::Apis::Core::Hashable
|
38279
38879
|
|
@@ -38283,28 +38883,28 @@ module Google
|
|
38283
38883
|
attr_accessor :creation_timestamp
|
38284
38884
|
|
38285
38885
|
# defaultRouteAction takes effect when none of the hostRules match. The load
|
38286
|
-
# balancer performs advanced routing actions
|
38287
|
-
# transformations,
|
38288
|
-
#
|
38289
|
-
#
|
38290
|
-
#
|
38886
|
+
# balancer performs advanced routing actions, such as URL rewrites and header
|
38887
|
+
# transformations, before forwarding the request to the selected backend. If
|
38888
|
+
# defaultRouteAction specifies any weightedBackendServices, defaultService must
|
38889
|
+
# not be set. Conversely if defaultService is set, defaultRouteAction cannot
|
38890
|
+
# contain any weightedBackendServices. Only one of defaultRouteAction or
|
38291
38891
|
# defaultUrlRedirect must be set. UrlMaps for external HTTP(S) load balancers
|
38292
38892
|
# support only the urlRewrite action within defaultRouteAction.
|
38293
|
-
# defaultRouteAction has no effect when the URL map is bound to target gRPC
|
38294
|
-
# proxy that has validateForProxyless field set to true.
|
38893
|
+
# defaultRouteAction has no effect when the URL map is bound to a target gRPC
|
38894
|
+
# proxy that has the validateForProxyless field set to true.
|
38295
38895
|
# Corresponds to the JSON property `defaultRouteAction`
|
38296
38896
|
# @return [Google::Apis::ComputeBeta::HttpRouteAction]
|
38297
38897
|
attr_accessor :default_route_action
|
38298
38898
|
|
38299
38899
|
# The full or partial URL of the defaultService resource to which traffic is
|
38300
|
-
# directed if none of the hostRules match. If defaultRouteAction is
|
38301
|
-
# specified, advanced routing actions
|
38302
|
-
#
|
38900
|
+
# directed if none of the hostRules match. If defaultRouteAction is also
|
38901
|
+
# specified, advanced routing actions, such as URL rewrites, take effect before
|
38902
|
+
# sending the request to the backend. However, if defaultService is specified,
|
38303
38903
|
# defaultRouteAction cannot contain any weightedBackendServices. Conversely, if
|
38304
38904
|
# routeAction specifies any weightedBackendServices, service must not be
|
38305
|
-
# specified. Only one of defaultService, defaultUrlRedirect or
|
38905
|
+
# specified. Only one of defaultService, defaultUrlRedirect , or
|
38306
38906
|
# defaultRouteAction.weightedBackendService must be set. defaultService has no
|
38307
|
-
# effect when the URL map is bound to target gRPC proxy that has
|
38907
|
+
# effect when the URL map is bound to a target gRPC proxy that has the
|
38308
38908
|
# validateForProxyless field set to true.
|
38309
38909
|
# Corresponds to the JSON property `defaultService`
|
38310
38910
|
# @return [String]
|
@@ -38322,11 +38922,10 @@ module Google
|
|
38322
38922
|
attr_accessor :description
|
38323
38923
|
|
38324
38924
|
# Fingerprint of this resource. A hash of the contents stored in this object.
|
38325
|
-
# This field is used in optimistic locking. This field
|
38326
|
-
#
|
38327
|
-
#
|
38328
|
-
#
|
38329
|
-
# retrieve a UrlMap.
|
38925
|
+
# This field is used in optimistic locking. This field is ignored when inserting
|
38926
|
+
# a UrlMap. An up-to-date fingerprint must be provided in order to update the
|
38927
|
+
# UrlMap, otherwise the request will fail with error 412 conditionNotMet. To see
|
38928
|
+
# the latest fingerprint, make a get() request to retrieve a UrlMap.
|
38330
38929
|
# Corresponds to the JSON property `fingerprint`
|
38331
38930
|
# NOTE: Values are automatically base64 encoded/decoded in the client library.
|
38332
38931
|
# @return [String]
|
@@ -38338,7 +38937,7 @@ module Google
|
|
38338
38937
|
# @return [Google::Apis::ComputeBeta::HttpHeaderAction]
|
38339
38938
|
attr_accessor :header_action
|
38340
38939
|
|
38341
|
-
# The list of
|
38940
|
+
# The list of host rules to use against the URL.
|
38342
38941
|
# Corresponds to the JSON property `hostRules`
|
38343
38942
|
# @return [Array<Google::Apis::ComputeBeta::HostRule>]
|
38344
38943
|
attr_accessor :host_rules
|
@@ -38381,10 +38980,10 @@ module Google
|
|
38381
38980
|
# @return [String]
|
38382
38981
|
attr_accessor :self_link
|
38383
38982
|
|
38384
|
-
# The list of expected URL mapping tests. Request to update
|
38385
|
-
#
|
38386
|
-
#
|
38387
|
-
#
|
38983
|
+
# The list of expected URL mapping tests. Request to update the UrlMap succeeds
|
38984
|
+
# only if all test cases pass. You can specify a maximum of 100 tests per UrlMap.
|
38985
|
+
# Not supported when the URL map is bound to a target gRPC proxy that has
|
38986
|
+
# validateForProxyless field set to true.
|
38388
38987
|
# Corresponds to the JSON property `tests`
|
38389
38988
|
# @return [Array<Google::Apis::ComputeBeta::UrlMapTest>]
|
38390
38989
|
attr_accessor :tests
|
@@ -38558,18 +39157,18 @@ module Google
|
|
38558
39157
|
# @return [String]
|
38559
39158
|
attr_accessor :description
|
38560
39159
|
|
38561
|
-
# The expected output URL evaluated by load balancer containing the scheme,
|
38562
|
-
# path and query parameters. For rules that forward requests to backends,
|
38563
|
-
# test passes only when expectedOutputUrl matches the request forwarded by
|
38564
|
-
# balancer to backends. For rules with urlRewrite, the test verifies
|
38565
|
-
# forwarded request matches hostRewrite and pathPrefixRewrite in the
|
38566
|
-
# action. When service is specified, expectedOutputUrl`s scheme is
|
38567
|
-
# rules with urlRedirect, the test passes only if expectedOutputUrl
|
38568
|
-
# URL in the load balancer's redirect response. If urlRedirect
|
38569
|
-
# https_redirect, the test passes only if the scheme in
|
38570
|
-
# also set to
|
38571
|
-
# if expectedOutputUrl does not contain any query
|
38572
|
-
# is optional when service is specified.
|
39160
|
+
# The expected output URL evaluated by the load balancer containing the scheme,
|
39161
|
+
# host, path and query parameters. For rules that forward requests to backends,
|
39162
|
+
# the test passes only when expectedOutputUrl matches the request forwarded by
|
39163
|
+
# the load balancer to backends. For rules with urlRewrite, the test verifies
|
39164
|
+
# that the forwarded request matches hostRewrite and pathPrefixRewrite in the
|
39165
|
+
# urlRewrite action. When service is specified, expectedOutputUrl`s scheme is
|
39166
|
+
# ignored. For rules with urlRedirect, the test passes only if expectedOutputUrl
|
39167
|
+
# matches the URL in the load balancer's redirect response. If urlRedirect
|
39168
|
+
# specifies https_redirect, the test passes only if the scheme in
|
39169
|
+
# expectedOutputUrl is also set to HTTPS. If urlRedirect specifies strip_query,
|
39170
|
+
# the test passes only if expectedOutputUrl does not contain any query
|
39171
|
+
# parameters. expectedOutputUrl is optional when service is specified.
|
38573
39172
|
# Corresponds to the JSON property `expectedOutputUrl`
|
38574
39173
|
# @return [String]
|
38575
39174
|
attr_accessor :expected_output_url
|
@@ -38600,7 +39199,8 @@ module Google
|
|
38600
39199
|
attr_accessor :path
|
38601
39200
|
|
38602
39201
|
# Expected BackendService or BackendBucket resource the given URL should be
|
38603
|
-
# mapped to. service cannot be set if expectedRedirectResponseCode is
|
39202
|
+
# mapped to. The service field cannot be set if expectedRedirectResponseCode is
|
39203
|
+
# set.
|
38604
39204
|
# Corresponds to the JSON property `service`
|
38605
39205
|
# @return [String]
|
38606
39206
|
attr_accessor :service
|
@@ -38905,21 +39505,36 @@ module Google
|
|
38905
39505
|
class ValidateUrlMapsRequest
|
38906
39506
|
include Google::Apis::Core::Hashable
|
38907
39507
|
|
38908
|
-
#
|
38909
|
-
#
|
38910
|
-
#
|
38911
|
-
#
|
39508
|
+
# Specifies the load balancer type(s) this validation request is for. Use
|
39509
|
+
# EXTERNAL_MANAGED for HTTP/HTTPS External Global Load Balancer with Advanced
|
39510
|
+
# Traffic Management. Use EXTERNAL for Classic HTTP/HTTPS External Global Load
|
39511
|
+
# Balancer. Other load balancer types are not supported. For more information,
|
39512
|
+
# refer to Choosing a load balancer. If unspecified, the load balancing scheme
|
39513
|
+
# will be inferred from the backend service resources this URL map references.
|
39514
|
+
# If that can not be inferred (for example, this URL map only references backend
|
39515
|
+
# buckets, or this Url map is for rewrites and redirects only and doesn't
|
39516
|
+
# reference any backends), EXTERNAL will be used as the default type. If
|
39517
|
+
# specified, the scheme(s) must not conflict with the load balancing scheme of
|
39518
|
+
# the backend service resources this Url map references.
|
39519
|
+
# Corresponds to the JSON property `loadBalancingSchemes`
|
39520
|
+
# @return [Array<String>]
|
39521
|
+
attr_accessor :load_balancing_schemes
|
39522
|
+
|
39523
|
+
# Represents a URL Map resource. Compute Engine has two URL Map resources: * [
|
39524
|
+
# Global](/compute/docs/reference/rest/beta/urlMaps) * [Regional](/compute/docs/
|
39525
|
+
# reference/rest/beta/regionUrlMaps) A URL map resource is a component of
|
39526
|
+
# certain types of cloud load balancers and Traffic Director: * urlMaps are used
|
38912
39527
|
# by external HTTP(S) load balancers and Traffic Director. * regionUrlMaps are
|
38913
39528
|
# used by internal HTTP(S) load balancers. For a list of supported URL map
|
38914
|
-
# features by load balancer type, see the Load balancing features: Routing
|
38915
|
-
# traffic management table. For a list of supported URL map features for
|
38916
|
-
# Director, see the Traffic Director features: Routing and traffic
|
38917
|
-
# table. This resource defines mappings from
|
38918
|
-
# a backend service or a backend bucket. To use the global urlMaps
|
38919
|
-
# backend service must have a loadBalancingScheme of either
|
38920
|
-
# INTERNAL_SELF_MANAGED. To use the regionUrlMaps resource, the
|
38921
|
-
# must have a loadBalancingScheme of INTERNAL_MANAGED. For more
|
38922
|
-
# read URL Map Concepts.
|
39529
|
+
# features by the load balancer type, see the Load balancing features: Routing
|
39530
|
+
# and traffic management table. For a list of supported URL map features for
|
39531
|
+
# Traffic Director, see the Traffic Director features: Routing and traffic
|
39532
|
+
# management table. This resource defines mappings from hostnames and URL paths
|
39533
|
+
# to either a backend service or a backend bucket. To use the global urlMaps
|
39534
|
+
# resource, the backend service must have a loadBalancingScheme of either
|
39535
|
+
# EXTERNAL or INTERNAL_SELF_MANAGED. To use the regionUrlMaps resource, the
|
39536
|
+
# backend service must have a loadBalancingScheme of INTERNAL_MANAGED. For more
|
39537
|
+
# information, read URL Map Concepts.
|
38923
39538
|
# Corresponds to the JSON property `resource`
|
38924
39539
|
# @return [Google::Apis::ComputeBeta::UrlMap]
|
38925
39540
|
attr_accessor :resource
|
@@ -38930,6 +39545,7 @@ module Google
|
|
38930
39545
|
|
38931
39546
|
# Update properties of this object
|
38932
39547
|
def update!(**args)
|
39548
|
+
@load_balancing_schemes = args[:load_balancing_schemes] if args.key?(:load_balancing_schemes)
|
38933
39549
|
@resource = args[:resource] if args.key?(:resource)
|
38934
39550
|
end
|
38935
39551
|
end
|
@@ -38958,16 +39574,16 @@ module Google
|
|
38958
39574
|
class UrlRewrite
|
38959
39575
|
include Google::Apis::Core::Hashable
|
38960
39576
|
|
38961
|
-
#
|
38962
|
-
# header is replaced with contents of hostRewrite. The value must be
|
38963
|
-
#
|
39577
|
+
# Before forwarding the request to the selected service, the request's host
|
39578
|
+
# header is replaced with contents of hostRewrite. The value must be from 1 to
|
39579
|
+
# 255 characters.
|
38964
39580
|
# Corresponds to the JSON property `hostRewrite`
|
38965
39581
|
# @return [String]
|
38966
39582
|
attr_accessor :host_rewrite
|
38967
39583
|
|
38968
|
-
#
|
39584
|
+
# Before forwarding the request to the selected backend service, the matching
|
38969
39585
|
# portion of the request's path is replaced by pathPrefixRewrite. The value must
|
38970
|
-
# be
|
39586
|
+
# be from 1 to 1024 characters.
|
38971
39587
|
# Corresponds to the JSON property `pathPrefixRewrite`
|
38972
39588
|
# @return [String]
|
38973
39589
|
attr_accessor :path_prefix_rewrite
|
@@ -39477,6 +40093,12 @@ module Google
|
|
39477
40093
|
# @return [String]
|
39478
40094
|
attr_accessor :self_link
|
39479
40095
|
|
40096
|
+
# The stack type for this VPN gateway to identify the IP protocols that are
|
40097
|
+
# enabled. If not specified, IPV4_ONLY will be used.
|
40098
|
+
# Corresponds to the JSON property `stackType`
|
40099
|
+
# @return [String]
|
40100
|
+
attr_accessor :stack_type
|
40101
|
+
|
39480
40102
|
# The list of VPN interfaces associated with this VPN gateway.
|
39481
40103
|
# Corresponds to the JSON property `vpnInterfaces`
|
39482
40104
|
# @return [Array<Google::Apis::ComputeBeta::VpnGatewayVpnGatewayInterface>]
|
@@ -39498,6 +40120,7 @@ module Google
|
|
39498
40120
|
@network = args[:network] if args.key?(:network)
|
39499
40121
|
@region = args[:region] if args.key?(:region)
|
39500
40122
|
@self_link = args[:self_link] if args.key?(:self_link)
|
40123
|
+
@stack_type = args[:stack_type] if args.key?(:stack_type)
|
39501
40124
|
@vpn_interfaces = args[:vpn_interfaces] if args.key?(:vpn_interfaces)
|
39502
40125
|
end
|
39503
40126
|
end
|
@@ -40621,14 +41244,13 @@ module Google
|
|
40621
41244
|
|
40622
41245
|
# In contrast to a single BackendService in HttpRouteAction to which all
|
40623
41246
|
# matching traffic is directed to, WeightedBackendService allows traffic to be
|
40624
|
-
# split across multiple
|
40625
|
-
#
|
40626
|
-
# WeightedBackendService
|
41247
|
+
# split across multiple backend services. The volume of traffic for each backend
|
41248
|
+
# service is proportional to the weight specified in each WeightedBackendService
|
40627
41249
|
class WeightedBackendService
|
40628
41250
|
include Google::Apis::Core::Hashable
|
40629
41251
|
|
40630
41252
|
# The full or partial URL to the default BackendService resource. Before
|
40631
|
-
# forwarding the request to backendService, the
|
41253
|
+
# forwarding the request to backendService, the load balancer applies any
|
40632
41254
|
# relevant headerActions specified as part of this backendServiceWeight.
|
40633
41255
|
# Corresponds to the JSON property `backendService`
|
40634
41256
|
# @return [String]
|
@@ -40640,12 +41262,12 @@ module Google
|
|
40640
41262
|
# @return [Google::Apis::ComputeBeta::HttpHeaderAction]
|
40641
41263
|
attr_accessor :header_action
|
40642
41264
|
|
40643
|
-
# Specifies the fraction of traffic sent to
|
40644
|
-
# (sum of all weightedBackendService weights in routeAction) . The
|
40645
|
-
# a backend service is determined only for new traffic. Once a user'
|
40646
|
-
# has been directed to a
|
40647
|
-
# same
|
40648
|
-
# policy. The value must be
|
41265
|
+
# Specifies the fraction of traffic sent to a backend service, computed as
|
41266
|
+
# weight / (sum of all weightedBackendService weights in routeAction) . The
|
41267
|
+
# selection of a backend service is determined only for new traffic. Once a user'
|
41268
|
+
# s request has been directed to a backend service, subsequent requests are sent
|
41269
|
+
# to the same backend service as determined by the backend service's session
|
41270
|
+
# affinity policy. The value must be from 0 to 1000.
|
40649
41271
|
# Corresponds to the JSON property `weight`
|
40650
41272
|
# @return [Fixnum]
|
40651
41273
|
attr_accessor :weight
|
@@ -41055,31 +41677,31 @@ module Google
|
|
41055
41677
|
|
41056
41678
|
# An Identity and Access Management (IAM) policy, which specifies access
|
41057
41679
|
# controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
|
41058
|
-
# A `binding` binds one or more `members
|
41059
|
-
# user accounts, service accounts, Google groups, and domains (
|
41060
|
-
# A `role` is a named list of permissions; each `role` can be
|
41061
|
-
# role or a user-created custom role. For some types of Google
|
41062
|
-
# a `binding` can also specify a `condition`, which is a
|
41063
|
-
# allows access to a resource only if the expression
|
41064
|
-
# condition can add constraints based on attributes of
|
41065
|
-
# or both. To learn which resources support
|
41066
|
-
# see the [IAM documentation](https://cloud.
|
41067
|
-
# resource-policies). **JSON example:** ` "
|
41068
|
-
# resourcemanager.organizationAdmin", "members": [
|
41069
|
-
# group:admins@example.com", "domain:google.com", "
|
41070
|
-
# appspot.gserviceaccount.com" ] `, ` "role": "
|
41071
|
-
# organizationViewer", "members": [ "user:eve@example.com"
|
41072
|
-
# title": "expirable access", "description": "Does not grant
|
41073
|
-
# 2020", "expression": "request.time < timestamp('2020-10-01T00:
|
41074
|
-
# ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
|
41075
|
-
# members: - user:mike@example.com - group:admins@example.com -
|
41076
|
-
# com - serviceAccount:my-project-id@appspot.gserviceaccount.com
|
41077
|
-
# resourcemanager.organizationAdmin - members: - user:eve@example.
|
41078
|
-
# roles/resourcemanager.organizationViewer condition: title: expirable
|
41079
|
-
# description: Does not grant access after Sep 2020 expression: request.
|
41080
|
-
# timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
|
41081
|
-
# description of IAM and its features, see the [IAM documentation](https://
|
41082
|
-
# google.com/iam/docs/).
|
41680
|
+
# A `binding` binds one or more `members`, or principals, to a single `role`.
|
41681
|
+
# Principals can be user accounts, service accounts, Google groups, and domains (
|
41682
|
+
# such as G Suite). A `role` is a named list of permissions; each `role` can be
|
41683
|
+
# an IAM predefined role or a user-created custom role. For some types of Google
|
41684
|
+
# Cloud resources, a `binding` can also specify a `condition`, which is a
|
41685
|
+
# logical expression that allows access to a resource only if the expression
|
41686
|
+
# evaluates to `true`. A condition can add constraints based on attributes of
|
41687
|
+
# the request, the resource, or both. To learn which resources support
|
41688
|
+
# conditions in their IAM policies, see the [IAM documentation](https://cloud.
|
41689
|
+
# google.com/iam/help/conditions/resource-policies). **JSON example:** ` "
|
41690
|
+
# bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
|
41691
|
+
# "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
|
41692
|
+
# serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
|
41693
|
+
# roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
|
41694
|
+
# ], "condition": ` "title": "expirable access", "description": "Does not grant
|
41695
|
+
# access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
|
41696
|
+
# 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
|
41697
|
+
# bindings: - members: - user:mike@example.com - group:admins@example.com -
|
41698
|
+
# domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
|
41699
|
+
# role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
|
41700
|
+
# com role: roles/resourcemanager.organizationViewer condition: title: expirable
|
41701
|
+
# access description: Does not grant access after Sep 2020 expression: request.
|
41702
|
+
# time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
|
41703
|
+
# a description of IAM and its features, see the [IAM documentation](https://
|
41704
|
+
# cloud.google.com/iam/docs/).
|
41083
41705
|
# Corresponds to the JSON property `policy`
|
41084
41706
|
# @return [Google::Apis::ComputeBeta::Policy]
|
41085
41707
|
attr_accessor :policy
|