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