google-apis-compute_v1 0.18.0 → 0.22.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +17 -0
- data/OVERVIEW.md +2 -2
- data/lib/google/apis/compute_v1/classes.rb +2014 -475
- data/lib/google/apis/compute_v1/gem_version.rb +2 -2
- data/lib/google/apis/compute_v1/representations.rb +474 -1
- data/lib/google/apis/compute_v1/service.rb +2852 -1709
- metadata +5 -5
@@ -464,15 +464,15 @@ module Google
|
|
464
464
|
class AccessConfig
|
465
465
|
include Google::Apis::Core::Hashable
|
466
466
|
|
467
|
-
#
|
468
|
-
#
|
467
|
+
# The first IPv6 address of the external IPv6 range associated with this
|
468
|
+
# instance, prefix length is stored in externalIpv6PrefixLength in
|
469
469
|
# ipv6AccessConfig. The field is output only, an IPv6 address from a subnetwork
|
470
470
|
# associated with the instance will be allocated dynamically.
|
471
471
|
# Corresponds to the JSON property `externalIpv6`
|
472
472
|
# @return [String]
|
473
473
|
attr_accessor :external_ipv6
|
474
474
|
|
475
|
-
#
|
475
|
+
# The prefix length of the external IPv6 range.
|
476
476
|
# Corresponds to the JSON property `externalIpv6PrefixLength`
|
477
477
|
# @return [Fixnum]
|
478
478
|
attr_accessor :external_ipv6_prefix_length
|
@@ -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
|
@@ -629,14 +633,14 @@ module Google
|
|
629
633
|
# regional internal IP address in a subnet of a VPC network) - VPC_PEERING for
|
630
634
|
# global internal IP addresses used for private services access allocated ranges.
|
631
635
|
# - NAT_AUTO for the regional external IP addresses used by Cloud NAT when
|
632
|
-
# allocating addresses using
|
633
|
-
#
|
634
|
-
#
|
635
|
-
#
|
636
|
-
# an internal IP address that is
|
637
|
-
#
|
638
|
-
#
|
639
|
-
# purpose.
|
636
|
+
# allocating addresses using automatic NAT IP address allocation. -
|
637
|
+
# IPSEC_INTERCONNECT for addresses created from a private IP range that are
|
638
|
+
# reserved for a VLAN attachment in an *IPsec-encrypted Cloud Interconnect*
|
639
|
+
# configuration. These addresses are regional resources. Not currently available
|
640
|
+
# publicly. - `SHARED_LOADBALANCER_VIP` for an internal IP address that is
|
641
|
+
# assigned to multiple internal forwarding rules. - `PRIVATE_SERVICE_CONNECT`
|
642
|
+
# for a private network address that is used to configure Private Service
|
643
|
+
# Connect. Only global internal addresses can use this purpose.
|
640
644
|
# Corresponds to the JSON property `purpose`
|
641
645
|
# @return [String]
|
642
646
|
attr_accessor :purpose
|
@@ -1311,7 +1315,8 @@ module Google
|
|
1311
1315
|
# initializeParams.sourceSnapshot or disks.source is required except for local
|
1312
1316
|
# SSD. If desired, you can also attach existing non-root persistent disks using
|
1313
1317
|
# this property. This field is only applicable for persistent disks. Note that
|
1314
|
-
# for InstanceTemplate, specify the disk name,
|
1318
|
+
# for InstanceTemplate, specify the disk name for zonal disk, and the URL for
|
1319
|
+
# regional disk.
|
1315
1320
|
# Corresponds to the JSON property `source`
|
1316
1321
|
# @return [String]
|
1317
1322
|
attr_accessor :source
|
@@ -1394,6 +1399,11 @@ module Google
|
|
1394
1399
|
# @return [Hash<String,String>]
|
1395
1400
|
attr_accessor :labels
|
1396
1401
|
|
1402
|
+
# A list of publicly visible licenses. Reserved for Google's use.
|
1403
|
+
# Corresponds to the JSON property `licenses`
|
1404
|
+
# @return [Array<String>]
|
1405
|
+
attr_accessor :licenses
|
1406
|
+
|
1397
1407
|
# Specifies which action to take on instance update with this disk. Default is
|
1398
1408
|
# to use the existing disk.
|
1399
1409
|
# Corresponds to the JSON property `onUpdateAction`
|
@@ -1466,6 +1476,7 @@ module Google
|
|
1466
1476
|
@disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb)
|
1467
1477
|
@disk_type = args[:disk_type] if args.key?(:disk_type)
|
1468
1478
|
@labels = args[:labels] if args.key?(:labels)
|
1479
|
+
@licenses = args[:licenses] if args.key?(:licenses)
|
1469
1480
|
@on_update_action = args[:on_update_action] if args.key?(:on_update_action)
|
1470
1481
|
@provisioned_iops = args[:provisioned_iops] if args.key?(:provisioned_iops)
|
1471
1482
|
@resource_policies = args[:resource_policies] if args.key?(:resource_policies)
|
@@ -2561,6 +2572,12 @@ module Google
|
|
2561
2572
|
# @return [String]
|
2562
2573
|
attr_accessor :description
|
2563
2574
|
|
2575
|
+
# [Output Only] The resource URL for the edge security policy associated with
|
2576
|
+
# this backend bucket.
|
2577
|
+
# Corresponds to the JSON property `edgeSecurityPolicy`
|
2578
|
+
# @return [String]
|
2579
|
+
attr_accessor :edge_security_policy
|
2580
|
+
|
2564
2581
|
# If true, enable Cloud CDN for this BackendBucket.
|
2565
2582
|
# Corresponds to the JSON property `enableCdn`
|
2566
2583
|
# @return [Boolean]
|
@@ -2603,6 +2620,7 @@ module Google
|
|
2603
2620
|
@creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
|
2604
2621
|
@custom_response_headers = args[:custom_response_headers] if args.key?(:custom_response_headers)
|
2605
2622
|
@description = args[:description] if args.key?(:description)
|
2623
|
+
@edge_security_policy = args[:edge_security_policy] if args.key?(:edge_security_policy)
|
2606
2624
|
@enable_cdn = args[:enable_cdn] if args.key?(:enable_cdn)
|
2607
2625
|
@id = args[:id] if args.key?(:id)
|
2608
2626
|
@kind = args[:kind] if args.key?(:kind)
|
@@ -2622,6 +2640,12 @@ module Google
|
|
2622
2640
|
# @return [Array<Google::Apis::ComputeV1::BackendBucketCdnPolicyBypassCacheOnRequestHeader>]
|
2623
2641
|
attr_accessor :bypass_cache_on_request_headers
|
2624
2642
|
|
2643
|
+
# Message containing what to include in the cache key for a request for Cloud
|
2644
|
+
# CDN.
|
2645
|
+
# Corresponds to the JSON property `cacheKeyPolicy`
|
2646
|
+
# @return [Google::Apis::ComputeV1::BackendBucketCdnPolicyCacheKeyPolicy]
|
2647
|
+
attr_accessor :cache_key_policy
|
2648
|
+
|
2625
2649
|
# Specifies the cache setting for all responses from this backend. The possible
|
2626
2650
|
# values are: USE_ORIGIN_HEADERS Requires the origin to set valid caching
|
2627
2651
|
# headers to cache content. Responses without these headers will not be cached
|
@@ -2646,7 +2670,7 @@ module Google
|
|
2646
2670
|
# specified), or else sets the response max-age directive to the lesser of the
|
2647
2671
|
# client_ttl and default_ttl, and also ensures a "public" cache-control
|
2648
2672
|
# directive is present. If a client TTL is not specified, a default value (1
|
2649
|
-
# hour) will be used. The maximum allowed value is
|
2673
|
+
# hour) will be used. The maximum allowed value is 31,622,400s (1 year).
|
2650
2674
|
# Corresponds to the JSON property `clientTtl`
|
2651
2675
|
# @return [Fixnum]
|
2652
2676
|
attr_accessor :client_ttl
|
@@ -2745,6 +2769,7 @@ module Google
|
|
2745
2769
|
# Update properties of this object
|
2746
2770
|
def update!(**args)
|
2747
2771
|
@bypass_cache_on_request_headers = args[:bypass_cache_on_request_headers] if args.key?(:bypass_cache_on_request_headers)
|
2772
|
+
@cache_key_policy = args[:cache_key_policy] if args.key?(:cache_key_policy)
|
2748
2773
|
@cache_mode = args[:cache_mode] if args.key?(:cache_mode)
|
2749
2774
|
@client_ttl = args[:client_ttl] if args.key?(:client_ttl)
|
2750
2775
|
@default_ttl = args[:default_ttl] if args.key?(:default_ttl)
|
@@ -2780,6 +2805,34 @@ module Google
|
|
2780
2805
|
end
|
2781
2806
|
end
|
2782
2807
|
|
2808
|
+
# Message containing what to include in the cache key for a request for Cloud
|
2809
|
+
# CDN.
|
2810
|
+
class BackendBucketCdnPolicyCacheKeyPolicy
|
2811
|
+
include Google::Apis::Core::Hashable
|
2812
|
+
|
2813
|
+
# Allows HTTP request headers (by name) to be used in the cache key.
|
2814
|
+
# Corresponds to the JSON property `includeHttpHeaders`
|
2815
|
+
# @return [Array<String>]
|
2816
|
+
attr_accessor :include_http_headers
|
2817
|
+
|
2818
|
+
# Names of query string parameters to include in cache keys. All other
|
2819
|
+
# parameters will be excluded. '&' and '=' will be percent encoded and not
|
2820
|
+
# treated as delimiters.
|
2821
|
+
# Corresponds to the JSON property `queryStringWhitelist`
|
2822
|
+
# @return [Array<String>]
|
2823
|
+
attr_accessor :query_string_whitelist
|
2824
|
+
|
2825
|
+
def initialize(**args)
|
2826
|
+
update!(**args)
|
2827
|
+
end
|
2828
|
+
|
2829
|
+
# Update properties of this object
|
2830
|
+
def update!(**args)
|
2831
|
+
@include_http_headers = args[:include_http_headers] if args.key?(:include_http_headers)
|
2832
|
+
@query_string_whitelist = args[:query_string_whitelist] if args.key?(:query_string_whitelist)
|
2833
|
+
end
|
2834
|
+
end
|
2835
|
+
|
2783
2836
|
# Specify CDN TTLs for response error codes.
|
2784
2837
|
class BackendBucketCdnPolicyNegativeCachingPolicy
|
2785
2838
|
include Google::Apis::Core::Hashable
|
@@ -2973,6 +3026,11 @@ module Google
|
|
2973
3026
|
# @return [Google::Apis::ComputeV1::ConnectionDraining]
|
2974
3027
|
attr_accessor :connection_draining
|
2975
3028
|
|
3029
|
+
# Connection Tracking configuration for this BackendService.
|
3030
|
+
# Corresponds to the JSON property `connectionTrackingPolicy`
|
3031
|
+
# @return [Google::Apis::ComputeV1::BackendServiceConnectionTrackingPolicy]
|
3032
|
+
attr_accessor :connection_tracking_policy
|
3033
|
+
|
2976
3034
|
# This message defines settings for a consistent hash style load balancer.
|
2977
3035
|
# Corresponds to the JSON property `consistentHash`
|
2978
3036
|
# @return [Google::Apis::ComputeV1::ConsistentHashLoadBalancerSettings]
|
@@ -3001,6 +3059,12 @@ module Google
|
|
3001
3059
|
# @return [String]
|
3002
3060
|
attr_accessor :description
|
3003
3061
|
|
3062
|
+
# [Output Only] The resource URL for the edge security policy associated with
|
3063
|
+
# this backend service.
|
3064
|
+
# Corresponds to the JSON property `edgeSecurityPolicy`
|
3065
|
+
# @return [String]
|
3066
|
+
attr_accessor :edge_security_policy
|
3067
|
+
|
3004
3068
|
# If true, enables Cloud CDN for the backend service of an external HTTP(S) load
|
3005
3069
|
# balancer.
|
3006
3070
|
# Corresponds to the JSON property `enableCDN`
|
@@ -3010,14 +3074,14 @@ module Google
|
|
3010
3074
|
|
3011
3075
|
# For load balancers that have configurable failover: [Internal TCP/UDP Load
|
3012
3076
|
# Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-
|
3013
|
-
# overview) and [external TCP/UDP Load Balancing](/
|
3014
|
-
# overview). On failover or failback,
|
3015
|
-
# draining will be honored. Google Cloud
|
3016
|
-
# of 10 minutes. A setting of true
|
3017
|
-
# active pool during failover and
|
3018
|
-
# setting of false allows existing TCP
|
3019
|
-
# longer in the active pool, for up to
|
3020
|
-
# timeout (10 minutes).
|
3077
|
+
# overview) and [external TCP/UDP Load Balancing](https://cloud.google.com/load-
|
3078
|
+
# balancing/docs/network/networklb-failover-overview). On failover or failback,
|
3079
|
+
# this field indicates whether connection draining will be honored. Google Cloud
|
3080
|
+
# has a fixed connection draining timeout of 10 minutes. A setting of true
|
3081
|
+
# terminates existing TCP connections to the active pool during failover and
|
3082
|
+
# failback, immediately draining traffic. A setting of false allows existing TCP
|
3083
|
+
# connections to persist, even on VMs no longer in the active pool, for up to
|
3084
|
+
# the duration of the connection draining timeout (10 minutes).
|
3021
3085
|
# Corresponds to the JSON property `failoverPolicy`
|
3022
3086
|
# @return [Google::Apis::ComputeV1::BackendServiceFailoverPolicy]
|
3023
3087
|
attr_accessor :failover_policy
|
@@ -3088,8 +3152,8 @@ module Google
|
|
3088
3152
|
# INTERNAL_MANAGED. - A global backend service with the load_balancing_scheme
|
3089
3153
|
# set to INTERNAL_SELF_MANAGED. If sessionAffinity is not NONE, and this field
|
3090
3154
|
# is not set to MAGLEV or RING_HASH, session affinity settings will not take
|
3091
|
-
# effect. Only
|
3092
|
-
#
|
3155
|
+
# effect. Only ROUND_ROBIN and RING_HASH are supported when the backend service
|
3156
|
+
# is referenced by a URL map that is bound to target gRPC proxy that has
|
3093
3157
|
# validateForProxyless field set to true.
|
3094
3158
|
# Corresponds to the JSON property `localityLbPolicy`
|
3095
3159
|
# @return [String]
|
@@ -3182,11 +3246,11 @@ module Google
|
|
3182
3246
|
# @return [String]
|
3183
3247
|
attr_accessor :self_link
|
3184
3248
|
|
3185
|
-
# Type of session affinity to use. The default is NONE.
|
3186
|
-
#
|
3187
|
-
#
|
3188
|
-
#
|
3189
|
-
#
|
3249
|
+
# Type of session affinity to use. The default is NONE. Only NONE and
|
3250
|
+
# HEADER_FIELD are supported when the backend service is referenced by a URL map
|
3251
|
+
# that is bound to target gRPC proxy that has validateForProxyless field set to
|
3252
|
+
# true. For more details, see: [Session Affinity](https://cloud.google.com/load-
|
3253
|
+
# balancing/docs/backend-service#session_affinity).
|
3190
3254
|
# Corresponds to the JSON property `sessionAffinity`
|
3191
3255
|
# @return [String]
|
3192
3256
|
attr_accessor :session_affinity
|
@@ -3216,11 +3280,13 @@ module Google
|
|
3216
3280
|
@cdn_policy = args[:cdn_policy] if args.key?(:cdn_policy)
|
3217
3281
|
@circuit_breakers = args[:circuit_breakers] if args.key?(:circuit_breakers)
|
3218
3282
|
@connection_draining = args[:connection_draining] if args.key?(:connection_draining)
|
3283
|
+
@connection_tracking_policy = args[:connection_tracking_policy] if args.key?(:connection_tracking_policy)
|
3219
3284
|
@consistent_hash = args[:consistent_hash] if args.key?(:consistent_hash)
|
3220
3285
|
@creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
|
3221
3286
|
@custom_request_headers = args[:custom_request_headers] if args.key?(:custom_request_headers)
|
3222
3287
|
@custom_response_headers = args[:custom_response_headers] if args.key?(:custom_response_headers)
|
3223
3288
|
@description = args[:description] if args.key?(:description)
|
3289
|
+
@edge_security_policy = args[:edge_security_policy] if args.key?(:edge_security_policy)
|
3224
3290
|
@enable_cdn = args[:enable_cdn] if args.key?(:enable_cdn)
|
3225
3291
|
@failover_policy = args[:failover_policy] if args.key?(:failover_policy)
|
3226
3292
|
@fingerprint = args[:fingerprint] if args.key?(:fingerprint)
|
@@ -3412,7 +3478,7 @@ module Google
|
|
3412
3478
|
# specified), or else sets the response max-age directive to the lesser of the
|
3413
3479
|
# client_ttl and default_ttl, and also ensures a "public" cache-control
|
3414
3480
|
# directive is present. If a client TTL is not specified, a default value (1
|
3415
|
-
# hour) will be used. The maximum allowed value is
|
3481
|
+
# hour) will be used. The maximum allowed value is 31,622,400s (1 year).
|
3416
3482
|
# Corresponds to the JSON property `clientTtl`
|
3417
3483
|
# @return [Fixnum]
|
3418
3484
|
attr_accessor :client_ttl
|
@@ -3577,16 +3643,76 @@ module Google
|
|
3577
3643
|
end
|
3578
3644
|
end
|
3579
3645
|
|
3646
|
+
# Connection Tracking configuration for this BackendService.
|
3647
|
+
class BackendServiceConnectionTrackingPolicy
|
3648
|
+
include Google::Apis::Core::Hashable
|
3649
|
+
|
3650
|
+
# Specifies connection persistence when backends are unhealthy. The default
|
3651
|
+
# value is DEFAULT_FOR_PROTOCOL. If set to DEFAULT_FOR_PROTOCOL, the existing
|
3652
|
+
# connections persist on unhealthy backends only for connection-oriented
|
3653
|
+
# protocols (TCP and SCTP) and only if the Tracking Mode is PER_CONNECTION (
|
3654
|
+
# default tracking mode) or the Session Affinity is configured for 5-tuple. They
|
3655
|
+
# do not persist for UDP. If set to NEVER_PERSIST, after a backend becomes
|
3656
|
+
# unhealthy, the existing connections on the unhealthy backend are never
|
3657
|
+
# persisted on the unhealthy backend. They are always diverted to newly selected
|
3658
|
+
# healthy backends (unless all backends are unhealthy). If set to ALWAYS_PERSIST,
|
3659
|
+
# existing connections always persist on unhealthy backends regardless of
|
3660
|
+
# protocol and session affinity. It is generally not recommended to use this
|
3661
|
+
# mode overriding the default. For more details, see [Connection Persistence for
|
3662
|
+
# Network Load Balancing](https://cloud.google.com/load-balancing/docs/network/
|
3663
|
+
# networklb-backend-service#connection-persistence) and [Connection Persistence
|
3664
|
+
# for Internal TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/
|
3665
|
+
# docs/internal#connection-persistence).
|
3666
|
+
# Corresponds to the JSON property `connectionPersistenceOnUnhealthyBackends`
|
3667
|
+
# @return [String]
|
3668
|
+
attr_accessor :connection_persistence_on_unhealthy_backends
|
3669
|
+
|
3670
|
+
# Specifies how long to keep a Connection Tracking entry while there is no
|
3671
|
+
# matching traffic (in seconds). For Internal TCP/UDP Load Balancing: - The
|
3672
|
+
# minimum (default) is 10 minutes and the maximum is 16 hours. - It can be set
|
3673
|
+
# only if Connection Tracking is less than 5-tuple (i.e. Session Affinity is
|
3674
|
+
# CLIENT_IP_NO_DESTINATION, CLIENT_IP or CLIENT_IP_PROTO, and Tracking Mode is
|
3675
|
+
# PER_SESSION). For Network Load Balancer the default is 60 seconds. This option
|
3676
|
+
# is not available publicly.
|
3677
|
+
# Corresponds to the JSON property `idleTimeoutSec`
|
3678
|
+
# @return [Fixnum]
|
3679
|
+
attr_accessor :idle_timeout_sec
|
3680
|
+
|
3681
|
+
# Specifies the key used for connection tracking. There are two options: -
|
3682
|
+
# PER_CONNECTION: This is the default mode. The Connection Tracking is performed
|
3683
|
+
# as per the Connection Key (default Hash Method) for the specific protocol. -
|
3684
|
+
# PER_SESSION: The Connection Tracking is performed as per the configured
|
3685
|
+
# Session Affinity. It matches the configured Session Affinity. For more details,
|
3686
|
+
# see [Tracking Mode for Network Load Balancing](https://cloud.google.com/load-
|
3687
|
+
# balancing/docs/network/networklb-backend-service#tracking-mode) and [Tracking
|
3688
|
+
# Mode for Internal TCP/UDP Load Balancing](https://cloud.google.com/load-
|
3689
|
+
# balancing/docs/internal#tracking-mode).
|
3690
|
+
# Corresponds to the JSON property `trackingMode`
|
3691
|
+
# @return [String]
|
3692
|
+
attr_accessor :tracking_mode
|
3693
|
+
|
3694
|
+
def initialize(**args)
|
3695
|
+
update!(**args)
|
3696
|
+
end
|
3697
|
+
|
3698
|
+
# Update properties of this object
|
3699
|
+
def update!(**args)
|
3700
|
+
@connection_persistence_on_unhealthy_backends = args[:connection_persistence_on_unhealthy_backends] if args.key?(:connection_persistence_on_unhealthy_backends)
|
3701
|
+
@idle_timeout_sec = args[:idle_timeout_sec] if args.key?(:idle_timeout_sec)
|
3702
|
+
@tracking_mode = args[:tracking_mode] if args.key?(:tracking_mode)
|
3703
|
+
end
|
3704
|
+
end
|
3705
|
+
|
3580
3706
|
# For load balancers that have configurable failover: [Internal TCP/UDP Load
|
3581
3707
|
# Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-
|
3582
|
-
# overview) and [external TCP/UDP Load Balancing](/
|
3583
|
-
# overview). On failover or failback,
|
3584
|
-
# draining will be honored. Google Cloud
|
3585
|
-
# of 10 minutes. A setting of true
|
3586
|
-
# active pool during failover and
|
3587
|
-
# setting of false allows existing TCP
|
3588
|
-
# longer in the active pool, for up to
|
3589
|
-
# timeout (10 minutes).
|
3708
|
+
# overview) and [external TCP/UDP Load Balancing](https://cloud.google.com/load-
|
3709
|
+
# balancing/docs/network/networklb-failover-overview). On failover or failback,
|
3710
|
+
# this field indicates whether connection draining will be honored. Google Cloud
|
3711
|
+
# has a fixed connection draining timeout of 10 minutes. A setting of true
|
3712
|
+
# terminates existing TCP connections to the active pool during failover and
|
3713
|
+
# failback, immediately draining traffic. A setting of false allows existing TCP
|
3714
|
+
# connections to persist, even on VMs no longer in the active pool, for up to
|
3715
|
+
# the duration of the connection draining timeout (10 minutes).
|
3590
3716
|
class BackendServiceFailoverPolicy
|
3591
3717
|
include Google::Apis::Core::Hashable
|
3592
3718
|
|
@@ -3601,8 +3727,9 @@ module Google
|
|
3601
3727
|
# distributed among all primary VMs when all primary and all backup backend VMs
|
3602
3728
|
# are unhealthy. For load balancers that have configurable failover: [Internal
|
3603
3729
|
# TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/
|
3604
|
-
# failover-overview) and [external TCP/UDP Load Balancing](
|
3605
|
-
# failover-overview). The default is
|
3730
|
+
# failover-overview) and [external TCP/UDP Load Balancing](https://cloud.google.
|
3731
|
+
# com/load-balancing/docs/network/networklb-failover-overview). The default is
|
3732
|
+
# false.
|
3606
3733
|
# Corresponds to the JSON property `dropTrafficIfUnhealthy`
|
3607
3734
|
# @return [Boolean]
|
3608
3735
|
attr_accessor :drop_traffic_if_unhealthy
|
@@ -3614,7 +3741,8 @@ module Google
|
|
3614
3741
|
# the total number of healthy primary VMs is less than this ratio. For load
|
3615
3742
|
# balancers that have configurable failover: [Internal TCP/UDP Load Balancing](
|
3616
3743
|
# https://cloud.google.com/load-balancing/docs/internal/failover-overview) and [
|
3617
|
-
# external TCP/UDP Load Balancing](/
|
3744
|
+
# external TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/
|
3745
|
+
# network/networklb-failover-overview).
|
3618
3746
|
# Corresponds to the JSON property `failoverRatio`
|
3619
3747
|
# @return [Float]
|
3620
3748
|
attr_accessor :failover_ratio
|
@@ -3966,7 +4094,256 @@ module Google
|
|
3966
4094
|
end
|
3967
4095
|
end
|
3968
4096
|
|
3969
|
-
#
|
4097
|
+
#
|
4098
|
+
class BfdPacket
|
4099
|
+
include Google::Apis::Core::Hashable
|
4100
|
+
|
4101
|
+
# The Authentication Present bit of the BFD packet. This is specified in section
|
4102
|
+
# 4.1 of RFC5880
|
4103
|
+
# Corresponds to the JSON property `authenticationPresent`
|
4104
|
+
# @return [Boolean]
|
4105
|
+
attr_accessor :authentication_present
|
4106
|
+
alias_method :authentication_present?, :authentication_present
|
4107
|
+
|
4108
|
+
# The Control Plane Independent bit of the BFD packet. This is specified in
|
4109
|
+
# section 4.1 of RFC5880
|
4110
|
+
# Corresponds to the JSON property `controlPlaneIndependent`
|
4111
|
+
# @return [Boolean]
|
4112
|
+
attr_accessor :control_plane_independent
|
4113
|
+
alias_method :control_plane_independent?, :control_plane_independent
|
4114
|
+
|
4115
|
+
# The demand bit of the BFD packet. This is specified in section 4.1 of RFC5880
|
4116
|
+
# Corresponds to the JSON property `demand`
|
4117
|
+
# @return [Boolean]
|
4118
|
+
attr_accessor :demand
|
4119
|
+
alias_method :demand?, :demand
|
4120
|
+
|
4121
|
+
# The diagnostic code specifies the local system's reason for the last change in
|
4122
|
+
# session state. This allows remote systems to determine the reason that the
|
4123
|
+
# previous session failed, for example. These diagnostic codes are specified in
|
4124
|
+
# section 4.1 of RFC5880
|
4125
|
+
# Corresponds to the JSON property `diagnostic`
|
4126
|
+
# @return [String]
|
4127
|
+
attr_accessor :diagnostic
|
4128
|
+
|
4129
|
+
# The Final bit of the BFD packet. This is specified in section 4.1 of RFC5880
|
4130
|
+
# Corresponds to the JSON property `final`
|
4131
|
+
# @return [Boolean]
|
4132
|
+
attr_accessor :final
|
4133
|
+
alias_method :final?, :final
|
4134
|
+
|
4135
|
+
# The length of the BFD Control packet in bytes. This is specified in section 4.
|
4136
|
+
# 1 of RFC5880
|
4137
|
+
# Corresponds to the JSON property `length`
|
4138
|
+
# @return [Fixnum]
|
4139
|
+
attr_accessor :length
|
4140
|
+
|
4141
|
+
# The Required Min Echo RX Interval value in the BFD packet. This is specified
|
4142
|
+
# in section 4.1 of RFC5880
|
4143
|
+
# Corresponds to the JSON property `minEchoRxIntervalMs`
|
4144
|
+
# @return [Fixnum]
|
4145
|
+
attr_accessor :min_echo_rx_interval_ms
|
4146
|
+
|
4147
|
+
# The Required Min RX Interval value in the BFD packet. This is specified in
|
4148
|
+
# section 4.1 of RFC5880
|
4149
|
+
# Corresponds to the JSON property `minRxIntervalMs`
|
4150
|
+
# @return [Fixnum]
|
4151
|
+
attr_accessor :min_rx_interval_ms
|
4152
|
+
|
4153
|
+
# The Desired Min TX Interval value in the BFD packet. This is specified in
|
4154
|
+
# section 4.1 of RFC5880
|
4155
|
+
# Corresponds to the JSON property `minTxIntervalMs`
|
4156
|
+
# @return [Fixnum]
|
4157
|
+
attr_accessor :min_tx_interval_ms
|
4158
|
+
|
4159
|
+
# The detection time multiplier of the BFD packet. This is specified in section
|
4160
|
+
# 4.1 of RFC5880
|
4161
|
+
# Corresponds to the JSON property `multiplier`
|
4162
|
+
# @return [Fixnum]
|
4163
|
+
attr_accessor :multiplier
|
4164
|
+
|
4165
|
+
# The multipoint bit of the BFD packet. This is specified in section 4.1 of
|
4166
|
+
# RFC5880
|
4167
|
+
# Corresponds to the JSON property `multipoint`
|
4168
|
+
# @return [Boolean]
|
4169
|
+
attr_accessor :multipoint
|
4170
|
+
alias_method :multipoint?, :multipoint
|
4171
|
+
|
4172
|
+
# The My Discriminator value in the BFD packet. This is specified in section 4.1
|
4173
|
+
# of RFC5880
|
4174
|
+
# Corresponds to the JSON property `myDiscriminator`
|
4175
|
+
# @return [Fixnum]
|
4176
|
+
attr_accessor :my_discriminator
|
4177
|
+
|
4178
|
+
# The Poll bit of the BFD packet. This is specified in section 4.1 of RFC5880
|
4179
|
+
# Corresponds to the JSON property `poll`
|
4180
|
+
# @return [Boolean]
|
4181
|
+
attr_accessor :poll
|
4182
|
+
alias_method :poll?, :poll
|
4183
|
+
|
4184
|
+
# The current BFD session state as seen by the transmitting system. These states
|
4185
|
+
# are specified in section 4.1 of RFC5880
|
4186
|
+
# Corresponds to the JSON property `state`
|
4187
|
+
# @return [String]
|
4188
|
+
attr_accessor :state
|
4189
|
+
|
4190
|
+
# The version number of the BFD protocol, as specified in section 4.1 of RFC5880.
|
4191
|
+
# Corresponds to the JSON property `version`
|
4192
|
+
# @return [Fixnum]
|
4193
|
+
attr_accessor :version
|
4194
|
+
|
4195
|
+
# The Your Discriminator value in the BFD packet. This is specified in section 4.
|
4196
|
+
# 1 of RFC5880
|
4197
|
+
# Corresponds to the JSON property `yourDiscriminator`
|
4198
|
+
# @return [Fixnum]
|
4199
|
+
attr_accessor :your_discriminator
|
4200
|
+
|
4201
|
+
def initialize(**args)
|
4202
|
+
update!(**args)
|
4203
|
+
end
|
4204
|
+
|
4205
|
+
# Update properties of this object
|
4206
|
+
def update!(**args)
|
4207
|
+
@authentication_present = args[:authentication_present] if args.key?(:authentication_present)
|
4208
|
+
@control_plane_independent = args[:control_plane_independent] if args.key?(:control_plane_independent)
|
4209
|
+
@demand = args[:demand] if args.key?(:demand)
|
4210
|
+
@diagnostic = args[:diagnostic] if args.key?(:diagnostic)
|
4211
|
+
@final = args[:final] if args.key?(:final)
|
4212
|
+
@length = args[:length] if args.key?(:length)
|
4213
|
+
@min_echo_rx_interval_ms = args[:min_echo_rx_interval_ms] if args.key?(:min_echo_rx_interval_ms)
|
4214
|
+
@min_rx_interval_ms = args[:min_rx_interval_ms] if args.key?(:min_rx_interval_ms)
|
4215
|
+
@min_tx_interval_ms = args[:min_tx_interval_ms] if args.key?(:min_tx_interval_ms)
|
4216
|
+
@multiplier = args[:multiplier] if args.key?(:multiplier)
|
4217
|
+
@multipoint = args[:multipoint] if args.key?(:multipoint)
|
4218
|
+
@my_discriminator = args[:my_discriminator] if args.key?(:my_discriminator)
|
4219
|
+
@poll = args[:poll] if args.key?(:poll)
|
4220
|
+
@state = args[:state] if args.key?(:state)
|
4221
|
+
@version = args[:version] if args.key?(:version)
|
4222
|
+
@your_discriminator = args[:your_discriminator] if args.key?(:your_discriminator)
|
4223
|
+
end
|
4224
|
+
end
|
4225
|
+
|
4226
|
+
# Next free: 15
|
4227
|
+
class BfdStatus
|
4228
|
+
include Google::Apis::Core::Hashable
|
4229
|
+
|
4230
|
+
# The BFD session initialization mode for this BGP peer. If set to ACTIVE, the
|
4231
|
+
# Cloud Router will initiate the BFD session for this BGP peer. If set to
|
4232
|
+
# PASSIVE, the Cloud Router will wait for the peer router to initiate the BFD
|
4233
|
+
# session for this BGP peer. If set to DISABLED, BFD is disabled for this BGP
|
4234
|
+
# peer.
|
4235
|
+
# Corresponds to the JSON property `bfdSessionInitializationMode`
|
4236
|
+
# @return [String]
|
4237
|
+
attr_accessor :bfd_session_initialization_mode
|
4238
|
+
|
4239
|
+
# Unix timestamp of the most recent config update.
|
4240
|
+
# Corresponds to the JSON property `configUpdateTimestampMicros`
|
4241
|
+
# @return [Fixnum]
|
4242
|
+
attr_accessor :config_update_timestamp_micros
|
4243
|
+
|
4244
|
+
# Control packet counts for the current BFD session.
|
4245
|
+
# Corresponds to the JSON property `controlPacketCounts`
|
4246
|
+
# @return [Google::Apis::ComputeV1::BfdStatusPacketCounts]
|
4247
|
+
attr_accessor :control_packet_counts
|
4248
|
+
|
4249
|
+
# Inter-packet time interval statistics for control packets.
|
4250
|
+
# Corresponds to the JSON property `controlPacketIntervals`
|
4251
|
+
# @return [Array<Google::Apis::ComputeV1::PacketIntervals>]
|
4252
|
+
attr_accessor :control_packet_intervals
|
4253
|
+
|
4254
|
+
# The diagnostic code specifies the local system's reason for the last change in
|
4255
|
+
# session state. This allows remote systems to determine the reason that the
|
4256
|
+
# previous session failed, for example. These diagnostic codes are specified in
|
4257
|
+
# section 4.1 of RFC5880
|
4258
|
+
# Corresponds to the JSON property `localDiagnostic`
|
4259
|
+
# @return [String]
|
4260
|
+
attr_accessor :local_diagnostic
|
4261
|
+
|
4262
|
+
# The current BFD session state as seen by the transmitting system. These states
|
4263
|
+
# are specified in section 4.1 of RFC5880
|
4264
|
+
# Corresponds to the JSON property `localState`
|
4265
|
+
# @return [String]
|
4266
|
+
attr_accessor :local_state
|
4267
|
+
|
4268
|
+
# Negotiated transmit interval for control packets.
|
4269
|
+
# Corresponds to the JSON property `negotiatedLocalControlTxIntervalMs`
|
4270
|
+
# @return [Fixnum]
|
4271
|
+
attr_accessor :negotiated_local_control_tx_interval_ms
|
4272
|
+
|
4273
|
+
# The most recent Rx control packet for this BFD session.
|
4274
|
+
# Corresponds to the JSON property `rxPacket`
|
4275
|
+
# @return [Google::Apis::ComputeV1::BfdPacket]
|
4276
|
+
attr_accessor :rx_packet
|
4277
|
+
|
4278
|
+
# The most recent Tx control packet for this BFD session.
|
4279
|
+
# Corresponds to the JSON property `txPacket`
|
4280
|
+
# @return [Google::Apis::ComputeV1::BfdPacket]
|
4281
|
+
attr_accessor :tx_packet
|
4282
|
+
|
4283
|
+
# Session uptime in milliseconds. Value will be 0 if session is not up.
|
4284
|
+
# Corresponds to the JSON property `uptimeMs`
|
4285
|
+
# @return [Fixnum]
|
4286
|
+
attr_accessor :uptime_ms
|
4287
|
+
|
4288
|
+
def initialize(**args)
|
4289
|
+
update!(**args)
|
4290
|
+
end
|
4291
|
+
|
4292
|
+
# Update properties of this object
|
4293
|
+
def update!(**args)
|
4294
|
+
@bfd_session_initialization_mode = args[:bfd_session_initialization_mode] if args.key?(:bfd_session_initialization_mode)
|
4295
|
+
@config_update_timestamp_micros = args[:config_update_timestamp_micros] if args.key?(:config_update_timestamp_micros)
|
4296
|
+
@control_packet_counts = args[:control_packet_counts] if args.key?(:control_packet_counts)
|
4297
|
+
@control_packet_intervals = args[:control_packet_intervals] if args.key?(:control_packet_intervals)
|
4298
|
+
@local_diagnostic = args[:local_diagnostic] if args.key?(:local_diagnostic)
|
4299
|
+
@local_state = args[:local_state] if args.key?(:local_state)
|
4300
|
+
@negotiated_local_control_tx_interval_ms = args[:negotiated_local_control_tx_interval_ms] if args.key?(:negotiated_local_control_tx_interval_ms)
|
4301
|
+
@rx_packet = args[:rx_packet] if args.key?(:rx_packet)
|
4302
|
+
@tx_packet = args[:tx_packet] if args.key?(:tx_packet)
|
4303
|
+
@uptime_ms = args[:uptime_ms] if args.key?(:uptime_ms)
|
4304
|
+
end
|
4305
|
+
end
|
4306
|
+
|
4307
|
+
#
|
4308
|
+
class BfdStatusPacketCounts
|
4309
|
+
include Google::Apis::Core::Hashable
|
4310
|
+
|
4311
|
+
# Number of packets received since the beginning of the current BFD session.
|
4312
|
+
# Corresponds to the JSON property `numRx`
|
4313
|
+
# @return [Fixnum]
|
4314
|
+
attr_accessor :num_rx
|
4315
|
+
|
4316
|
+
# Number of packets received that were rejected because of errors since the
|
4317
|
+
# beginning of the current BFD session.
|
4318
|
+
# Corresponds to the JSON property `numRxRejected`
|
4319
|
+
# @return [Fixnum]
|
4320
|
+
attr_accessor :num_rx_rejected
|
4321
|
+
|
4322
|
+
# Number of packets received that were successfully processed since the
|
4323
|
+
# beginning of the current BFD session.
|
4324
|
+
# Corresponds to the JSON property `numRxSuccessful`
|
4325
|
+
# @return [Fixnum]
|
4326
|
+
attr_accessor :num_rx_successful
|
4327
|
+
|
4328
|
+
# Number of packets transmitted since the beginning of the current BFD session.
|
4329
|
+
# Corresponds to the JSON property `numTx`
|
4330
|
+
# @return [Fixnum]
|
4331
|
+
attr_accessor :num_tx
|
4332
|
+
|
4333
|
+
def initialize(**args)
|
4334
|
+
update!(**args)
|
4335
|
+
end
|
4336
|
+
|
4337
|
+
# Update properties of this object
|
4338
|
+
def update!(**args)
|
4339
|
+
@num_rx = args[:num_rx] if args.key?(:num_rx)
|
4340
|
+
@num_rx_rejected = args[:num_rx_rejected] if args.key?(:num_rx_rejected)
|
4341
|
+
@num_rx_successful = args[:num_rx_successful] if args.key?(:num_rx_successful)
|
4342
|
+
@num_tx = args[:num_tx] if args.key?(:num_tx)
|
4343
|
+
end
|
4344
|
+
end
|
4345
|
+
|
4346
|
+
# Associates `members`, or principals, with a `role`.
|
3970
4347
|
class Binding
|
3971
4348
|
include Google::Apis::Core::Hashable
|
3972
4349
|
|
@@ -3994,7 +4371,7 @@ module Google
|
|
3994
4371
|
# @return [Google::Apis::ComputeV1::Expr]
|
3995
4372
|
attr_accessor :condition
|
3996
4373
|
|
3997
|
-
# Specifies the
|
4374
|
+
# Specifies the principals requesting access for a Cloud Platform resource. `
|
3998
4375
|
# members` can have the following values: * `allUsers`: A special identifier
|
3999
4376
|
# that represents anyone who is on the internet; with or without a Google
|
4000
4377
|
# account. * `allAuthenticatedUsers`: A special identifier that represents
|
@@ -4024,8 +4401,8 @@ module Google
|
|
4024
4401
|
# @return [Array<String>]
|
4025
4402
|
attr_accessor :members
|
4026
4403
|
|
4027
|
-
# Role that is assigned to `members
|
4028
|
-
#
|
4404
|
+
# Role that is assigned to the list of `members`, or principals. For example, `
|
4405
|
+
# roles/viewer`, `roles/editor`, or `roles/owner`.
|
4029
4406
|
# Corresponds to the JSON property `role`
|
4030
4407
|
# @return [String]
|
4031
4408
|
attr_accessor :role
|
@@ -4179,6 +4556,17 @@ module Google
|
|
4179
4556
|
attr_accessor :include_host
|
4180
4557
|
alias_method :include_host?, :include_host
|
4181
4558
|
|
4559
|
+
# Allows HTTP request headers (by name) to be used in the cache key.
|
4560
|
+
# Corresponds to the JSON property `includeHttpHeaders`
|
4561
|
+
# @return [Array<String>]
|
4562
|
+
attr_accessor :include_http_headers
|
4563
|
+
|
4564
|
+
# Allows HTTP cookies (by name) to be used in the cache key. The name=value pair
|
4565
|
+
# will be used in the cache key Cloud CDN generates.
|
4566
|
+
# Corresponds to the JSON property `includeNamedCookies`
|
4567
|
+
# @return [Array<String>]
|
4568
|
+
attr_accessor :include_named_cookies
|
4569
|
+
|
4182
4570
|
# If true, http and https requests will be cached separately.
|
4183
4571
|
# Corresponds to the JSON property `includeProtocol`
|
4184
4572
|
# @return [Boolean]
|
@@ -4217,6 +4605,8 @@ module Google
|
|
4217
4605
|
# Update properties of this object
|
4218
4606
|
def update!(**args)
|
4219
4607
|
@include_host = args[:include_host] if args.key?(:include_host)
|
4608
|
+
@include_http_headers = args[:include_http_headers] if args.key?(:include_http_headers)
|
4609
|
+
@include_named_cookies = args[:include_named_cookies] if args.key?(:include_named_cookies)
|
4220
4610
|
@include_protocol = args[:include_protocol] if args.key?(:include_protocol)
|
4221
4611
|
@include_query_string = args[:include_query_string] if args.key?(:include_query_string)
|
4222
4612
|
@query_string_blacklist = args[:query_string_blacklist] if args.key?(:query_string_blacklist)
|
@@ -4281,6 +4671,16 @@ module Google
|
|
4281
4671
|
class Commitment
|
4282
4672
|
include Google::Apis::Core::Hashable
|
4283
4673
|
|
4674
|
+
# Specifies whether to enable automatic renewal for the commitment. The default
|
4675
|
+
# value is false if not specified. The field can be updated until the day of the
|
4676
|
+
# commitment expiration at 12:00am PST. If the field is set to true, the
|
4677
|
+
# commitment will be automatically renewed for either one or three years
|
4678
|
+
# according to the terms of the existing commitment.
|
4679
|
+
# Corresponds to the JSON property `autoRenew`
|
4680
|
+
# @return [Boolean]
|
4681
|
+
attr_accessor :auto_renew
|
4682
|
+
alias_method :auto_renew?, :auto_renew
|
4683
|
+
|
4284
4684
|
# The category of the commitment. Category MACHINE specifies commitments
|
4285
4685
|
# composed of machine resources such as VCPU or MEMORY, listed in resources.
|
4286
4686
|
# Category LICENSE specifies commitments composed of software licenses, listed
|
@@ -4391,6 +4791,7 @@ module Google
|
|
4391
4791
|
|
4392
4792
|
# Update properties of this object
|
4393
4793
|
def update!(**args)
|
4794
|
+
@auto_renew = args[:auto_renew] if args.key?(:auto_renew)
|
4394
4795
|
@category = args[:category] if args.key?(:category)
|
4395
4796
|
@creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
|
4396
4797
|
@description = args[:description] if args.key?(:description)
|
@@ -4899,14 +5300,15 @@ module Google
|
|
4899
5300
|
end
|
4900
5301
|
end
|
4901
5302
|
|
4902
|
-
# The specification for allowing client
|
4903
|
-
# W3C
|
5303
|
+
# The specification for allowing client-side cross-origin requests. For more
|
5304
|
+
# information about the W3C recommendation for cross-origin resource sharing (
|
5305
|
+
# CORS), see Fetch API Living Standard.
|
4904
5306
|
class CorsPolicy
|
4905
5307
|
include Google::Apis::Core::Hashable
|
4906
5308
|
|
4907
5309
|
# In response to a preflight request, setting this to true indicates that the
|
4908
|
-
# actual request can include user credentials. This translates to the
|
4909
|
-
# Control-Allow-Credentials header. Default is false.
|
5310
|
+
# actual request can include user credentials. This field translates to the
|
5311
|
+
# Access-Control-Allow-Credentials header. Default is false.
|
4910
5312
|
# Corresponds to the JSON property `allowCredentials`
|
4911
5313
|
# @return [Boolean]
|
4912
5314
|
attr_accessor :allow_credentials
|
@@ -4922,23 +5324,23 @@ module Google
|
|
4922
5324
|
# @return [Array<String>]
|
4923
5325
|
attr_accessor :allow_methods
|
4924
5326
|
|
4925
|
-
# Specifies
|
4926
|
-
# regular expression
|
4927
|
-
#
|
5327
|
+
# Specifies a regular expression that matches allowed origins. For more
|
5328
|
+
# information about the regular expression syntax, see Syntax. An origin is
|
5329
|
+
# allowed if it matches either an item in allowOrigins or an item in
|
4928
5330
|
# allowOriginRegexes.
|
4929
5331
|
# Corresponds to the JSON property `allowOriginRegexes`
|
4930
5332
|
# @return [Array<String>]
|
4931
5333
|
attr_accessor :allow_origin_regexes
|
4932
5334
|
|
4933
|
-
# Specifies the list of origins that
|
4934
|
-
#
|
5335
|
+
# Specifies the list of origins that is allowed to do CORS requests. An origin
|
5336
|
+
# is allowed if it matches either an item in allowOrigins or an item in
|
4935
5337
|
# allowOriginRegexes.
|
4936
5338
|
# Corresponds to the JSON property `allowOrigins`
|
4937
5339
|
# @return [Array<String>]
|
4938
5340
|
attr_accessor :allow_origins
|
4939
5341
|
|
4940
|
-
# If true, specifies the CORS policy is disabled. The default value
|
4941
|
-
# which indicates that the CORS policy is in effect.
|
5342
|
+
# If true, the setting specifies the CORS policy is disabled. The default value
|
5343
|
+
# of false, which indicates that the CORS policy is in effect.
|
4942
5344
|
# Corresponds to the JSON property `disabled`
|
4943
5345
|
# @return [Boolean]
|
4944
5346
|
attr_accessor :disabled
|
@@ -4950,7 +5352,7 @@ module Google
|
|
4950
5352
|
attr_accessor :expose_headers
|
4951
5353
|
|
4952
5354
|
# Specifies how long results of a preflight request can be cached in seconds.
|
4953
|
-
# This translates to the Access-Control-Max-Age header.
|
5355
|
+
# This field translates to the Access-Control-Max-Age header.
|
4954
5356
|
# Corresponds to the JSON property `maxAge`
|
4955
5357
|
# @return [Fixnum]
|
4956
5358
|
attr_accessor :max_age
|
@@ -7006,8 +7408,8 @@ module Google
|
|
7006
7408
|
|
7007
7409
|
# Name of the resource; provided by the client when the resource is created. The
|
7008
7410
|
# name must be 1-63 characters long, and comply with RFC1035. Specifically, the
|
7009
|
-
# name must be 1-63 characters long and match the regular expression [a-z]([-a-
|
7010
|
-
# z0-9]*[a-z0-9])
|
7411
|
+
# name must be 1-63 characters long and match the regular expression `[a-z]([-a-
|
7412
|
+
# z0-9]*[a-z0-9])?`. The first character must be a lowercase letter, and all
|
7011
7413
|
# following characters (except for the last character) must be a dash, lowercase
|
7012
7414
|
# letter, or digit. The last character must be a lowercase letter or digit.
|
7013
7415
|
# Corresponds to the JSON property `name`
|
@@ -8084,8 +8486,7 @@ module Google
|
|
8084
8486
|
attr_accessor :self_link
|
8085
8487
|
|
8086
8488
|
# Service Directory resources to register this forwarding rule with. Currently,
|
8087
|
-
# only supports a single Service Directory resource.
|
8088
|
-
# internal load balancing.
|
8489
|
+
# only supports a single Service Directory resource.
|
8089
8490
|
# Corresponds to the JSON property `serviceDirectoryRegistrations`
|
8090
8491
|
# @return [Array<Google::Apis::ComputeV1::ForwardingRuleServiceDirectoryRegistration>]
|
8091
8492
|
attr_accessor :service_directory_registrations
|
@@ -8656,31 +9057,31 @@ module Google
|
|
8656
9057
|
|
8657
9058
|
# An Identity and Access Management (IAM) policy, which specifies access
|
8658
9059
|
# controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
|
8659
|
-
# A `binding` binds one or more `members
|
8660
|
-
# user accounts, service accounts, Google groups, and domains (
|
8661
|
-
# A `role` is a named list of permissions; each `role` can be
|
8662
|
-
# role or a user-created custom role. For some types of Google
|
8663
|
-
# a `binding` can also specify a `condition`, which is a
|
8664
|
-
# allows access to a resource only if the expression
|
8665
|
-
# condition can add constraints based on attributes of
|
8666
|
-
# or both. To learn which resources support
|
8667
|
-
# see the [IAM documentation](https://cloud.
|
8668
|
-
# resource-policies). **JSON example:** ` "
|
8669
|
-
# resourcemanager.organizationAdmin", "members": [
|
8670
|
-
# group:admins@example.com", "domain:google.com", "
|
8671
|
-
# appspot.gserviceaccount.com" ] `, ` "role": "
|
8672
|
-
# organizationViewer", "members": [ "user:eve@example.com"
|
8673
|
-
# title": "expirable access", "description": "Does not grant
|
8674
|
-
# 2020", "expression": "request.time < timestamp('2020-10-01T00:
|
8675
|
-
# ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
|
8676
|
-
# members: - user:mike@example.com - group:admins@example.com -
|
8677
|
-
# com - serviceAccount:my-project-id@appspot.gserviceaccount.com
|
8678
|
-
# resourcemanager.organizationAdmin - members: - user:eve@example.
|
8679
|
-
# roles/resourcemanager.organizationViewer condition: title: expirable
|
8680
|
-
# description: Does not grant access after Sep 2020 expression: request.
|
8681
|
-
# timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
|
8682
|
-
# description of IAM and its features, see the [IAM documentation](https://
|
8683
|
-
# google.com/iam/docs/).
|
9060
|
+
# A `binding` binds one or more `members`, or principals, to a single `role`.
|
9061
|
+
# Principals can be user accounts, service accounts, Google groups, and domains (
|
9062
|
+
# such as G Suite). A `role` is a named list of permissions; each `role` can be
|
9063
|
+
# an IAM predefined role or a user-created custom role. For some types of Google
|
9064
|
+
# Cloud resources, a `binding` can also specify a `condition`, which is a
|
9065
|
+
# logical expression that allows access to a resource only if the expression
|
9066
|
+
# evaluates to `true`. A condition can add constraints based on attributes of
|
9067
|
+
# the request, the resource, or both. To learn which resources support
|
9068
|
+
# conditions in their IAM policies, see the [IAM documentation](https://cloud.
|
9069
|
+
# google.com/iam/help/conditions/resource-policies). **JSON example:** ` "
|
9070
|
+
# bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
|
9071
|
+
# "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
|
9072
|
+
# serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
|
9073
|
+
# roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
|
9074
|
+
# ], "condition": ` "title": "expirable access", "description": "Does not grant
|
9075
|
+
# access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
|
9076
|
+
# 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
|
9077
|
+
# bindings: - members: - user:mike@example.com - group:admins@example.com -
|
9078
|
+
# domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
|
9079
|
+
# role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
|
9080
|
+
# com role: roles/resourcemanager.organizationViewer condition: title: expirable
|
9081
|
+
# access description: Does not grant access after Sep 2020 expression: request.
|
9082
|
+
# time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
|
9083
|
+
# a description of IAM and its features, see the [IAM documentation](https://
|
9084
|
+
# cloud.google.com/iam/docs/).
|
8684
9085
|
# Corresponds to the JSON property `policy`
|
8685
9086
|
# @return [Google::Apis::ComputeV1::Policy]
|
8686
9087
|
attr_accessor :policy
|
@@ -8753,31 +9154,31 @@ module Google
|
|
8753
9154
|
|
8754
9155
|
# An Identity and Access Management (IAM) policy, which specifies access
|
8755
9156
|
# controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
|
8756
|
-
# A `binding` binds one or more `members
|
8757
|
-
# user accounts, service accounts, Google groups, and domains (
|
8758
|
-
# A `role` is a named list of permissions; each `role` can be
|
8759
|
-
# role or a user-created custom role. For some types of Google
|
8760
|
-
# a `binding` can also specify a `condition`, which is a
|
8761
|
-
# allows access to a resource only if the expression
|
8762
|
-
# condition can add constraints based on attributes of
|
8763
|
-
# or both. To learn which resources support
|
8764
|
-
# see the [IAM documentation](https://cloud.
|
8765
|
-
# resource-policies). **JSON example:** ` "
|
8766
|
-
# resourcemanager.organizationAdmin", "members": [
|
8767
|
-
# group:admins@example.com", "domain:google.com", "
|
8768
|
-
# appspot.gserviceaccount.com" ] `, ` "role": "
|
8769
|
-
# organizationViewer", "members": [ "user:eve@example.com"
|
8770
|
-
# title": "expirable access", "description": "Does not grant
|
8771
|
-
# 2020", "expression": "request.time < timestamp('2020-10-01T00:
|
8772
|
-
# ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
|
8773
|
-
# members: - user:mike@example.com - group:admins@example.com -
|
8774
|
-
# com - serviceAccount:my-project-id@appspot.gserviceaccount.com
|
8775
|
-
# resourcemanager.organizationAdmin - members: - user:eve@example.
|
8776
|
-
# roles/resourcemanager.organizationViewer condition: title: expirable
|
8777
|
-
# description: Does not grant access after Sep 2020 expression: request.
|
8778
|
-
# timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
|
8779
|
-
# description of IAM and its features, see the [IAM documentation](https://
|
8780
|
-
# google.com/iam/docs/).
|
9157
|
+
# A `binding` binds one or more `members`, or principals, to a single `role`.
|
9158
|
+
# Principals can be user accounts, service accounts, Google groups, and domains (
|
9159
|
+
# such as G Suite). A `role` is a named list of permissions; each `role` can be
|
9160
|
+
# an IAM predefined role or a user-created custom role. For some types of Google
|
9161
|
+
# Cloud resources, a `binding` can also specify a `condition`, which is a
|
9162
|
+
# logical expression that allows access to a resource only if the expression
|
9163
|
+
# evaluates to `true`. A condition can add constraints based on attributes of
|
9164
|
+
# the request, the resource, or both. To learn which resources support
|
9165
|
+
# conditions in their IAM policies, see the [IAM documentation](https://cloud.
|
9166
|
+
# google.com/iam/help/conditions/resource-policies). **JSON example:** ` "
|
9167
|
+
# bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
|
9168
|
+
# "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
|
9169
|
+
# serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
|
9170
|
+
# roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
|
9171
|
+
# ], "condition": ` "title": "expirable access", "description": "Does not grant
|
9172
|
+
# access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
|
9173
|
+
# 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
|
9174
|
+
# bindings: - members: - user:mike@example.com - group:admins@example.com -
|
9175
|
+
# domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
|
9176
|
+
# role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
|
9177
|
+
# com role: roles/resourcemanager.organizationViewer condition: title: expirable
|
9178
|
+
# access description: Does not grant access after Sep 2020 expression: request.
|
9179
|
+
# time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
|
9180
|
+
# a description of IAM and its features, see the [IAM documentation](https://
|
9181
|
+
# cloud.google.com/iam/docs/).
|
8781
9182
|
# Corresponds to the JSON property `policy`
|
8782
9183
|
# @return [Google::Apis::ComputeV1::Policy]
|
8783
9184
|
attr_accessor :policy
|
@@ -8899,8 +9300,11 @@ module Google
|
|
8899
9300
|
class GuestOsFeature
|
8900
9301
|
include Google::Apis::Core::Hashable
|
8901
9302
|
|
8902
|
-
# The ID of a supported feature.
|
8903
|
-
# to
|
9303
|
+
# The ID of a supported feature. To add multiple values, use commas to separate
|
9304
|
+
# values. Set to one or more of the following values: - VIRTIO_SCSI_MULTIQUEUE -
|
9305
|
+
# WINDOWS - MULTI_IP_SUBNET - UEFI_COMPATIBLE - SECURE_BOOT - GVNIC -
|
9306
|
+
# SEV_CAPABLE - SUSPEND_RESUME_COMPATIBLE For more information, see Enabling
|
9307
|
+
# guest operating system features.
|
8904
9308
|
# Corresponds to the JSON property `type`
|
8905
9309
|
# @return [String]
|
8906
9310
|
attr_accessor :type
|
@@ -9234,8 +9638,8 @@ module Google
|
|
9234
9638
|
attr_accessor :timeout_sec
|
9235
9639
|
|
9236
9640
|
# Specifies the type of the healthCheck, either TCP, SSL, HTTP, HTTPS or HTTP2.
|
9237
|
-
#
|
9238
|
-
#
|
9641
|
+
# Exactly one of the protocol-specific health check field must be specified,
|
9642
|
+
# which must match type field.
|
9239
9643
|
# Corresponds to the JSON property `type`
|
9240
9644
|
# @return [String]
|
9241
9645
|
attr_accessor :type
|
@@ -10048,7 +10452,8 @@ module Google
|
|
10048
10452
|
# port numbers in the format host:port. * matches any string of ([a-z0-9-.]*).
|
10049
10453
|
# In that case, * must be the first character and must be followed in the
|
10050
10454
|
# pattern by either - or .. * based matching is not supported when the URL map
|
10051
|
-
# is bound to target gRPC proxy that has validateForProxyless field set to
|
10455
|
+
# is bound to a target gRPC proxy that has the validateForProxyless field set to
|
10456
|
+
# true.
|
10052
10457
|
# Corresponds to the JSON property `hosts`
|
10053
10458
|
# @return [Array<String>]
|
10054
10459
|
attr_accessor :hosts
|
@@ -10075,8 +10480,8 @@ module Google
|
|
10075
10480
|
class HttpFaultAbort
|
10076
10481
|
include Google::Apis::Core::Hashable
|
10077
10482
|
|
10078
|
-
# The HTTP status code used to abort the request. The value must be
|
10079
|
-
#
|
10483
|
+
# The HTTP status code used to abort the request. The value must be from 200 to
|
10484
|
+
# 599 inclusive. For gRPC protocol, the gRPC status code is mapped to HTTP
|
10080
10485
|
# status code according to this mapping table. HTTP status 200 is mapped to gRPC
|
10081
10486
|
# status UNKNOWN. Injecting an OK status is currently not supported by Traffic
|
10082
10487
|
# Director.
|
@@ -10084,8 +10489,8 @@ module Google
|
|
10084
10489
|
# @return [Fixnum]
|
10085
10490
|
attr_accessor :http_status
|
10086
10491
|
|
10087
|
-
# The percentage of traffic
|
10088
|
-
# aborted as part of fault injection. The value must be
|
10492
|
+
# The percentage of traffic for connections, operations, or requests that is
|
10493
|
+
# aborted as part of fault injection. The value must be from 0.0 to 100.0
|
10089
10494
|
# inclusive.
|
10090
10495
|
# Corresponds to the JSON property `percentage`
|
10091
10496
|
# @return [Float]
|
@@ -10102,8 +10507,8 @@ module Google
|
|
10102
10507
|
end
|
10103
10508
|
end
|
10104
10509
|
|
10105
|
-
# Specifies the delay introduced by
|
10106
|
-
# to the backend service as part of fault injection.
|
10510
|
+
# Specifies the delay introduced by the load balancer before forwarding the
|
10511
|
+
# request to the backend service as part of fault injection.
|
10107
10512
|
class HttpFaultDelay
|
10108
10513
|
include Google::Apis::Core::Hashable
|
10109
10514
|
|
@@ -10115,9 +10520,9 @@ module Google
|
|
10115
10520
|
# @return [Google::Apis::ComputeV1::Duration]
|
10116
10521
|
attr_accessor :fixed_delay
|
10117
10522
|
|
10118
|
-
# The percentage of traffic
|
10119
|
-
#
|
10120
|
-
#
|
10523
|
+
# The percentage of traffic for connections, operations, or requests for which a
|
10524
|
+
# delay is introduced as part of fault injection. The value must be from 0.0 to
|
10525
|
+
# 100.0 inclusive.
|
10121
10526
|
# Corresponds to the JSON property `percentage`
|
10122
10527
|
# @return [Float]
|
10123
10528
|
attr_accessor :percentage
|
@@ -10136,9 +10541,9 @@ module Google
|
|
10136
10541
|
# The specification for fault injection introduced into traffic to test the
|
10137
10542
|
# resiliency of clients to backend service failure. As part of fault injection,
|
10138
10543
|
# when clients send requests to a backend service, delays can be introduced by
|
10139
|
-
#
|
10140
|
-
# backend service. Similarly requests from clients can be aborted by the
|
10141
|
-
#
|
10544
|
+
# the load balancer on a percentage of requests before sending those request to
|
10545
|
+
# the backend service. Similarly requests from clients can be aborted by the
|
10546
|
+
# load balancer for a percentage of requests.
|
10142
10547
|
class HttpFaultInjection
|
10143
10548
|
include Google::Apis::Core::Hashable
|
10144
10549
|
|
@@ -10147,8 +10552,8 @@ module Google
|
|
10147
10552
|
# @return [Google::Apis::ComputeV1::HttpFaultAbort]
|
10148
10553
|
attr_accessor :abort
|
10149
10554
|
|
10150
|
-
# Specifies the delay introduced by
|
10151
|
-
# to the backend service as part of fault injection.
|
10555
|
+
# Specifies the delay introduced by the load balancer before forwarding the
|
10556
|
+
# request to the backend service as part of fault injection.
|
10152
10557
|
# Corresponds to the JSON property `delay`
|
10153
10558
|
# @return [Google::Apis::ComputeV1::HttpFaultDelay]
|
10154
10559
|
attr_accessor :delay
|
@@ -10169,25 +10574,25 @@ module Google
|
|
10169
10574
|
class HttpHeaderAction
|
10170
10575
|
include Google::Apis::Core::Hashable
|
10171
10576
|
|
10172
|
-
# Headers to add to a matching request
|
10577
|
+
# Headers to add to a matching request before forwarding the request to the
|
10173
10578
|
# backendService.
|
10174
10579
|
# Corresponds to the JSON property `requestHeadersToAdd`
|
10175
10580
|
# @return [Array<Google::Apis::ComputeV1::HttpHeaderOption>]
|
10176
10581
|
attr_accessor :request_headers_to_add
|
10177
10582
|
|
10178
10583
|
# A list of header names for headers that need to be removed from the request
|
10179
|
-
#
|
10584
|
+
# before forwarding the request to the backendService.
|
10180
10585
|
# Corresponds to the JSON property `requestHeadersToRemove`
|
10181
10586
|
# @return [Array<String>]
|
10182
10587
|
attr_accessor :request_headers_to_remove
|
10183
10588
|
|
10184
|
-
# Headers to add the response
|
10589
|
+
# Headers to add the response before sending the response back to the client.
|
10185
10590
|
# Corresponds to the JSON property `responseHeadersToAdd`
|
10186
10591
|
# @return [Array<Google::Apis::ComputeV1::HttpHeaderOption>]
|
10187
10592
|
attr_accessor :response_headers_to_add
|
10188
10593
|
|
10189
10594
|
# A list of header names for headers that need to be removed from the response
|
10190
|
-
#
|
10595
|
+
# before sending the response back to the client.
|
10191
10596
|
# Corresponds to the JSON property `responseHeadersToRemove`
|
10192
10597
|
# @return [Array<String>]
|
10193
10598
|
attr_accessor :response_headers_to_remove
|
@@ -10217,21 +10622,21 @@ module Google
|
|
10217
10622
|
|
10218
10623
|
# The name of the HTTP header to match. For matching against the HTTP request's
|
10219
10624
|
# authority, use a headerMatch with the header name ":authority". For matching a
|
10220
|
-
# request's method, use the headerName ":method". When the URL map is bound to
|
10221
|
-
# target gRPC proxy that has validateForProxyless field set to true, only
|
10222
|
-
# binary user-specified custom metadata and the `content-type` header are
|
10625
|
+
# request's method, use the headerName ":method". When the URL map is bound to a
|
10626
|
+
# target gRPC proxy that has the validateForProxyless field set to true, only
|
10627
|
+
# non-binary user-specified custom metadata and the `content-type` header are
|
10223
10628
|
# supported. The following transport-level headers cannot be used in header
|
10224
10629
|
# matching rules: `:authority`, `:method`, `:path`, `:scheme`, `user-agent`, `
|
10225
10630
|
# accept-encoding`, `content-encoding`, `grpc-accept-encoding`, `grpc-encoding`,
|
10226
10631
|
# `grpc-previous-rpc-attempts`, `grpc-tags-bin`, `grpc-timeout` and `grpc-trace-
|
10227
|
-
# bin
|
10632
|
+
# bin`.
|
10228
10633
|
# Corresponds to the JSON property `headerName`
|
10229
10634
|
# @return [String]
|
10230
10635
|
attr_accessor :header_name
|
10231
10636
|
|
10232
|
-
# If set to false, the headerMatch is considered a match if the match
|
10233
|
-
#
|
10234
|
-
# match criteria
|
10637
|
+
# If set to false, the headerMatch is considered a match if the preceding match
|
10638
|
+
# criteria are met. If set to true, the headerMatch is considered a match if the
|
10639
|
+
# preceding match criteria are NOT met. The default setting is false.
|
10235
10640
|
# Corresponds to the JSON property `invertMatch`
|
10236
10641
|
# @return [Boolean]
|
10237
10642
|
attr_accessor :invert_match
|
@@ -10259,13 +10664,13 @@ module Google
|
|
10259
10664
|
attr_accessor :range_match
|
10260
10665
|
|
10261
10666
|
# The value of the header must match the regular expression specified in
|
10262
|
-
# regexMatch. For regular expression
|
10263
|
-
#
|
10264
|
-
#
|
10265
|
-
#
|
10266
|
-
#
|
10267
|
-
#
|
10268
|
-
#
|
10667
|
+
# regexMatch. For more information about regular expression syntax, see Syntax.
|
10668
|
+
# For matching against a port specified in the HTTP request, use a headerMatch
|
10669
|
+
# with headerName set to PORT and a regular expression that satisfies the
|
10670
|
+
# RFC2616 Host header's port specifier. Only one of exactMatch, prefixMatch,
|
10671
|
+
# suffixMatch, regexMatch, presentMatch or rangeMatch must be set. regexMatch
|
10672
|
+
# only applies to load balancers that have loadBalancingScheme set to
|
10673
|
+
# INTERNAL_SELF_MANAGED.
|
10269
10674
|
# Corresponds to the JSON property `regexMatch`
|
10270
10675
|
# @return [String]
|
10271
10676
|
attr_accessor :regex_match
|
@@ -10560,8 +10965,8 @@ module Google
|
|
10560
10965
|
include Google::Apis::Core::Hashable
|
10561
10966
|
|
10562
10967
|
# The queryParameterMatch matches if the value of the parameter exactly matches
|
10563
|
-
# the contents of exactMatch. Only one of presentMatch, exactMatch or
|
10564
|
-
# must be set.
|
10968
|
+
# the contents of exactMatch. Only one of presentMatch, exactMatch, or
|
10969
|
+
# regexMatch must be set.
|
10565
10970
|
# Corresponds to the JSON property `exactMatch`
|
10566
10971
|
# @return [String]
|
10567
10972
|
attr_accessor :exact_match
|
@@ -10574,17 +10979,17 @@ module Google
|
|
10574
10979
|
|
10575
10980
|
# Specifies that the queryParameterMatch matches if the request contains the
|
10576
10981
|
# query parameter, irrespective of whether the parameter has a value or not.
|
10577
|
-
# Only one of presentMatch, exactMatch or regexMatch must be set.
|
10982
|
+
# Only one of presentMatch, exactMatch, or regexMatch must be set.
|
10578
10983
|
# Corresponds to the JSON property `presentMatch`
|
10579
10984
|
# @return [Boolean]
|
10580
10985
|
attr_accessor :present_match
|
10581
10986
|
alias_method :present_match?, :present_match
|
10582
10987
|
|
10583
10988
|
# The queryParameterMatch matches if the value of the parameter matches the
|
10584
|
-
# regular expression specified by regexMatch. For
|
10585
|
-
#
|
10586
|
-
#
|
10587
|
-
#
|
10989
|
+
# regular expression specified by regexMatch. For more information about regular
|
10990
|
+
# expression syntax, see Syntax. Only one of presentMatch, exactMatch, or
|
10991
|
+
# regexMatch must be set. regexMatch only applies when the loadBalancingScheme
|
10992
|
+
# is set to INTERNAL_SELF_MANAGED.
|
10588
10993
|
# Corresponds to the JSON property `regexMatch`
|
10589
10994
|
# @return [String]
|
10590
10995
|
attr_accessor :regex_match
|
@@ -10606,15 +11011,15 @@ module Google
|
|
10606
11011
|
class HttpRedirectAction
|
10607
11012
|
include Google::Apis::Core::Hashable
|
10608
11013
|
|
10609
|
-
# The host that
|
10610
|
-
#
|
11014
|
+
# The host that is used in the redirect response instead of the one that was
|
11015
|
+
# supplied in the request. The value must be from 1 to 255 characters.
|
10611
11016
|
# Corresponds to the JSON property `hostRedirect`
|
10612
11017
|
# @return [String]
|
10613
11018
|
attr_accessor :host_redirect
|
10614
11019
|
|
10615
|
-
# If set to true, the URL scheme in the redirected request is set to
|
10616
|
-
# set to false, the URL scheme of the redirected request
|
10617
|
-
# that of the request. This must only be set for
|
11020
|
+
# If set to true, the URL scheme in the redirected request is set to HTTPS. If
|
11021
|
+
# set to false, the URL scheme of the redirected request remains the same as
|
11022
|
+
# that of the request. This must only be set for URL maps used in
|
10618
11023
|
# TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The
|
10619
11024
|
# default is set to false.
|
10620
11025
|
# Corresponds to the JSON property `httpsRedirect`
|
@@ -10622,11 +11027,11 @@ module Google
|
|
10622
11027
|
attr_accessor :https_redirect
|
10623
11028
|
alias_method :https_redirect?, :https_redirect
|
10624
11029
|
|
10625
|
-
# The path that
|
10626
|
-
#
|
11030
|
+
# The path that is used in the redirect response instead of the one that was
|
11031
|
+
# supplied in the request. pathRedirect cannot be supplied together with
|
10627
11032
|
# prefixRedirect. Supply one alone or neither. If neither is supplied, the path
|
10628
|
-
# of the original request
|
10629
|
-
#
|
11033
|
+
# of the original request is used for the redirect. The value must be from 1 to
|
11034
|
+
# 1024 characters.
|
10630
11035
|
# Corresponds to the JSON property `pathRedirect`
|
10631
11036
|
# @return [String]
|
10632
11037
|
attr_accessor :path_redirect
|
@@ -10634,8 +11039,8 @@ module Google
|
|
10634
11039
|
# The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch,
|
10635
11040
|
# retaining the remaining portion of the URL before redirecting the request.
|
10636
11041
|
# prefixRedirect cannot be supplied together with pathRedirect. Supply one alone
|
10637
|
-
# or neither. If neither is supplied, the path of the original request
|
10638
|
-
#
|
11042
|
+
# or neither. If neither is supplied, the path of the original request is used
|
11043
|
+
# for the redirect. The value must be from 1 to 1024 characters.
|
10639
11044
|
# Corresponds to the JSON property `prefixRedirect`
|
10640
11045
|
# @return [String]
|
10641
11046
|
attr_accessor :prefix_redirect
|
@@ -10644,14 +11049,14 @@ module Google
|
|
10644
11049
|
# MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. -
|
10645
11050
|
# FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. -
|
10646
11051
|
# TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method
|
10647
|
-
#
|
10648
|
-
#
|
11052
|
+
# is retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the
|
11053
|
+
# request method is retained.
|
10649
11054
|
# Corresponds to the JSON property `redirectResponseCode`
|
10650
11055
|
# @return [String]
|
10651
11056
|
attr_accessor :redirect_response_code
|
10652
11057
|
|
10653
11058
|
# If set to true, any accompanying query portion of the original URL is removed
|
10654
|
-
#
|
11059
|
+
# before redirecting the request. If set to false, the query portion of the
|
10655
11060
|
# original URL is retained. The default is set to false.
|
10656
11061
|
# Corresponds to the JSON property `stripQuery`
|
10657
11062
|
# @return [Boolean]
|
@@ -10692,25 +11097,27 @@ module Google
|
|
10692
11097
|
attr_accessor :per_try_timeout
|
10693
11098
|
|
10694
11099
|
# Specifies one or more conditions when this retry policy applies. Valid values
|
10695
|
-
# are: - 5xx:
|
10696
|
-
#
|
10697
|
-
# example
|
11100
|
+
# are: - 5xx: retry is attempted if the instance or endpoint responds with any
|
11101
|
+
# 5xx response code, or if the instance or endpoint does not respond at all. For
|
11102
|
+
# example, disconnects, reset, read timeout, connection failure, and refused
|
10698
11103
|
# streams. - gateway-error: Similar to 5xx, but only applies to response codes
|
10699
|
-
# 502, 503 or 504. -
|
10700
|
-
# connecting to the instance or endpoint
|
10701
|
-
#
|
10702
|
-
#
|
10703
|
-
#
|
10704
|
-
#
|
10705
|
-
#
|
10706
|
-
#
|
10707
|
-
#
|
10708
|
-
#
|
10709
|
-
#
|
10710
|
-
#
|
10711
|
-
#
|
10712
|
-
#
|
10713
|
-
#
|
11104
|
+
# 502, 503 or 504. - connect-failure: a retry is attempted on failures
|
11105
|
+
# connecting to the instance or endpoint. For example, connection timeouts. -
|
11106
|
+
# retriable-4xx: a retry is attempted if the instance or endpoint responds with
|
11107
|
+
# a 4xx response code. The only error that you can retry is error code 409. -
|
11108
|
+
# refused-stream: a retry is attempted if the instance or endpoint resets the
|
11109
|
+
# stream with a REFUSED_STREAM error code. This reset type indicates that it is
|
11110
|
+
# safe to retry. - cancelled: a retry is attempted if the gRPC status code in
|
11111
|
+
# the response header is set to cancelled. - deadline-exceeded: a retry is
|
11112
|
+
# attempted if the gRPC status code in the response header is set to deadline-
|
11113
|
+
# exceeded. - internal: a retry is attempted if the gRPC status code in the
|
11114
|
+
# response header is set to internal. - resource-exhausted: a retry is attempted
|
11115
|
+
# if the gRPC status code in the response header is set to resource-exhausted. -
|
11116
|
+
# unavailable: a retry is attempted if the gRPC status code in the response
|
11117
|
+
# header is set to unavailable. Only the following codes are supported when the
|
11118
|
+
# URL map is bound to target gRPC proxy that has validateForProxyless field set
|
11119
|
+
# to true. - cancelled - deadline-exceeded - internal - resource-exhausted -
|
11120
|
+
# unavailable
|
10714
11121
|
# Corresponds to the JSON property `retryConditions`
|
10715
11122
|
# @return [Array<String>]
|
10716
11123
|
attr_accessor :retry_conditions
|
@@ -10731,8 +11138,9 @@ module Google
|
|
10731
11138
|
class HttpRouteAction
|
10732
11139
|
include Google::Apis::Core::Hashable
|
10733
11140
|
|
10734
|
-
# The specification for allowing client
|
10735
|
-
# W3C
|
11141
|
+
# The specification for allowing client-side cross-origin requests. For more
|
11142
|
+
# information about the W3C recommendation for cross-origin resource sharing (
|
11143
|
+
# CORS), see Fetch API Living Standard.
|
10736
11144
|
# Corresponds to the JSON property `corsPolicy`
|
10737
11145
|
# @return [Google::Apis::ComputeV1::CorsPolicy]
|
10738
11146
|
attr_accessor :cors_policy
|
@@ -10740,9 +11148,9 @@ module Google
|
|
10740
11148
|
# The specification for fault injection introduced into traffic to test the
|
10741
11149
|
# resiliency of clients to backend service failure. As part of fault injection,
|
10742
11150
|
# when clients send requests to a backend service, delays can be introduced by
|
10743
|
-
#
|
10744
|
-
# backend service. Similarly requests from clients can be aborted by the
|
10745
|
-
#
|
11151
|
+
# the load balancer on a percentage of requests before sending those request to
|
11152
|
+
# the backend service. Similarly requests from clients can be aborted by the
|
11153
|
+
# load balancer for a percentage of requests.
|
10746
11154
|
# Corresponds to the JSON property `faultInjectionPolicy`
|
10747
11155
|
# @return [Google::Apis::ComputeV1::HttpFaultInjection]
|
10748
11156
|
attr_accessor :fault_injection_policy
|
@@ -10756,9 +11164,9 @@ module Google
|
|
10756
11164
|
attr_accessor :max_stream_duration
|
10757
11165
|
|
10758
11166
|
# A policy that specifies how requests intended for the route's backends are
|
10759
|
-
# shadowed to a separate mirrored backend service.
|
10760
|
-
# for responses from the shadow service.
|
10761
|
-
# service, the host
|
11167
|
+
# shadowed to a separate mirrored backend service. The load balancer doesn't
|
11168
|
+
# wait for responses from the shadow service. Before sending traffic to the
|
11169
|
+
# shadow service, the host or authority header is suffixed with -shadow.
|
10762
11170
|
# Corresponds to the JSON property `requestMirrorPolicy`
|
10763
11171
|
# @return [Google::Apis::ComputeV1::RequestMirrorPolicy]
|
10764
11172
|
attr_accessor :request_mirror_policy
|
@@ -10786,7 +11194,7 @@ module Google
|
|
10786
11194
|
# occurs. The weights determine the fraction of traffic that flows to their
|
10787
11195
|
# corresponding backend service. If all traffic needs to go to a single backend
|
10788
11196
|
# service, there must be one weightedBackendService with weight set to a non-
|
10789
|
-
# zero number.
|
11197
|
+
# zero number. After a backend service is identified and before forwarding the
|
10790
11198
|
# request to the backend service, advanced routing actions such as URL rewrites
|
10791
11199
|
# and header transformations are applied depending on additional settings
|
10792
11200
|
# specified in this HttpRouteAction.
|
@@ -10811,8 +11219,8 @@ module Google
|
|
10811
11219
|
end
|
10812
11220
|
end
|
10813
11221
|
|
10814
|
-
#
|
10815
|
-
# routing action that load balancing proxies
|
11222
|
+
# The HttpRouteRule setting specifies how to match an HTTP request and the
|
11223
|
+
# corresponding routing action that load balancing proxies perform.
|
10816
11224
|
class HttpRouteRule
|
10817
11225
|
include Google::Apis::Core::Hashable
|
10818
11226
|
|
@@ -10838,11 +11246,11 @@ module Google
|
|
10838
11246
|
attr_accessor :match_rules
|
10839
11247
|
|
10840
11248
|
# For routeRules within a given pathMatcher, priority determines the order in
|
10841
|
-
# which load balancer
|
10842
|
-
#
|
11249
|
+
# which a load balancer interprets routeRules. RouteRules are evaluated in order
|
11250
|
+
# of priority, from the lowest to highest number. The priority of a rule
|
10843
11251
|
# decreases as its number increases (1, 2, 3, N+1). The first rule that matches
|
10844
11252
|
# the request is applied. You cannot configure two or more routeRules with the
|
10845
|
-
# same priority. Priority for each rule must be set to a number
|
11253
|
+
# same priority. Priority for each rule must be set to a number from 0 to
|
10846
11254
|
# 2147483647 inclusive. Priority numbers can have gaps, which enable you to add
|
10847
11255
|
# or remove rules in the future without affecting the rest of the rules. For
|
10848
11256
|
# example, 1, 2, 3, 4, 5, 9, 12, 16 is a valid series of priority numbers to
|
@@ -10853,24 +11261,24 @@ module Google
|
|
10853
11261
|
attr_accessor :priority
|
10854
11262
|
|
10855
11263
|
# In response to a matching matchRule, the load balancer performs advanced
|
10856
|
-
# routing actions
|
11264
|
+
# routing actions, such as URL rewrites and header transformations, before
|
10857
11265
|
# forwarding the request to the selected backend. If routeAction specifies any
|
10858
11266
|
# weightedBackendServices, service must not be set. Conversely if service is set,
|
10859
11267
|
# routeAction cannot contain any weightedBackendServices. Only one of
|
10860
11268
|
# urlRedirect, service or routeAction.weightedBackendService must be set.
|
10861
11269
|
# UrlMaps for external HTTP(S) load balancers support only the urlRewrite action
|
10862
|
-
# within a
|
11270
|
+
# within a route rule's routeAction.
|
10863
11271
|
# Corresponds to the JSON property `routeAction`
|
10864
11272
|
# @return [Google::Apis::ComputeV1::HttpRouteAction]
|
10865
11273
|
attr_accessor :route_action
|
10866
11274
|
|
10867
11275
|
# The full or partial URL of the backend service resource to which traffic is
|
10868
|
-
# directed if this rule is matched. If routeAction is
|
10869
|
-
#
|
10870
|
-
#
|
10871
|
-
#
|
10872
|
-
#
|
10873
|
-
#
|
11276
|
+
# directed if this rule is matched. If routeAction is also specified, advanced
|
11277
|
+
# routing actions, such as URL rewrites, take effect before sending the request
|
11278
|
+
# to the backend. However, if service is specified, routeAction cannot contain
|
11279
|
+
# any weightedBackendServices. Conversely, if routeAction specifies any
|
11280
|
+
# weightedBackendServices, service must not be specified. Only one of
|
11281
|
+
# urlRedirect, service or routeAction.weightedBackendService must be set.
|
10874
11282
|
# Corresponds to the JSON property `service`
|
10875
11283
|
# @return [String]
|
10876
11284
|
attr_accessor :service
|
@@ -10903,9 +11311,9 @@ module Google
|
|
10903
11311
|
|
10904
11312
|
# For satisfying the matchRule condition, the path of the request must exactly
|
10905
11313
|
# match the value specified in fullPathMatch after removing any query parameters
|
10906
|
-
# and anchor that may be part of the original URL. fullPathMatch must be
|
10907
|
-
#
|
10908
|
-
#
|
11314
|
+
# and anchor that may be part of the original URL. fullPathMatch must be from 1
|
11315
|
+
# to 1024 characters. Only one of prefixMatch, fullPathMatch or regexMatch must
|
11316
|
+
# be specified.
|
10909
11317
|
# Corresponds to the JSON property `fullPathMatch`
|
10910
11318
|
# @return [String]
|
10911
11319
|
attr_accessor :full_path_match
|
@@ -10918,53 +11326,52 @@ module Google
|
|
10918
11326
|
|
10919
11327
|
# Specifies that prefixMatch and fullPathMatch matches are case sensitive. The
|
10920
11328
|
# default value is false. ignoreCase must not be used with regexMatch. Not
|
10921
|
-
# supported when the URL map is bound to target gRPC proxy.
|
11329
|
+
# supported when the URL map is bound to a target gRPC proxy.
|
10922
11330
|
# Corresponds to the JSON property `ignoreCase`
|
10923
11331
|
# @return [Boolean]
|
10924
11332
|
attr_accessor :ignore_case
|
10925
11333
|
alias_method :ignore_case?, :ignore_case
|
10926
11334
|
|
10927
|
-
# Opaque filter criteria used by
|
10928
|
-
# to a limited set of xDS compliant clients. In their xDS requests
|
10929
|
-
#
|
10930
|
-
# relevant routing configuration is made available to those proxies. For
|
10931
|
-
# metadataFilter in this list, if its filterMatchCriteria is set to
|
10932
|
-
# at least one of the filterLabels must match the corresponding label
|
10933
|
-
# in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then
|
10934
|
-
# its filterLabels must match with corresponding labels provided in the
|
10935
|
-
# If multiple
|
10936
|
-
# in order to be considered a match. metadataFilters specified here
|
11335
|
+
# Opaque filter criteria used by the load balancer to restrict routing
|
11336
|
+
# configuration to a limited set of xDS compliant clients. In their xDS requests
|
11337
|
+
# to the load balancer, xDS clients present node metadata. When there is a match,
|
11338
|
+
# the relevant routing configuration is made available to those proxies. For
|
11339
|
+
# each metadataFilter in this list, if its filterMatchCriteria is set to
|
11340
|
+
# MATCH_ANY, at least one of the filterLabels must match the corresponding label
|
11341
|
+
# provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then
|
11342
|
+
# all of its filterLabels must match with corresponding labels provided in the
|
11343
|
+
# metadata. If multiple metadata filters are specified, all of them need to be
|
11344
|
+
# satisfied in order to be considered a match. metadataFilters specified here is
|
10937
11345
|
# applied after those specified in ForwardingRule that refers to the UrlMap this
|
10938
|
-
# HttpRouteRuleMatch belongs to. metadataFilters only applies to
|
10939
|
-
# that have
|
10940
|
-
#
|
10941
|
-
#
|
11346
|
+
# HttpRouteRuleMatch belongs to. metadataFilters only applies to load balancers
|
11347
|
+
# that have loadBalancingScheme set to INTERNAL_SELF_MANAGED. Not supported when
|
11348
|
+
# the URL map is bound to a target gRPC proxy that has validateForProxyless
|
11349
|
+
# field set to true.
|
10942
11350
|
# Corresponds to the JSON property `metadataFilters`
|
10943
11351
|
# @return [Array<Google::Apis::ComputeV1::MetadataFilter>]
|
10944
11352
|
attr_accessor :metadata_filters
|
10945
11353
|
|
10946
11354
|
# For satisfying the matchRule condition, the request's path must begin with the
|
10947
|
-
# specified prefixMatch. prefixMatch must begin with a /. The value must be
|
10948
|
-
#
|
10949
|
-
#
|
11355
|
+
# specified prefixMatch. prefixMatch must begin with a /. The value must be from
|
11356
|
+
# 1 to 1024 characters. Only one of prefixMatch, fullPathMatch or regexMatch
|
11357
|
+
# must be specified.
|
10950
11358
|
# Corresponds to the JSON property `prefixMatch`
|
10951
11359
|
# @return [String]
|
10952
11360
|
attr_accessor :prefix_match
|
10953
11361
|
|
10954
11362
|
# Specifies a list of query parameter match criteria, all of which must match
|
10955
11363
|
# corresponding query parameters in the request. Not supported when the URL map
|
10956
|
-
# is bound to target gRPC proxy.
|
11364
|
+
# is bound to a target gRPC proxy.
|
10957
11365
|
# Corresponds to the JSON property `queryParameterMatches`
|
10958
11366
|
# @return [Array<Google::Apis::ComputeV1::HttpQueryParameterMatch>]
|
10959
11367
|
attr_accessor :query_parameter_matches
|
10960
11368
|
|
10961
11369
|
# For satisfying the matchRule condition, the path of the request must satisfy
|
10962
11370
|
# the regular expression specified in regexMatch after removing any query
|
10963
|
-
# parameters and anchor supplied with the original URL. For
|
10964
|
-
#
|
10965
|
-
# fullPathMatch or regexMatch must be specified.
|
10966
|
-
#
|
10967
|
-
# INTERNAL_SELF_MANAGED.
|
11371
|
+
# parameters and anchor supplied with the original URL. For more information
|
11372
|
+
# about regular expression syntax, see Syntax. Only one of prefixMatch,
|
11373
|
+
# fullPathMatch or regexMatch must be specified. regexMatch only applies to load
|
11374
|
+
# balancers that have loadBalancingScheme set to INTERNAL_SELF_MANAGED.
|
10968
11375
|
# Corresponds to the JSON property `regexMatch`
|
10969
11376
|
# @return [String]
|
10970
11377
|
attr_accessor :regex_match
|
@@ -11252,8 +11659,8 @@ module Google
|
|
11252
11659
|
attr_accessor :family
|
11253
11660
|
|
11254
11661
|
# A list of features to enable on the guest operating system. Applicable only
|
11255
|
-
# for bootable images.
|
11256
|
-
#
|
11662
|
+
# for bootable images. To see a list of available options, see the
|
11663
|
+
# guestOSfeatures[].type parameter.
|
11257
11664
|
# Corresponds to the JSON property `guestOsFeatures`
|
11258
11665
|
# @return [Array<Google::Apis::ComputeV1::GuestOsFeature>]
|
11259
11666
|
attr_accessor :guest_os_features
|
@@ -11856,6 +12263,11 @@ module Google
|
|
11856
12263
|
# @return [Array<Google::Apis::ComputeV1::NetworkInterface>]
|
11857
12264
|
attr_accessor :network_interfaces
|
11858
12265
|
|
12266
|
+
#
|
12267
|
+
# Corresponds to the JSON property `networkPerformanceConfig`
|
12268
|
+
# @return [Google::Apis::ComputeV1::NetworkPerformanceConfig]
|
12269
|
+
attr_accessor :network_performance_config
|
12270
|
+
|
11859
12271
|
# The private IPv6 google access type for the VM. If not specified, use
|
11860
12272
|
# INHERIT_FROM_SUBNETWORK as default.
|
11861
12273
|
# Corresponds to the JSON property `privateIpv6GoogleAccess`
|
@@ -11908,6 +12320,17 @@ module Google
|
|
11908
12320
|
# @return [Google::Apis::ComputeV1::ShieldedInstanceIntegrityPolicy]
|
11909
12321
|
attr_accessor :shielded_instance_integrity_policy
|
11910
12322
|
|
12323
|
+
# Source machine image
|
12324
|
+
# Corresponds to the JSON property `sourceMachineImage`
|
12325
|
+
# @return [String]
|
12326
|
+
attr_accessor :source_machine_image
|
12327
|
+
|
12328
|
+
# Source machine image encryption key when creating an instance from a machine
|
12329
|
+
# image.
|
12330
|
+
# Corresponds to the JSON property `sourceMachineImageEncryptionKey`
|
12331
|
+
# @return [Google::Apis::ComputeV1::CustomerEncryptionKey]
|
12332
|
+
attr_accessor :source_machine_image_encryption_key
|
12333
|
+
|
11911
12334
|
# [Output Only] Whether a VM has been restricted for start because Compute
|
11912
12335
|
# Engine has detected suspicious activity.
|
11913
12336
|
# Corresponds to the JSON property `startRestricted`
|
@@ -11970,6 +12393,7 @@ module Google
|
|
11970
12393
|
@min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform)
|
11971
12394
|
@name = args[:name] if args.key?(:name)
|
11972
12395
|
@network_interfaces = args[:network_interfaces] if args.key?(:network_interfaces)
|
12396
|
+
@network_performance_config = args[:network_performance_config] if args.key?(:network_performance_config)
|
11973
12397
|
@private_ipv6_google_access = args[:private_ipv6_google_access] if args.key?(:private_ipv6_google_access)
|
11974
12398
|
@reservation_affinity = args[:reservation_affinity] if args.key?(:reservation_affinity)
|
11975
12399
|
@resource_policies = args[:resource_policies] if args.key?(:resource_policies)
|
@@ -11979,6 +12403,8 @@ module Google
|
|
11979
12403
|
@service_accounts = args[:service_accounts] if args.key?(:service_accounts)
|
11980
12404
|
@shielded_instance_config = args[:shielded_instance_config] if args.key?(:shielded_instance_config)
|
11981
12405
|
@shielded_instance_integrity_policy = args[:shielded_instance_integrity_policy] if args.key?(:shielded_instance_integrity_policy)
|
12406
|
+
@source_machine_image = args[:source_machine_image] if args.key?(:source_machine_image)
|
12407
|
+
@source_machine_image_encryption_key = args[:source_machine_image_encryption_key] if args.key?(:source_machine_image_encryption_key)
|
11982
12408
|
@start_restricted = args[:start_restricted] if args.key?(:start_restricted)
|
11983
12409
|
@status = args[:status] if args.key?(:status)
|
11984
12410
|
@status_message = args[:status_message] if args.key?(:status_message)
|
@@ -13163,6 +13589,17 @@ module Google
|
|
13163
13589
|
# @return [String]
|
13164
13590
|
attr_accessor :minimal_action
|
13165
13591
|
|
13592
|
+
# Most disruptive action that is allowed to be taken on an instance. You can
|
13593
|
+
# specify either NONE to forbid any actions, REFRESH to allow actions that do
|
13594
|
+
# not need instance restart, RESTART to allow actions that can be applied
|
13595
|
+
# without instance replacing or REPLACE to allow all possible actions. If the
|
13596
|
+
# Updater determines that the minimal update action needed is more disruptive
|
13597
|
+
# than most disruptive allowed action you specify it will not perform the update
|
13598
|
+
# at all.
|
13599
|
+
# Corresponds to the JSON property `mostDisruptiveAllowedAction`
|
13600
|
+
# @return [String]
|
13601
|
+
attr_accessor :most_disruptive_allowed_action
|
13602
|
+
|
13166
13603
|
# What action should be used to replace instances. See minimal_action.REPLACE
|
13167
13604
|
# Corresponds to the JSON property `replacementMethod`
|
13168
13605
|
# @return [String]
|
@@ -13187,6 +13624,7 @@ module Google
|
|
13187
13624
|
@max_surge = args[:max_surge] if args.key?(:max_surge)
|
13188
13625
|
@max_unavailable = args[:max_unavailable] if args.key?(:max_unavailable)
|
13189
13626
|
@minimal_action = args[:minimal_action] if args.key?(:minimal_action)
|
13627
|
+
@most_disruptive_allowed_action = args[:most_disruptive_allowed_action] if args.key?(:most_disruptive_allowed_action)
|
13190
13628
|
@replacement_method = args[:replacement_method] if args.key?(:replacement_method)
|
13191
13629
|
@type = args[:type] if args.key?(:type)
|
13192
13630
|
end
|
@@ -14477,8 +14915,14 @@ module Google
|
|
14477
14915
|
# @return [Array<Google::Apis::ComputeV1::NetworkInterface>]
|
14478
14916
|
attr_accessor :network_interfaces
|
14479
14917
|
|
14918
|
+
# Note that for MachineImage, this is not supported yet.
|
14919
|
+
# Corresponds to the JSON property `networkPerformanceConfig`
|
14920
|
+
# @return [Google::Apis::ComputeV1::NetworkPerformanceConfig]
|
14921
|
+
attr_accessor :network_performance_config
|
14922
|
+
|
14480
14923
|
# The private IPv6 google access type for VMs. If not specified, use
|
14481
|
-
# INHERIT_FROM_SUBNETWORK as default.
|
14924
|
+
# INHERIT_FROM_SUBNETWORK as default. Note that for MachineImage, this is not
|
14925
|
+
# supported yet.
|
14482
14926
|
# Corresponds to the JSON property `privateIpv6GoogleAccess`
|
14483
14927
|
# @return [String]
|
14484
14928
|
attr_accessor :private_ipv6_google_access
|
@@ -14488,8 +14932,8 @@ module Google
|
|
14488
14932
|
# @return [Google::Apis::ComputeV1::ReservationAffinity]
|
14489
14933
|
attr_accessor :reservation_affinity
|
14490
14934
|
|
14491
|
-
# Resource policies (names, not
|
14492
|
-
# properties.
|
14935
|
+
# Resource policies (names, not URLs) applied to instances created from these
|
14936
|
+
# properties. Note that for MachineImage, this is not supported yet.
|
14493
14937
|
# Corresponds to the JSON property `resourcePolicies`
|
14494
14938
|
# @return [Array<String>]
|
14495
14939
|
attr_accessor :resource_policies
|
@@ -14534,6 +14978,7 @@ module Google
|
|
14534
14978
|
@metadata = args[:metadata] if args.key?(:metadata)
|
14535
14979
|
@min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform)
|
14536
14980
|
@network_interfaces = args[:network_interfaces] if args.key?(:network_interfaces)
|
14981
|
+
@network_performance_config = args[:network_performance_config] if args.key?(:network_performance_config)
|
14537
14982
|
@private_ipv6_google_access = args[:private_ipv6_google_access] if args.key?(:private_ipv6_google_access)
|
14538
14983
|
@reservation_affinity = args[:reservation_affinity] if args.key?(:reservation_affinity)
|
14539
14984
|
@resource_policies = args[:resource_policies] if args.key?(:resource_policies)
|
@@ -15379,6 +15824,17 @@ module Google
|
|
15379
15824
|
# @return [String]
|
15380
15825
|
attr_accessor :bandwidth
|
15381
15826
|
|
15827
|
+
# Up to 16 candidate prefixes that control the allocation of
|
15828
|
+
# cloudRouterIpv6Address and customerRouterIpv6Address for this attachment. Each
|
15829
|
+
# prefix must be in the Global Unique Address (GUA) space. It is highly
|
15830
|
+
# recommended that it be in a range owned by the requestor. A GUA in a range
|
15831
|
+
# owned by Google will cause the request to fail. Google will select an
|
15832
|
+
# available prefix from the supplied candidates or fail the request. If not
|
15833
|
+
# supplied, a /125 from a Google-owned GUA block will be selected.
|
15834
|
+
# Corresponds to the JSON property `candidateIpv6Subnets`
|
15835
|
+
# @return [Array<String>]
|
15836
|
+
attr_accessor :candidate_ipv6_subnets
|
15837
|
+
|
15382
15838
|
# Up to 16 candidate prefixes that can be used to restrict the allocation of
|
15383
15839
|
# cloudRouterIpAddress and customerRouterIpAddress for this attachment. All
|
15384
15840
|
# prefixes must be within link-local address space (169.254.0.0/16) and must be /
|
@@ -15396,6 +15852,20 @@ module Google
|
|
15396
15852
|
# @return [String]
|
15397
15853
|
attr_accessor :cloud_router_ip_address
|
15398
15854
|
|
15855
|
+
# [Output Only] IPv6 address + prefix length to be configured on Cloud Router
|
15856
|
+
# Interface for this interconnect attachment.
|
15857
|
+
# Corresponds to the JSON property `cloudRouterIpv6Address`
|
15858
|
+
# @return [String]
|
15859
|
+
attr_accessor :cloud_router_ipv6_address
|
15860
|
+
|
15861
|
+
# If supplied, the interface id (index within the subnet) to be used for the
|
15862
|
+
# cloud router address. The id must be in the range of 1 to 6. If a subnet mask
|
15863
|
+
# is supplied, it must be /125, and the subnet should either be 0 or match the
|
15864
|
+
# selected subnet.
|
15865
|
+
# Corresponds to the JSON property `cloudRouterIpv6InterfaceId`
|
15866
|
+
# @return [String]
|
15867
|
+
attr_accessor :cloud_router_ipv6_interface_id
|
15868
|
+
|
15399
15869
|
# [Output Only] Creation timestamp in RFC3339 text format.
|
15400
15870
|
# Corresponds to the JSON property `creationTimestamp`
|
15401
15871
|
# @return [String]
|
@@ -15407,7 +15877,24 @@ module Google
|
|
15407
15877
|
# @return [String]
|
15408
15878
|
attr_accessor :customer_router_ip_address
|
15409
15879
|
|
15410
|
-
# [Output Only]
|
15880
|
+
# [Output Only] IPv6 address + prefix length to be configured on the customer
|
15881
|
+
# router subinterface for this interconnect attachment.
|
15882
|
+
# Corresponds to the JSON property `customerRouterIpv6Address`
|
15883
|
+
# @return [String]
|
15884
|
+
attr_accessor :customer_router_ipv6_address
|
15885
|
+
|
15886
|
+
# If supplied, the interface id (index within the subnet) to be used for the
|
15887
|
+
# customer router address. The id must be in the range of 1 to 6. If a subnet
|
15888
|
+
# mask is supplied, it must be /125, and the subnet should either be 0 or match
|
15889
|
+
# the selected subnet.
|
15890
|
+
# Corresponds to the JSON property `customerRouterIpv6InterfaceId`
|
15891
|
+
# @return [String]
|
15892
|
+
attr_accessor :customer_router_ipv6_interface_id
|
15893
|
+
|
15894
|
+
# [Output only for types PARTNER and DEDICATED. Not present for PARTNER_PROVIDER.
|
15895
|
+
# ] Dataplane version for this InterconnectAttachment. This field is only
|
15896
|
+
# present for Dataplane version 2 and higher. Absence of this field in the API
|
15897
|
+
# output indicates that the Dataplane is version 1.
|
15411
15898
|
# Corresponds to the JSON property `dataplaneVersion`
|
15412
15899
|
# @return [Fixnum]
|
15413
15900
|
attr_accessor :dataplane_version
|
@@ -15566,6 +16053,14 @@ module Google
|
|
15566
16053
|
# @return [String]
|
15567
16054
|
attr_accessor :self_link
|
15568
16055
|
|
16056
|
+
# The stack type for this interconnect attachment to identify whether the IPv6
|
16057
|
+
# feature is enabled or not. If not specified, IPV4_ONLY will be used. This
|
16058
|
+
# field can be both set at interconnect attachments creation and update
|
16059
|
+
# interconnect attachment operations.
|
16060
|
+
# Corresponds to the JSON property `stackType`
|
16061
|
+
# @return [String]
|
16062
|
+
attr_accessor :stack_type
|
16063
|
+
|
15569
16064
|
# [Output Only] The current state of this attachment's functionality. Enum
|
15570
16065
|
# values ACTIVE and UNPROVISIONED are shared by DEDICATED/PRIVATE, PARTNER, and
|
15571
16066
|
# PARTNER_PROVIDER interconnect attachments, while enum values PENDING_PARTNER,
|
@@ -15608,10 +16103,15 @@ module Google
|
|
15608
16103
|
def update!(**args)
|
15609
16104
|
@admin_enabled = args[:admin_enabled] if args.key?(:admin_enabled)
|
15610
16105
|
@bandwidth = args[:bandwidth] if args.key?(:bandwidth)
|
16106
|
+
@candidate_ipv6_subnets = args[:candidate_ipv6_subnets] if args.key?(:candidate_ipv6_subnets)
|
15611
16107
|
@candidate_subnets = args[:candidate_subnets] if args.key?(:candidate_subnets)
|
15612
16108
|
@cloud_router_ip_address = args[:cloud_router_ip_address] if args.key?(:cloud_router_ip_address)
|
16109
|
+
@cloud_router_ipv6_address = args[:cloud_router_ipv6_address] if args.key?(:cloud_router_ipv6_address)
|
16110
|
+
@cloud_router_ipv6_interface_id = args[:cloud_router_ipv6_interface_id] if args.key?(:cloud_router_ipv6_interface_id)
|
15613
16111
|
@creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
|
15614
16112
|
@customer_router_ip_address = args[:customer_router_ip_address] if args.key?(:customer_router_ip_address)
|
16113
|
+
@customer_router_ipv6_address = args[:customer_router_ipv6_address] if args.key?(:customer_router_ipv6_address)
|
16114
|
+
@customer_router_ipv6_interface_id = args[:customer_router_ipv6_interface_id] if args.key?(:customer_router_ipv6_interface_id)
|
15615
16115
|
@dataplane_version = args[:dataplane_version] if args.key?(:dataplane_version)
|
15616
16116
|
@description = args[:description] if args.key?(:description)
|
15617
16117
|
@edge_availability_domain = args[:edge_availability_domain] if args.key?(:edge_availability_domain)
|
@@ -15632,6 +16132,7 @@ module Google
|
|
15632
16132
|
@router = args[:router] if args.key?(:router)
|
15633
16133
|
@satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
|
15634
16134
|
@self_link = args[:self_link] if args.key?(:self_link)
|
16135
|
+
@stack_type = args[:stack_type] if args.key?(:stack_type)
|
15635
16136
|
@state = args[:state] if args.key?(:state)
|
15636
16137
|
@type = args[:type] if args.key?(:type)
|
15637
16138
|
@vlan_tag8021q = args[:vlan_tag8021q] if args.key?(:vlan_tag8021q)
|
@@ -17293,6 +17794,272 @@ module Google
|
|
17293
17794
|
end
|
17294
17795
|
end
|
17295
17796
|
|
17797
|
+
# Represents a machine image resource. A machine image is a Compute Engine
|
17798
|
+
# resource that stores all the configuration, metadata, permissions, and data
|
17799
|
+
# from one or more disks required to create a Virtual machine (VM) instance. For
|
17800
|
+
# more information, see Machine images.
|
17801
|
+
class MachineImage
|
17802
|
+
include Google::Apis::Core::Hashable
|
17803
|
+
|
17804
|
+
# [Output Only] The creation timestamp for this machine image in RFC3339 text
|
17805
|
+
# format.
|
17806
|
+
# Corresponds to the JSON property `creationTimestamp`
|
17807
|
+
# @return [String]
|
17808
|
+
attr_accessor :creation_timestamp
|
17809
|
+
|
17810
|
+
# An optional description of this resource. Provide this property when you
|
17811
|
+
# create the resource.
|
17812
|
+
# Corresponds to the JSON property `description`
|
17813
|
+
# @return [String]
|
17814
|
+
attr_accessor :description
|
17815
|
+
|
17816
|
+
# [Input Only] Whether to attempt an application consistent machine image by
|
17817
|
+
# informing the OS to prepare for the snapshot process. Currently only supported
|
17818
|
+
# on Windows instances using the Volume Shadow Copy Service (VSS).
|
17819
|
+
# Corresponds to the JSON property `guestFlush`
|
17820
|
+
# @return [Boolean]
|
17821
|
+
attr_accessor :guest_flush
|
17822
|
+
alias_method :guest_flush?, :guest_flush
|
17823
|
+
|
17824
|
+
# [Output Only] A unique identifier for this machine image. The server defines
|
17825
|
+
# this identifier.
|
17826
|
+
# Corresponds to the JSON property `id`
|
17827
|
+
# @return [Fixnum]
|
17828
|
+
attr_accessor :id
|
17829
|
+
|
17830
|
+
# [Output Only] Properties of source instance
|
17831
|
+
# Corresponds to the JSON property `instanceProperties`
|
17832
|
+
# @return [Google::Apis::ComputeV1::InstanceProperties]
|
17833
|
+
attr_accessor :instance_properties
|
17834
|
+
|
17835
|
+
# [Output Only] The resource type, which is always compute#machineImage for
|
17836
|
+
# machine image.
|
17837
|
+
# Corresponds to the JSON property `kind`
|
17838
|
+
# @return [String]
|
17839
|
+
attr_accessor :kind
|
17840
|
+
|
17841
|
+
# Encrypts the machine image using a customer-supplied encryption key. After you
|
17842
|
+
# encrypt a machine image using a customer-supplied key, you must provide the
|
17843
|
+
# same key if you use the machine image later. For example, you must provide the
|
17844
|
+
# encryption key when you create an instance from the encrypted machine image in
|
17845
|
+
# a future request. Customer-supplied encryption keys do not protect access to
|
17846
|
+
# metadata of the machine image. If you do not provide an encryption key when
|
17847
|
+
# creating the machine image, then the machine image will be encrypted using an
|
17848
|
+
# automatically generated key and you do not need to provide a key to use the
|
17849
|
+
# machine image later.
|
17850
|
+
# Corresponds to the JSON property `machineImageEncryptionKey`
|
17851
|
+
# @return [Google::Apis::ComputeV1::CustomerEncryptionKey]
|
17852
|
+
attr_accessor :machine_image_encryption_key
|
17853
|
+
|
17854
|
+
# Name of the resource; provided by the client when the resource is created. The
|
17855
|
+
# name must be 1-63 characters long, and comply with RFC1035. Specifically, the
|
17856
|
+
# name must be 1-63 characters long and match the regular expression `[a-z]([-a-
|
17857
|
+
# z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter,
|
17858
|
+
# and all following characters must be a dash, lowercase letter, or digit,
|
17859
|
+
# except the last character, which cannot be a dash.
|
17860
|
+
# Corresponds to the JSON property `name`
|
17861
|
+
# @return [String]
|
17862
|
+
attr_accessor :name
|
17863
|
+
|
17864
|
+
# [Output Only] Reserved for future use.
|
17865
|
+
# Corresponds to the JSON property `satisfiesPzs`
|
17866
|
+
# @return [Boolean]
|
17867
|
+
attr_accessor :satisfies_pzs
|
17868
|
+
alias_method :satisfies_pzs?, :satisfies_pzs
|
17869
|
+
|
17870
|
+
# An array of Machine Image specific properties for disks attached to the source
|
17871
|
+
# instance
|
17872
|
+
# Corresponds to the JSON property `savedDisks`
|
17873
|
+
# @return [Array<Google::Apis::ComputeV1::SavedDisk>]
|
17874
|
+
attr_accessor :saved_disks
|
17875
|
+
|
17876
|
+
# [Output Only] The URL for this machine image. The server defines this URL.
|
17877
|
+
# Corresponds to the JSON property `selfLink`
|
17878
|
+
# @return [String]
|
17879
|
+
attr_accessor :self_link
|
17880
|
+
|
17881
|
+
# [Input Only] The customer-supplied encryption key of the disks attached to the
|
17882
|
+
# source instance. Required if the source disk is protected by a customer-
|
17883
|
+
# supplied encryption key.
|
17884
|
+
# Corresponds to the JSON property `sourceDiskEncryptionKeys`
|
17885
|
+
# @return [Array<Google::Apis::ComputeV1::SourceDiskEncryptionKey>]
|
17886
|
+
attr_accessor :source_disk_encryption_keys
|
17887
|
+
|
17888
|
+
# The source instance used to create the machine image. You can provide this as
|
17889
|
+
# a partial or full URL to the resource. For example, the following are valid
|
17890
|
+
# values: - https://www.googleapis.com/compute/v1/projects/project/zones/zone /
|
17891
|
+
# instances/instance - projects/project/zones/zone/instances/instance
|
17892
|
+
# Corresponds to the JSON property `sourceInstance`
|
17893
|
+
# @return [String]
|
17894
|
+
attr_accessor :source_instance
|
17895
|
+
|
17896
|
+
# DEPRECATED: Please use compute#instanceProperties instead. New properties will
|
17897
|
+
# not be added to this field.
|
17898
|
+
# Corresponds to the JSON property `sourceInstanceProperties`
|
17899
|
+
# @return [Google::Apis::ComputeV1::SourceInstanceProperties]
|
17900
|
+
attr_accessor :source_instance_properties
|
17901
|
+
|
17902
|
+
# [Output Only] The status of the machine image. One of the following values:
|
17903
|
+
# INVALID, CREATING, READY, DELETING, and UPLOADING.
|
17904
|
+
# Corresponds to the JSON property `status`
|
17905
|
+
# @return [String]
|
17906
|
+
attr_accessor :status
|
17907
|
+
|
17908
|
+
# The regional or multi-regional Cloud Storage bucket location where the machine
|
17909
|
+
# image is stored.
|
17910
|
+
# Corresponds to the JSON property `storageLocations`
|
17911
|
+
# @return [Array<String>]
|
17912
|
+
attr_accessor :storage_locations
|
17913
|
+
|
17914
|
+
# [Output Only] Total size of the storage used by the machine image.
|
17915
|
+
# Corresponds to the JSON property `totalStorageBytes`
|
17916
|
+
# @return [Fixnum]
|
17917
|
+
attr_accessor :total_storage_bytes
|
17918
|
+
|
17919
|
+
def initialize(**args)
|
17920
|
+
update!(**args)
|
17921
|
+
end
|
17922
|
+
|
17923
|
+
# Update properties of this object
|
17924
|
+
def update!(**args)
|
17925
|
+
@creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
|
17926
|
+
@description = args[:description] if args.key?(:description)
|
17927
|
+
@guest_flush = args[:guest_flush] if args.key?(:guest_flush)
|
17928
|
+
@id = args[:id] if args.key?(:id)
|
17929
|
+
@instance_properties = args[:instance_properties] if args.key?(:instance_properties)
|
17930
|
+
@kind = args[:kind] if args.key?(:kind)
|
17931
|
+
@machine_image_encryption_key = args[:machine_image_encryption_key] if args.key?(:machine_image_encryption_key)
|
17932
|
+
@name = args[:name] if args.key?(:name)
|
17933
|
+
@satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
|
17934
|
+
@saved_disks = args[:saved_disks] if args.key?(:saved_disks)
|
17935
|
+
@self_link = args[:self_link] if args.key?(:self_link)
|
17936
|
+
@source_disk_encryption_keys = args[:source_disk_encryption_keys] if args.key?(:source_disk_encryption_keys)
|
17937
|
+
@source_instance = args[:source_instance] if args.key?(:source_instance)
|
17938
|
+
@source_instance_properties = args[:source_instance_properties] if args.key?(:source_instance_properties)
|
17939
|
+
@status = args[:status] if args.key?(:status)
|
17940
|
+
@storage_locations = args[:storage_locations] if args.key?(:storage_locations)
|
17941
|
+
@total_storage_bytes = args[:total_storage_bytes] if args.key?(:total_storage_bytes)
|
17942
|
+
end
|
17943
|
+
end
|
17944
|
+
|
17945
|
+
# A list of machine images.
|
17946
|
+
class MachineImageList
|
17947
|
+
include Google::Apis::Core::Hashable
|
17948
|
+
|
17949
|
+
# [Output Only] Unique identifier for the resource; defined by the server.
|
17950
|
+
# Corresponds to the JSON property `id`
|
17951
|
+
# @return [String]
|
17952
|
+
attr_accessor :id
|
17953
|
+
|
17954
|
+
# A list of MachineImage resources.
|
17955
|
+
# Corresponds to the JSON property `items`
|
17956
|
+
# @return [Array<Google::Apis::ComputeV1::MachineImage>]
|
17957
|
+
attr_accessor :items
|
17958
|
+
|
17959
|
+
# [Output Only] The resource type, which is always compute#
|
17960
|
+
# machineImagesListResponse for machine image lists.
|
17961
|
+
# Corresponds to the JSON property `kind`
|
17962
|
+
# @return [String]
|
17963
|
+
attr_accessor :kind
|
17964
|
+
|
17965
|
+
# [Output Only] This token allows you to get the next page of results for list
|
17966
|
+
# requests. If the number of results is larger than maxResults, use the
|
17967
|
+
# nextPageToken as a value for the query parameter pageToken in the next list
|
17968
|
+
# request. Subsequent list requests will have their own nextPageToken to
|
17969
|
+
# continue paging through the results.
|
17970
|
+
# Corresponds to the JSON property `nextPageToken`
|
17971
|
+
# @return [String]
|
17972
|
+
attr_accessor :next_page_token
|
17973
|
+
|
17974
|
+
# [Output Only] Server-defined URL for this resource.
|
17975
|
+
# Corresponds to the JSON property `selfLink`
|
17976
|
+
# @return [String]
|
17977
|
+
attr_accessor :self_link
|
17978
|
+
|
17979
|
+
# [Output Only] Informational warning message.
|
17980
|
+
# Corresponds to the JSON property `warning`
|
17981
|
+
# @return [Google::Apis::ComputeV1::MachineImageList::Warning]
|
17982
|
+
attr_accessor :warning
|
17983
|
+
|
17984
|
+
def initialize(**args)
|
17985
|
+
update!(**args)
|
17986
|
+
end
|
17987
|
+
|
17988
|
+
# Update properties of this object
|
17989
|
+
def update!(**args)
|
17990
|
+
@id = args[:id] if args.key?(:id)
|
17991
|
+
@items = args[:items] if args.key?(:items)
|
17992
|
+
@kind = args[:kind] if args.key?(:kind)
|
17993
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
17994
|
+
@self_link = args[:self_link] if args.key?(:self_link)
|
17995
|
+
@warning = args[:warning] if args.key?(:warning)
|
17996
|
+
end
|
17997
|
+
|
17998
|
+
# [Output Only] Informational warning message.
|
17999
|
+
class Warning
|
18000
|
+
include Google::Apis::Core::Hashable
|
18001
|
+
|
18002
|
+
# [Output Only] A warning code, if applicable. For example, Compute Engine
|
18003
|
+
# returns NO_RESULTS_ON_PAGE if there are no results in the response.
|
18004
|
+
# Corresponds to the JSON property `code`
|
18005
|
+
# @return [String]
|
18006
|
+
attr_accessor :code
|
18007
|
+
|
18008
|
+
# [Output Only] Metadata about this warning in key: value format. For example: "
|
18009
|
+
# data": [ ` "key": "scope", "value": "zones/us-east1-d" `
|
18010
|
+
# Corresponds to the JSON property `data`
|
18011
|
+
# @return [Array<Google::Apis::ComputeV1::MachineImageList::Warning::Datum>]
|
18012
|
+
attr_accessor :data
|
18013
|
+
|
18014
|
+
# [Output Only] A human-readable description of the warning code.
|
18015
|
+
# Corresponds to the JSON property `message`
|
18016
|
+
# @return [String]
|
18017
|
+
attr_accessor :message
|
18018
|
+
|
18019
|
+
def initialize(**args)
|
18020
|
+
update!(**args)
|
18021
|
+
end
|
18022
|
+
|
18023
|
+
# Update properties of this object
|
18024
|
+
def update!(**args)
|
18025
|
+
@code = args[:code] if args.key?(:code)
|
18026
|
+
@data = args[:data] if args.key?(:data)
|
18027
|
+
@message = args[:message] if args.key?(:message)
|
18028
|
+
end
|
18029
|
+
|
18030
|
+
#
|
18031
|
+
class Datum
|
18032
|
+
include Google::Apis::Core::Hashable
|
18033
|
+
|
18034
|
+
# [Output Only] A key that provides more detail on the warning being returned.
|
18035
|
+
# For example, for warnings where there are no results in a list request for a
|
18036
|
+
# particular zone, this key might be scope and the key value might be the zone
|
18037
|
+
# name. Other examples might be a key indicating a deprecated resource and a
|
18038
|
+
# suggested replacement, or a warning about invalid network settings (for
|
18039
|
+
# example, if an instance attempts to perform IP forwarding but is not enabled
|
18040
|
+
# for IP forwarding).
|
18041
|
+
# Corresponds to the JSON property `key`
|
18042
|
+
# @return [String]
|
18043
|
+
attr_accessor :key
|
18044
|
+
|
18045
|
+
# [Output Only] A warning data value corresponding to the key.
|
18046
|
+
# Corresponds to the JSON property `value`
|
18047
|
+
# @return [String]
|
18048
|
+
attr_accessor :value
|
18049
|
+
|
18050
|
+
def initialize(**args)
|
18051
|
+
update!(**args)
|
18052
|
+
end
|
18053
|
+
|
18054
|
+
# Update properties of this object
|
18055
|
+
def update!(**args)
|
18056
|
+
@key = args[:key] if args.key?(:key)
|
18057
|
+
@value = args[:value] if args.key?(:value)
|
18058
|
+
end
|
18059
|
+
end
|
18060
|
+
end
|
18061
|
+
end
|
18062
|
+
|
17296
18063
|
# Represents a Machine Type resource. You can use specific machine types for
|
17297
18064
|
# your VM instances based on performance and pricing requirements. For more
|
17298
18065
|
# information, read Machine Types.
|
@@ -18071,18 +18838,18 @@ module Google
|
|
18071
18838
|
end
|
18072
18839
|
end
|
18073
18840
|
|
18074
|
-
# Opaque filter criteria used by
|
18075
|
-
# to a limited set of
|
18076
|
-
#
|
18077
|
-
# to match criteria specified here. If a match takes place,
|
18078
|
-
# configuration is made available to those proxies. For each
|
18079
|
-
# this list, if its filterMatchCriteria is set to MATCH_ANY,
|
18080
|
-
# filterLabels must match the corresponding label provided
|
18081
|
-
# its filterMatchCriteria is set to MATCH_ALL, then all of
|
18082
|
-
# match with corresponding labels provided in the metadata.
|
18083
|
-
# metadataFilters would be: if
|
18084
|
-
# receive routing configuration when values in metadataFilters
|
18085
|
-
# supplied in of their XDS requests to loadbalancers.
|
18841
|
+
# Opaque filter criteria used by load balancers to restrict routing
|
18842
|
+
# configuration to a limited set of load balancing proxies. Proxies and sidecars
|
18843
|
+
# involved in load balancing would typically present metadata to the load
|
18844
|
+
# balancers that need to match criteria specified here. If a match takes place,
|
18845
|
+
# the relevant configuration is made available to those proxies. For each
|
18846
|
+
# metadataFilter in this list, if its filterMatchCriteria is set to MATCH_ANY,
|
18847
|
+
# at least one of the filterLabels must match the corresponding label provided
|
18848
|
+
# in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then all of
|
18849
|
+
# its filterLabels must match with corresponding labels provided in the metadata.
|
18850
|
+
# An example for using metadataFilters would be: if load balancing involves
|
18851
|
+
# Envoys, they receive routing configuration when values in metadataFilters
|
18852
|
+
# match values supplied in of their XDS requests to loadbalancers.
|
18086
18853
|
class MetadataFilter
|
18087
18854
|
include Google::Apis::Core::Hashable
|
18088
18855
|
|
@@ -18093,11 +18860,11 @@ module Google
|
|
18093
18860
|
# @return [Array<Google::Apis::ComputeV1::MetadataFilterLabelMatch>]
|
18094
18861
|
attr_accessor :filter_labels
|
18095
18862
|
|
18096
|
-
# Specifies how individual
|
18097
|
-
#
|
18098
|
-
# MATCH_ANY:
|
18099
|
-
# provided metadata. - MATCH_ALL:
|
18100
|
-
# the provided metadata.
|
18863
|
+
# Specifies how individual filter label matches within the list of filterLabels
|
18864
|
+
# and contributes toward the overall metadataFilter match. Supported values are:
|
18865
|
+
# - MATCH_ANY: at least one of the filterLabels must have a matching label in
|
18866
|
+
# the provided metadata. - MATCH_ALL: all filterLabels must have matching labels
|
18867
|
+
# in the provided metadata.
|
18101
18868
|
# Corresponds to the JSON property `filterMatchCriteria`
|
18102
18869
|
# @return [String]
|
18103
18870
|
attr_accessor :filter_match_criteria
|
@@ -18114,7 +18881,7 @@ module Google
|
|
18114
18881
|
end
|
18115
18882
|
|
18116
18883
|
# MetadataFilter label name value pairs that are expected to match corresponding
|
18117
|
-
# labels presented as metadata to the
|
18884
|
+
# labels presented as metadata to the load balancer.
|
18118
18885
|
class MetadataFilterLabelMatch
|
18119
18886
|
include Google::Apis::Core::Hashable
|
18120
18887
|
|
@@ -18421,6 +19188,12 @@ module Google
|
|
18421
19188
|
# @return [String]
|
18422
19189
|
attr_accessor :network_endpoint_type
|
18423
19190
|
|
19191
|
+
# The target service url used to set up private service connection to a Google
|
19192
|
+
# API. An example value is: "asia-northeast3-cloudkms.googleapis.com"
|
19193
|
+
# Corresponds to the JSON property `pscTargetService`
|
19194
|
+
# @return [String]
|
19195
|
+
attr_accessor :psc_target_service
|
19196
|
+
|
18424
19197
|
# [Output Only] The URL of the region where the network endpoint group is
|
18425
19198
|
# located.
|
18426
19199
|
# Corresponds to the JSON property `region`
|
@@ -18466,6 +19239,7 @@ module Google
|
|
18466
19239
|
@name = args[:name] if args.key?(:name)
|
18467
19240
|
@network = args[:network] if args.key?(:network)
|
18468
19241
|
@network_endpoint_type = args[:network_endpoint_type] if args.key?(:network_endpoint_type)
|
19242
|
+
@psc_target_service = args[:psc_target_service] if args.key?(:psc_target_service)
|
18469
19243
|
@region = args[:region] if args.key?(:region)
|
18470
19244
|
@self_link = args[:self_link] if args.key?(:self_link)
|
18471
19245
|
@size = args[:size] if args.key?(:size)
|
@@ -19166,7 +19940,7 @@ module Google
|
|
19166
19940
|
# @return [String]
|
19167
19941
|
attr_accessor :ipv6_access_type
|
19168
19942
|
|
19169
|
-
#
|
19943
|
+
# An IPv6 internal network address for this network interface.
|
19170
19944
|
# Corresponds to the JSON property `ipv6Address`
|
19171
19945
|
# @return [String]
|
19172
19946
|
attr_accessor :ipv6_address
|
@@ -19183,14 +19957,15 @@ module Google
|
|
19183
19957
|
# @return [String]
|
19184
19958
|
attr_accessor :name
|
19185
19959
|
|
19186
|
-
# URL of the network resource for this instance. When creating an instance,
|
19187
|
-
# neither the network nor the subnetwork is specified, the default network
|
19188
|
-
# global/networks/default is used
|
19189
|
-
#
|
19190
|
-
#
|
19191
|
-
#
|
19192
|
-
#
|
19193
|
-
# global/networks/
|
19960
|
+
# URL of the VPC network resource for this instance. When creating an instance,
|
19961
|
+
# if neither the network nor the subnetwork is specified, the default network
|
19962
|
+
# global/networks/default is used. If the selected project doesn't have the
|
19963
|
+
# default network, you must specify a network or subnet. If the network is not
|
19964
|
+
# specified but the subnetwork is specified, the network is inferred. If you
|
19965
|
+
# specify this property, you can specify the network as a full or partial URL.
|
19966
|
+
# For example, the following are all valid URLs: - https://www.googleapis.com/
|
19967
|
+
# compute/v1/projects/project/global/networks/ network - projects/project/global/
|
19968
|
+
# networks/network - global/networks/default
|
19194
19969
|
# Corresponds to the JSON property `network`
|
19195
19970
|
# @return [String]
|
19196
19971
|
attr_accessor :network
|
@@ -19399,7 +20174,8 @@ module Google
|
|
19399
20174
|
attr_accessor :exchange_subnet_routes
|
19400
20175
|
alias_method :exchange_subnet_routes?, :exchange_subnet_routes
|
19401
20176
|
|
19402
|
-
# Whether to export the custom routes to peer network.
|
20177
|
+
# Whether to export the custom routes to peer network. The default value is
|
20178
|
+
# false.
|
19403
20179
|
# Corresponds to the JSON property `exportCustomRoutes`
|
19404
20180
|
# @return [Boolean]
|
19405
20181
|
attr_accessor :export_custom_routes
|
@@ -19413,7 +20189,8 @@ module Google
|
|
19413
20189
|
attr_accessor :export_subnet_routes_with_public_ip
|
19414
20190
|
alias_method :export_subnet_routes_with_public_ip?, :export_subnet_routes_with_public_ip
|
19415
20191
|
|
19416
|
-
# Whether to import the custom routes from peer network.
|
20192
|
+
# Whether to import the custom routes from peer network. The default value is
|
20193
|
+
# false.
|
19417
20194
|
# Corresponds to the JSON property `importCustomRoutes`
|
19418
20195
|
# @return [Boolean]
|
19419
20196
|
attr_accessor :import_custom_routes
|
@@ -19481,6 +20258,25 @@ module Google
|
|
19481
20258
|
end
|
19482
20259
|
end
|
19483
20260
|
|
20261
|
+
#
|
20262
|
+
class NetworkPerformanceConfig
|
20263
|
+
include Google::Apis::Core::Hashable
|
20264
|
+
|
20265
|
+
#
|
20266
|
+
# Corresponds to the JSON property `totalEgressBandwidthTier`
|
20267
|
+
# @return [String]
|
20268
|
+
attr_accessor :total_egress_bandwidth_tier
|
20269
|
+
|
20270
|
+
def initialize(**args)
|
20271
|
+
update!(**args)
|
20272
|
+
end
|
20273
|
+
|
20274
|
+
# Update properties of this object
|
20275
|
+
def update!(**args)
|
20276
|
+
@total_egress_bandwidth_tier = args[:total_egress_bandwidth_tier] if args.key?(:total_egress_bandwidth_tier)
|
20277
|
+
end
|
20278
|
+
end
|
20279
|
+
|
19484
20280
|
# A routing configuration attached to a network resource. The message includes
|
19485
20281
|
# the list of routers associated with the network, and a flag indicating the
|
19486
20282
|
# type of routing behavior to enforce network-wide.
|
@@ -22347,6 +23143,55 @@ module Google
|
|
22347
23143
|
end
|
22348
23144
|
end
|
22349
23145
|
|
23146
|
+
# Next free: 7
|
23147
|
+
class PacketIntervals
|
23148
|
+
include Google::Apis::Core::Hashable
|
23149
|
+
|
23150
|
+
# Average observed inter-packet interval in milliseconds.
|
23151
|
+
# Corresponds to the JSON property `avgMs`
|
23152
|
+
# @return [Fixnum]
|
23153
|
+
attr_accessor :avg_ms
|
23154
|
+
|
23155
|
+
# From how long ago in the past these intervals were observed.
|
23156
|
+
# Corresponds to the JSON property `duration`
|
23157
|
+
# @return [String]
|
23158
|
+
attr_accessor :duration
|
23159
|
+
|
23160
|
+
# Maximum observed inter-packet interval in milliseconds.
|
23161
|
+
# Corresponds to the JSON property `maxMs`
|
23162
|
+
# @return [Fixnum]
|
23163
|
+
attr_accessor :max_ms
|
23164
|
+
|
23165
|
+
# Minimum observed inter-packet interval in milliseconds.
|
23166
|
+
# Corresponds to the JSON property `minMs`
|
23167
|
+
# @return [Fixnum]
|
23168
|
+
attr_accessor :min_ms
|
23169
|
+
|
23170
|
+
# Number of inter-packet intervals from which these statistics were derived.
|
23171
|
+
# Corresponds to the JSON property `numIntervals`
|
23172
|
+
# @return [Fixnum]
|
23173
|
+
attr_accessor :num_intervals
|
23174
|
+
|
23175
|
+
# The type of packets for which inter-packet intervals were computed.
|
23176
|
+
# Corresponds to the JSON property `type`
|
23177
|
+
# @return [String]
|
23178
|
+
attr_accessor :type
|
23179
|
+
|
23180
|
+
def initialize(**args)
|
23181
|
+
update!(**args)
|
23182
|
+
end
|
23183
|
+
|
23184
|
+
# Update properties of this object
|
23185
|
+
def update!(**args)
|
23186
|
+
@avg_ms = args[:avg_ms] if args.key?(:avg_ms)
|
23187
|
+
@duration = args[:duration] if args.key?(:duration)
|
23188
|
+
@max_ms = args[:max_ms] if args.key?(:max_ms)
|
23189
|
+
@min_ms = args[:min_ms] if args.key?(:min_ms)
|
23190
|
+
@num_intervals = args[:num_intervals] if args.key?(:num_intervals)
|
23191
|
+
@type = args[:type] if args.key?(:type)
|
23192
|
+
end
|
23193
|
+
end
|
23194
|
+
|
22350
23195
|
# Represents a Packet Mirroring resource. Packet Mirroring clones the traffic of
|
22351
23196
|
# specified instances in your Virtual Private Cloud (VPC) network and forwards
|
22352
23197
|
# it to a collector destination, such as an instance group of an internal TCP/
|
@@ -22972,37 +23817,37 @@ module Google
|
|
22972
23817
|
|
22973
23818
|
# A matcher for the path portion of the URL. The BackendService from the longest-
|
22974
23819
|
# matched rule will serve the URL. If no rule was matched, the default service
|
22975
|
-
#
|
23820
|
+
# is used.
|
22976
23821
|
class PathMatcher
|
22977
23822
|
include Google::Apis::Core::Hashable
|
22978
23823
|
|
22979
23824
|
# defaultRouteAction takes effect when none of the pathRules or routeRules match.
|
22980
|
-
# The load balancer performs advanced routing actions
|
22981
|
-
# transformations,
|
23825
|
+
# The load balancer performs advanced routing actions, such as URL rewrites and
|
23826
|
+
# header transformations, before forwarding the request to the selected backend.
|
22982
23827
|
# If defaultRouteAction specifies any weightedBackendServices, defaultService
|
22983
23828
|
# must not be set. Conversely if defaultService is set, defaultRouteAction
|
22984
23829
|
# cannot contain any weightedBackendServices. Only one of defaultRouteAction or
|
22985
23830
|
# defaultUrlRedirect must be set. UrlMaps for external HTTP(S) load balancers
|
22986
|
-
# support only the urlRewrite action within a
|
23831
|
+
# support only the urlRewrite action within a path matcher's defaultRouteAction.
|
22987
23832
|
# Corresponds to the JSON property `defaultRouteAction`
|
22988
23833
|
# @return [Google::Apis::ComputeV1::HttpRouteAction]
|
22989
23834
|
attr_accessor :default_route_action
|
22990
23835
|
|
22991
|
-
# The full or partial URL to the BackendService resource. This
|
23836
|
+
# The full or partial URL to the BackendService resource. This URL is used if
|
22992
23837
|
# none of the pathRules or routeRules defined by this PathMatcher are matched.
|
22993
23838
|
# For example, the following are all valid URLs to a BackendService resource: -
|
22994
23839
|
# https://www.googleapis.com/compute/v1/projects/project /global/backendServices/
|
22995
23840
|
# backendService - compute/v1/projects/project/global/backendServices/
|
22996
23841
|
# backendService - global/backendServices/backendService If defaultRouteAction
|
22997
|
-
# is
|
22998
|
-
#
|
22999
|
-
#
|
23000
|
-
#
|
23001
|
-
#
|
23002
|
-
#
|
23003
|
-
#
|
23004
|
-
#
|
23005
|
-
#
|
23842
|
+
# is also specified, advanced routing actions, such as URL rewrites, take effect
|
23843
|
+
# before sending the request to the backend. However, if defaultService is
|
23844
|
+
# specified, defaultRouteAction cannot contain any weightedBackendServices.
|
23845
|
+
# Conversely, if defaultRouteAction specifies any weightedBackendServices,
|
23846
|
+
# defaultService must not be specified. Only one of defaultService,
|
23847
|
+
# defaultUrlRedirect , or defaultRouteAction.weightedBackendService must be set.
|
23848
|
+
# Authorization requires one or more of the following Google IAM permissions on
|
23849
|
+
# the specified resource default_service: - compute.backendBuckets.use - compute.
|
23850
|
+
# backendServices.use
|
23006
23851
|
# Corresponds to the JSON property `defaultService`
|
23007
23852
|
# @return [String]
|
23008
23853
|
attr_accessor :default_service
|
@@ -23078,23 +23923,23 @@ module Google
|
|
23078
23923
|
attr_accessor :paths
|
23079
23924
|
|
23080
23925
|
# In response to a matching path, the load balancer performs advanced routing
|
23081
|
-
# actions
|
23926
|
+
# actions, such as URL rewrites and header transformations, before forwarding
|
23082
23927
|
# the request to the selected backend. If routeAction specifies any
|
23083
23928
|
# weightedBackendServices, service must not be set. Conversely if service is set,
|
23084
23929
|
# routeAction cannot contain any weightedBackendServices. Only one of
|
23085
|
-
# routeAction or urlRedirect must be set.
|
23086
|
-
# balancers support only the urlRewrite action within a
|
23930
|
+
# routeAction or urlRedirect must be set. URL maps for external HTTP(S) load
|
23931
|
+
# balancers support only the urlRewrite action within a path rule's routeAction.
|
23087
23932
|
# Corresponds to the JSON property `routeAction`
|
23088
23933
|
# @return [Google::Apis::ComputeV1::HttpRouteAction]
|
23089
23934
|
attr_accessor :route_action
|
23090
23935
|
|
23091
23936
|
# The full or partial URL of the backend service resource to which traffic is
|
23092
|
-
# directed if this rule is matched. If routeAction is
|
23093
|
-
#
|
23094
|
-
#
|
23095
|
-
#
|
23096
|
-
#
|
23097
|
-
#
|
23937
|
+
# directed if this rule is matched. If routeAction is also specified, advanced
|
23938
|
+
# routing actions, such as URL rewrites, take effect before sending the request
|
23939
|
+
# to the backend. However, if service is specified, routeAction cannot contain
|
23940
|
+
# any weightedBackendServices. Conversely, if routeAction specifies any
|
23941
|
+
# weightedBackendServices, service must not be specified. Only one of
|
23942
|
+
# urlRedirect, service or routeAction.weightedBackendService must be set.
|
23098
23943
|
# Corresponds to the JSON property `service`
|
23099
23944
|
# @return [String]
|
23100
23945
|
attr_accessor :service
|
@@ -23166,31 +24011,31 @@ module Google
|
|
23166
24011
|
|
23167
24012
|
# An Identity and Access Management (IAM) policy, which specifies access
|
23168
24013
|
# controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
|
23169
|
-
# A `binding` binds one or more `members
|
23170
|
-
# user accounts, service accounts, Google groups, and domains (
|
23171
|
-
# A `role` is a named list of permissions; each `role` can be
|
23172
|
-
# role or a user-created custom role. For some types of Google
|
23173
|
-
# a `binding` can also specify a `condition`, which is a
|
23174
|
-
# allows access to a resource only if the expression
|
23175
|
-
# condition can add constraints based on attributes of
|
23176
|
-
# or both. To learn which resources support
|
23177
|
-
# see the [IAM documentation](https://cloud.
|
23178
|
-
# resource-policies). **JSON example:** ` "
|
23179
|
-
# resourcemanager.organizationAdmin", "members": [
|
23180
|
-
# group:admins@example.com", "domain:google.com", "
|
23181
|
-
# appspot.gserviceaccount.com" ] `, ` "role": "
|
23182
|
-
# organizationViewer", "members": [ "user:eve@example.com"
|
23183
|
-
# title": "expirable access", "description": "Does not grant
|
23184
|
-
# 2020", "expression": "request.time < timestamp('2020-10-01T00:
|
23185
|
-
# ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
|
23186
|
-
# members: - user:mike@example.com - group:admins@example.com -
|
23187
|
-
# com - serviceAccount:my-project-id@appspot.gserviceaccount.com
|
23188
|
-
# resourcemanager.organizationAdmin - members: - user:eve@example.
|
23189
|
-
# roles/resourcemanager.organizationViewer condition: title: expirable
|
23190
|
-
# description: Does not grant access after Sep 2020 expression: request.
|
23191
|
-
# timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
|
23192
|
-
# description of IAM and its features, see the [IAM documentation](https://
|
23193
|
-
# google.com/iam/docs/).
|
24014
|
+
# A `binding` binds one or more `members`, or principals, to a single `role`.
|
24015
|
+
# Principals can be user accounts, service accounts, Google groups, and domains (
|
24016
|
+
# such as G Suite). A `role` is a named list of permissions; each `role` can be
|
24017
|
+
# an IAM predefined role or a user-created custom role. For some types of Google
|
24018
|
+
# Cloud resources, a `binding` can also specify a `condition`, which is a
|
24019
|
+
# logical expression that allows access to a resource only if the expression
|
24020
|
+
# evaluates to `true`. A condition can add constraints based on attributes of
|
24021
|
+
# the request, the resource, or both. To learn which resources support
|
24022
|
+
# conditions in their IAM policies, see the [IAM documentation](https://cloud.
|
24023
|
+
# google.com/iam/help/conditions/resource-policies). **JSON example:** ` "
|
24024
|
+
# bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
|
24025
|
+
# "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
|
24026
|
+
# serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
|
24027
|
+
# roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
|
24028
|
+
# ], "condition": ` "title": "expirable access", "description": "Does not grant
|
24029
|
+
# access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
|
24030
|
+
# 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
|
24031
|
+
# bindings: - members: - user:mike@example.com - group:admins@example.com -
|
24032
|
+
# domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
|
24033
|
+
# role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
|
24034
|
+
# com role: roles/resourcemanager.organizationViewer condition: title: expirable
|
24035
|
+
# access description: Does not grant access after Sep 2020 expression: request.
|
24036
|
+
# time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
|
24037
|
+
# a description of IAM and its features, see the [IAM documentation](https://
|
24038
|
+
# cloud.google.com/iam/docs/).
|
23194
24039
|
class Policy
|
23195
24040
|
include Google::Apis::Core::Hashable
|
23196
24041
|
|
@@ -23199,9 +24044,14 @@ module Google
|
|
23199
24044
|
# @return [Array<Google::Apis::ComputeV1::AuditConfig>]
|
23200
24045
|
attr_accessor :audit_configs
|
23201
24046
|
|
23202
|
-
# Associates a list of `members
|
23203
|
-
# condition` that determines how and when the `bindings` are applied.
|
23204
|
-
# the `bindings` must contain at least one
|
24047
|
+
# Associates a list of `members`, or principals, with a `role`. Optionally, may
|
24048
|
+
# specify a `condition` that determines how and when the `bindings` are applied.
|
24049
|
+
# Each of the `bindings` must contain at least one principal. The `bindings` in
|
24050
|
+
# a `Policy` can refer to up to 1,500 principals; up to 250 of these principals
|
24051
|
+
# can be Google groups. Each occurrence of a principal counts towards these
|
24052
|
+
# limits. For example, if the `bindings` grant 50 different roles to `user:alice@
|
24053
|
+
# example.com`, and not to any other principal, then you can add another 1,450
|
24054
|
+
# principals to the `bindings` in the `Policy`.
|
23205
24055
|
# Corresponds to the JSON property `bindings`
|
23206
24056
|
# @return [Array<Google::Apis::ComputeV1::Binding>]
|
23207
24057
|
attr_accessor :bindings
|
@@ -23222,12 +24072,6 @@ module Google
|
|
23222
24072
|
# @return [String]
|
23223
24073
|
attr_accessor :etag
|
23224
24074
|
|
23225
|
-
# This is deprecated and has no effect. Do not use.
|
23226
|
-
# Corresponds to the JSON property `iamOwned`
|
23227
|
-
# @return [Boolean]
|
23228
|
-
attr_accessor :iam_owned
|
23229
|
-
alias_method :iam_owned?, :iam_owned
|
23230
|
-
|
23231
24075
|
# This is deprecated and has no effect. Do not use.
|
23232
24076
|
# Corresponds to the JSON property `rules`
|
23233
24077
|
# @return [Array<Google::Apis::ComputeV1::Rule>]
|
@@ -23261,7 +24105,6 @@ module Google
|
|
23261
24105
|
@audit_configs = args[:audit_configs] if args.key?(:audit_configs)
|
23262
24106
|
@bindings = args[:bindings] if args.key?(:bindings)
|
23263
24107
|
@etag = args[:etag] if args.key?(:etag)
|
23264
|
-
@iam_owned = args[:iam_owned] if args.key?(:iam_owned)
|
23265
24108
|
@rules = args[:rules] if args.key?(:rules)
|
23266
24109
|
@version = args[:version] if args.key?(:version)
|
23267
24110
|
end
|
@@ -23642,7 +24485,13 @@ module Google
|
|
23642
24485
|
# @return [String]
|
23643
24486
|
attr_accessor :shared_secret
|
23644
24487
|
|
23645
|
-
# The status of the public advertised prefix.
|
24488
|
+
# The status of the public advertised prefix. Possible values include: - `
|
24489
|
+
# INITIAL`: RPKI validation is complete. - `PTR_CONFIGURED`: User has configured
|
24490
|
+
# the PTR. - `VALIDATED`: Reverse DNS lookup is successful. - `
|
24491
|
+
# REVERSE_DNS_LOOKUP_FAILED`: Reverse DNS lookup failed. - `
|
24492
|
+
# PREFIX_CONFIGURATION_IN_PROGRESS`: The prefix is being configured. - `
|
24493
|
+
# PREFIX_CONFIGURATION_COMPLETE`: The prefix is fully configured. - `
|
24494
|
+
# PREFIX_REMOVAL_IN_PROGRESS`: The prefix is being removed.
|
23646
24495
|
# Corresponds to the JSON property `status`
|
23647
24496
|
# @return [String]
|
23648
24497
|
attr_accessor :status
|
@@ -23921,7 +24770,12 @@ module Google
|
|
23921
24770
|
# @return [String]
|
23922
24771
|
attr_accessor :self_link
|
23923
24772
|
|
23924
|
-
# [Output Only] The status of the public delegated prefix
|
24773
|
+
# [Output Only] The status of the public delegated prefix, which can be one of
|
24774
|
+
# following values: - `INITIALIZING` The public delegated prefix is being
|
24775
|
+
# initialized and addresses cannot be created yet. - `READY_TO_ANNOUNCE` The
|
24776
|
+
# public delegated prefix is a live migration prefix and is active. - `ANNOUNCED`
|
24777
|
+
# The public delegated prefix is active. - `DELETING` The public delegated
|
24778
|
+
# prefix is being deprovsioned.
|
23925
24779
|
# Corresponds to the JSON property `status`
|
23926
24780
|
# @return [String]
|
23927
24781
|
attr_accessor :status
|
@@ -25781,31 +26635,31 @@ module Google
|
|
25781
26635
|
|
25782
26636
|
# An Identity and Access Management (IAM) policy, which specifies access
|
25783
26637
|
# controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
|
25784
|
-
# A `binding` binds one or more `members
|
25785
|
-
# user accounts, service accounts, Google groups, and domains (
|
25786
|
-
# A `role` is a named list of permissions; each `role` can be
|
25787
|
-
# role or a user-created custom role. For some types of Google
|
25788
|
-
# a `binding` can also specify a `condition`, which is a
|
25789
|
-
# allows access to a resource only if the expression
|
25790
|
-
# condition can add constraints based on attributes of
|
25791
|
-
# or both. To learn which resources support
|
25792
|
-
# see the [IAM documentation](https://cloud.
|
25793
|
-
# resource-policies). **JSON example:** ` "
|
25794
|
-
# resourcemanager.organizationAdmin", "members": [
|
25795
|
-
# group:admins@example.com", "domain:google.com", "
|
25796
|
-
# appspot.gserviceaccount.com" ] `, ` "role": "
|
25797
|
-
# organizationViewer", "members": [ "user:eve@example.com"
|
25798
|
-
# title": "expirable access", "description": "Does not grant
|
25799
|
-
# 2020", "expression": "request.time < timestamp('2020-10-01T00:
|
25800
|
-
# ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
|
25801
|
-
# members: - user:mike@example.com - group:admins@example.com -
|
25802
|
-
# com - serviceAccount:my-project-id@appspot.gserviceaccount.com
|
25803
|
-
# resourcemanager.organizationAdmin - members: - user:eve@example.
|
25804
|
-
# roles/resourcemanager.organizationViewer condition: title: expirable
|
25805
|
-
# description: Does not grant access after Sep 2020 expression: request.
|
25806
|
-
# timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
|
25807
|
-
# description of IAM and its features, see the [IAM documentation](https://
|
25808
|
-
# google.com/iam/docs/).
|
26638
|
+
# A `binding` binds one or more `members`, or principals, to a single `role`.
|
26639
|
+
# Principals can be user accounts, service accounts, Google groups, and domains (
|
26640
|
+
# such as G Suite). A `role` is a named list of permissions; each `role` can be
|
26641
|
+
# an IAM predefined role or a user-created custom role. For some types of Google
|
26642
|
+
# Cloud resources, a `binding` can also specify a `condition`, which is a
|
26643
|
+
# logical expression that allows access to a resource only if the expression
|
26644
|
+
# evaluates to `true`. A condition can add constraints based on attributes of
|
26645
|
+
# the request, the resource, or both. To learn which resources support
|
26646
|
+
# conditions in their IAM policies, see the [IAM documentation](https://cloud.
|
26647
|
+
# google.com/iam/help/conditions/resource-policies). **JSON example:** ` "
|
26648
|
+
# bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
|
26649
|
+
# "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
|
26650
|
+
# serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
|
26651
|
+
# roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
|
26652
|
+
# ], "condition": ` "title": "expirable access", "description": "Does not grant
|
26653
|
+
# access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
|
26654
|
+
# 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
|
26655
|
+
# bindings: - members: - user:mike@example.com - group:admins@example.com -
|
26656
|
+
# domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
|
26657
|
+
# role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
|
26658
|
+
# com role: roles/resourcemanager.organizationViewer condition: title: expirable
|
26659
|
+
# access description: Does not grant access after Sep 2020 expression: request.
|
26660
|
+
# time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
|
26661
|
+
# a description of IAM and its features, see the [IAM documentation](https://
|
26662
|
+
# cloud.google.com/iam/docs/).
|
25809
26663
|
# Corresponds to the JSON property `policy`
|
25810
26664
|
# @return [Google::Apis::ComputeV1::Policy]
|
25811
26665
|
attr_accessor :policy
|
@@ -25846,17 +26700,17 @@ module Google
|
|
25846
26700
|
class RegionUrlMapsValidateRequest
|
25847
26701
|
include Google::Apis::Core::Hashable
|
25848
26702
|
|
25849
|
-
# Represents a URL Map resource.
|
25850
|
-
#
|
25851
|
-
#
|
25852
|
-
#
|
25853
|
-
#
|
25854
|
-
#
|
25855
|
-
#
|
26703
|
+
# Represents a URL Map resource. Compute Engine has two URL Map resources: * [
|
26704
|
+
# Global](/compute/docs/reference/rest/v1/urlMaps) * [Regional](/compute/docs/
|
26705
|
+
# reference/rest/v1/regionUrlMaps) A URL map resource is a component of certain
|
26706
|
+
# types of cloud load balancers and Traffic Director: * urlMaps are used by
|
26707
|
+
# external HTTP(S) load balancers and Traffic Director. * regionUrlMaps are used
|
26708
|
+
# by internal HTTP(S) load balancers. For a list of supported URL map features
|
26709
|
+
# by the load balancer type, see the Load balancing features: Routing and
|
25856
26710
|
# traffic management table. For a list of supported URL map features for Traffic
|
25857
26711
|
# Director, see the Traffic Director features: Routing and traffic management
|
25858
|
-
# table. This resource defines mappings from
|
25859
|
-
#
|
26712
|
+
# table. This resource defines mappings from hostnames and URL paths to either a
|
26713
|
+
# backend service or a backend bucket. To use the global urlMaps resource, the
|
25860
26714
|
# backend service must have a loadBalancingScheme of either EXTERNAL or
|
25861
26715
|
# INTERNAL_SELF_MANAGED. To use the regionUrlMaps resource, the backend service
|
25862
26716
|
# must have a loadBalancingScheme of INTERNAL_MANAGED. For more information,
|
@@ -25876,9 +26730,9 @@ module Google
|
|
25876
26730
|
end
|
25877
26731
|
|
25878
26732
|
# A policy that specifies how requests intended for the route's backends are
|
25879
|
-
# shadowed to a separate mirrored backend service.
|
25880
|
-
# for responses from the shadow service.
|
25881
|
-
# service, the host
|
26733
|
+
# shadowed to a separate mirrored backend service. The load balancer doesn't
|
26734
|
+
# wait for responses from the shadow service. Before sending traffic to the
|
26735
|
+
# shadow service, the host or authority header is suffixed with -shadow.
|
25882
26736
|
class RequestMirrorPolicy
|
25883
26737
|
include Google::Apis::Core::Hashable
|
25884
26738
|
|
@@ -25954,6 +26808,11 @@ module Google
|
|
25954
26808
|
# @return [String]
|
25955
26809
|
attr_accessor :self_link
|
25956
26810
|
|
26811
|
+
# The share setting for reservations and sole tenancy node groups.
|
26812
|
+
# Corresponds to the JSON property `shareSettings`
|
26813
|
+
# @return [Google::Apis::ComputeV1::ShareSettings]
|
26814
|
+
attr_accessor :share_settings
|
26815
|
+
|
25957
26816
|
# This reservation type allows to pre allocate specific instance configuration.
|
25958
26817
|
# Next ID: 5
|
25959
26818
|
# Corresponds to the JSON property `specificReservation`
|
@@ -25993,6 +26852,7 @@ module Google
|
|
25993
26852
|
@name = args[:name] if args.key?(:name)
|
25994
26853
|
@satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
|
25995
26854
|
@self_link = args[:self_link] if args.key?(:self_link)
|
26855
|
+
@share_settings = args[:share_settings] if args.key?(:share_settings)
|
25996
26856
|
@specific_reservation = args[:specific_reservation] if args.key?(:specific_reservation)
|
25997
26857
|
@specific_reservation_required = args[:specific_reservation_required] if args.key?(:specific_reservation_required)
|
25998
26858
|
@status = args[:status] if args.key?(:status)
|
@@ -28032,6 +28892,12 @@ module Google
|
|
28032
28892
|
# @return [String]
|
28033
28893
|
attr_accessor :enable
|
28034
28894
|
|
28895
|
+
# Enable IPv6 traffic over BGP Peer. If not specified, it is disabled by default.
|
28896
|
+
# Corresponds to the JSON property `enableIpv6`
|
28897
|
+
# @return [Boolean]
|
28898
|
+
attr_accessor :enable_ipv6
|
28899
|
+
alias_method :enable_ipv6?, :enable_ipv6
|
28900
|
+
|
28035
28901
|
# Name of the interface the BGP peer is associated with.
|
28036
28902
|
# Corresponds to the JSON property `interfaceName`
|
28037
28903
|
# @return [String]
|
@@ -28043,6 +28909,11 @@ module Google
|
|
28043
28909
|
# @return [String]
|
28044
28910
|
attr_accessor :ip_address
|
28045
28911
|
|
28912
|
+
# IPv6 address of the interface inside Google Cloud Platform.
|
28913
|
+
# Corresponds to the JSON property `ipv6NexthopAddress`
|
28914
|
+
# @return [String]
|
28915
|
+
attr_accessor :ipv6_nexthop_address
|
28916
|
+
|
28046
28917
|
# [Output Only] The resource that configures and manages this BGP peer. -
|
28047
28918
|
# MANAGED_BY_USER is the default value and can be managed by you or other users -
|
28048
28919
|
# MANAGED_BY_ATTACHMENT is a BGP peer that is configured and managed by Cloud
|
@@ -28075,6 +28946,11 @@ module Google
|
|
28075
28946
|
# @return [String]
|
28076
28947
|
attr_accessor :peer_ip_address
|
28077
28948
|
|
28949
|
+
# IPv6 address of the BGP interface outside Google Cloud Platform.
|
28950
|
+
# Corresponds to the JSON property `peerIpv6NexthopAddress`
|
28951
|
+
# @return [String]
|
28952
|
+
attr_accessor :peer_ipv6_nexthop_address
|
28953
|
+
|
28078
28954
|
# URI of the VM instance that is used as third-party router appliances such as
|
28079
28955
|
# Next Gen Firewalls, Virtual Routers, or Router Appliances. The VM instance
|
28080
28956
|
# must be located in zones contained in the same region as this Cloud Router.
|
@@ -28095,12 +28971,15 @@ module Google
|
|
28095
28971
|
@advertised_route_priority = args[:advertised_route_priority] if args.key?(:advertised_route_priority)
|
28096
28972
|
@bfd = args[:bfd] if args.key?(:bfd)
|
28097
28973
|
@enable = args[:enable] if args.key?(:enable)
|
28974
|
+
@enable_ipv6 = args[:enable_ipv6] if args.key?(:enable_ipv6)
|
28098
28975
|
@interface_name = args[:interface_name] if args.key?(:interface_name)
|
28099
28976
|
@ip_address = args[:ip_address] if args.key?(:ip_address)
|
28977
|
+
@ipv6_nexthop_address = args[:ipv6_nexthop_address] if args.key?(:ipv6_nexthop_address)
|
28100
28978
|
@management_type = args[:management_type] if args.key?(:management_type)
|
28101
28979
|
@name = args[:name] if args.key?(:name)
|
28102
28980
|
@peer_asn = args[:peer_asn] if args.key?(:peer_asn)
|
28103
28981
|
@peer_ip_address = args[:peer_ip_address] if args.key?(:peer_ip_address)
|
28982
|
+
@peer_ipv6_nexthop_address = args[:peer_ipv6_nexthop_address] if args.key?(:peer_ipv6_nexthop_address)
|
28104
28983
|
@router_appliance_instance = args[:router_appliance_instance] if args.key?(:router_appliance_instance)
|
28105
28984
|
end
|
28106
28985
|
end
|
@@ -28380,6 +29259,17 @@ module Google
|
|
28380
29259
|
# @return [Array<String>]
|
28381
29260
|
attr_accessor :drain_nat_ips
|
28382
29261
|
|
29262
|
+
# Enable Dynamic Port Allocation. If not specified, it is disabled by default.
|
29263
|
+
# If set to true, - Dynamic Port Allocation will be enabled on this NAT config. -
|
29264
|
+
# enableEndpointIndependentMapping cannot be set to true. - If minPorts is set,
|
29265
|
+
# minPortsPerVm must be set to a power of two greater than or equal to 32. If
|
29266
|
+
# minPortsPerVm is not set, a minimum of 32 ports will be allocated to a VM from
|
29267
|
+
# this NAT config.
|
29268
|
+
# Corresponds to the JSON property `enableDynamicPortAllocation`
|
29269
|
+
# @return [Boolean]
|
29270
|
+
attr_accessor :enable_dynamic_port_allocation
|
29271
|
+
alias_method :enable_dynamic_port_allocation?, :enable_dynamic_port_allocation
|
29272
|
+
|
28383
29273
|
#
|
28384
29274
|
# Corresponds to the JSON property `enableEndpointIndependentMapping`
|
28385
29275
|
# @return [Boolean]
|
@@ -28396,6 +29286,17 @@ module Google
|
|
28396
29286
|
# @return [Google::Apis::ComputeV1::RouterNatLogConfig]
|
28397
29287
|
attr_accessor :log_config
|
28398
29288
|
|
29289
|
+
# Maximum number of ports allocated to a VM from this NAT config when Dynamic
|
29290
|
+
# Port Allocation is enabled. If Dynamic Port Allocation is not enabled, this
|
29291
|
+
# field has no effect. If Dynamic Port Allocation is enabled, and this field is
|
29292
|
+
# set, it must be set to a power of two greater than minPortsPerVm, or 64 if
|
29293
|
+
# minPortsPerVm is not set. If Dynamic Port Allocation is enabled and this field
|
29294
|
+
# is not set, a maximum of 65536 ports will be allocated to a VM from this NAT
|
29295
|
+
# config.
|
29296
|
+
# Corresponds to the JSON property `maxPortsPerVm`
|
29297
|
+
# @return [Fixnum]
|
29298
|
+
attr_accessor :max_ports_per_vm
|
29299
|
+
|
28399
29300
|
# Minimum number of ports allocated to a VM from this NAT config. If not set, a
|
28400
29301
|
# default number of ports is allocated to a VM. This is rounded up to the
|
28401
29302
|
# nearest power of 2. For example, if the value of this field is 50, at least 64
|
@@ -28480,9 +29381,11 @@ module Google
|
|
28480
29381
|
# Update properties of this object
|
28481
29382
|
def update!(**args)
|
28482
29383
|
@drain_nat_ips = args[:drain_nat_ips] if args.key?(:drain_nat_ips)
|
29384
|
+
@enable_dynamic_port_allocation = args[:enable_dynamic_port_allocation] if args.key?(:enable_dynamic_port_allocation)
|
28483
29385
|
@enable_endpoint_independent_mapping = args[:enable_endpoint_independent_mapping] if args.key?(:enable_endpoint_independent_mapping)
|
28484
29386
|
@icmp_idle_timeout_sec = args[:icmp_idle_timeout_sec] if args.key?(:icmp_idle_timeout_sec)
|
28485
29387
|
@log_config = args[:log_config] if args.key?(:log_config)
|
29388
|
+
@max_ports_per_vm = args[:max_ports_per_vm] if args.key?(:max_ports_per_vm)
|
28486
29389
|
@min_ports_per_vm = args[:min_ports_per_vm] if args.key?(:min_ports_per_vm)
|
28487
29390
|
@name = args[:name] if args.key?(:name)
|
28488
29391
|
@nat_ip_allocate_option = args[:nat_ip_allocate_option] if args.key?(:nat_ip_allocate_option)
|
@@ -28547,7 +29450,8 @@ module Google
|
|
28547
29450
|
# "inIpRange(destination.ip, '1.1.0.0/16') || inIpRange(destination.ip, '2.2.0.
|
28548
29451
|
# 0/16')" "destination.ip == '1.1.0.1' || destination.ip == '8.8.8.8'" The
|
28549
29452
|
# following example is a valid match expression for private NAT: "nexthop.hub ==
|
28550
|
-
# '/projects/my-project/
|
29453
|
+
# 'https://networkconnectivity.googleapis.com/v1alpha1/projects/my-project/
|
29454
|
+
# global/hub/hub-1'"
|
28551
29455
|
# Corresponds to the JSON property `match`
|
28552
29456
|
# @return [String]
|
28553
29457
|
attr_accessor :match
|
@@ -28689,6 +29593,11 @@ module Google
|
|
28689
29593
|
# @return [Array<Google::Apis::ComputeV1::Route>]
|
28690
29594
|
attr_accessor :advertised_routes
|
28691
29595
|
|
29596
|
+
# Next free: 15
|
29597
|
+
# Corresponds to the JSON property `bfdStatus`
|
29598
|
+
# @return [Google::Apis::ComputeV1::BfdStatus]
|
29599
|
+
attr_accessor :bfd_status
|
29600
|
+
|
28692
29601
|
# IP address of the local BGP interface.
|
28693
29602
|
# Corresponds to the JSON property `ipAddress`
|
28694
29603
|
# @return [String]
|
@@ -28749,6 +29658,7 @@ module Google
|
|
28749
29658
|
# Update properties of this object
|
28750
29659
|
def update!(**args)
|
28751
29660
|
@advertised_routes = args[:advertised_routes] if args.key?(:advertised_routes)
|
29661
|
+
@bfd_status = args[:bfd_status] if args.key?(:bfd_status)
|
28752
29662
|
@ip_address = args[:ip_address] if args.key?(:ip_address)
|
28753
29663
|
@linked_vpn_tunnel = args[:linked_vpn_tunnel] if args.key?(:linked_vpn_tunnel)
|
28754
29664
|
@name = args[:name] if args.key?(:name)
|
@@ -29134,6 +30044,171 @@ module Google
|
|
29134
30044
|
end
|
29135
30045
|
end
|
29136
30046
|
|
30047
|
+
# DEPRECATED: Please use compute#savedDisk instead. An instance-attached disk
|
30048
|
+
# resource.
|
30049
|
+
class SavedAttachedDisk
|
30050
|
+
include Google::Apis::Core::Hashable
|
30051
|
+
|
30052
|
+
# Specifies whether the disk will be auto-deleted when the instance is deleted (
|
30053
|
+
# but not when the disk is detached from the instance).
|
30054
|
+
# Corresponds to the JSON property `autoDelete`
|
30055
|
+
# @return [Boolean]
|
30056
|
+
attr_accessor :auto_delete
|
30057
|
+
alias_method :auto_delete?, :auto_delete
|
30058
|
+
|
30059
|
+
# Indicates that this is a boot disk. The virtual machine will use the first
|
30060
|
+
# partition of the disk for its root filesystem.
|
30061
|
+
# Corresponds to the JSON property `boot`
|
30062
|
+
# @return [Boolean]
|
30063
|
+
attr_accessor :boot
|
30064
|
+
alias_method :boot?, :boot
|
30065
|
+
|
30066
|
+
# Specifies the name of the disk attached to the source instance.
|
30067
|
+
# Corresponds to the JSON property `deviceName`
|
30068
|
+
# @return [String]
|
30069
|
+
attr_accessor :device_name
|
30070
|
+
|
30071
|
+
# The encryption key for the disk.
|
30072
|
+
# Corresponds to the JSON property `diskEncryptionKey`
|
30073
|
+
# @return [Google::Apis::ComputeV1::CustomerEncryptionKey]
|
30074
|
+
attr_accessor :disk_encryption_key
|
30075
|
+
|
30076
|
+
# The size of the disk in base-2 GB.
|
30077
|
+
# Corresponds to the JSON property `diskSizeGb`
|
30078
|
+
# @return [Fixnum]
|
30079
|
+
attr_accessor :disk_size_gb
|
30080
|
+
|
30081
|
+
# [Output Only] URL of the disk type resource. For example: projects/project /
|
30082
|
+
# zones/zone/diskTypes/pd-standard or pd-ssd
|
30083
|
+
# Corresponds to the JSON property `diskType`
|
30084
|
+
# @return [String]
|
30085
|
+
attr_accessor :disk_type
|
30086
|
+
|
30087
|
+
# A list of features to enable on the guest operating system. Applicable only
|
30088
|
+
# for bootable images. Read Enabling guest operating system features to see a
|
30089
|
+
# list of available options.
|
30090
|
+
# Corresponds to the JSON property `guestOsFeatures`
|
30091
|
+
# @return [Array<Google::Apis::ComputeV1::GuestOsFeature>]
|
30092
|
+
attr_accessor :guest_os_features
|
30093
|
+
|
30094
|
+
# Specifies zero-based index of the disk that is attached to the source instance.
|
30095
|
+
# Corresponds to the JSON property `index`
|
30096
|
+
# @return [Fixnum]
|
30097
|
+
attr_accessor :index
|
30098
|
+
|
30099
|
+
# Specifies the disk interface to use for attaching this disk, which is either
|
30100
|
+
# SCSI or NVME.
|
30101
|
+
# Corresponds to the JSON property `interface`
|
30102
|
+
# @return [String]
|
30103
|
+
attr_accessor :interface
|
30104
|
+
|
30105
|
+
# [Output Only] Type of the resource. Always compute#attachedDisk for attached
|
30106
|
+
# disks.
|
30107
|
+
# Corresponds to the JSON property `kind`
|
30108
|
+
# @return [String]
|
30109
|
+
attr_accessor :kind
|
30110
|
+
|
30111
|
+
# [Output Only] Any valid publicly visible licenses.
|
30112
|
+
# Corresponds to the JSON property `licenses`
|
30113
|
+
# @return [Array<String>]
|
30114
|
+
attr_accessor :licenses
|
30115
|
+
|
30116
|
+
# The mode in which this disk is attached to the source instance, either
|
30117
|
+
# READ_WRITE or READ_ONLY.
|
30118
|
+
# Corresponds to the JSON property `mode`
|
30119
|
+
# @return [String]
|
30120
|
+
attr_accessor :mode
|
30121
|
+
|
30122
|
+
# Specifies a URL of the disk attached to the source instance.
|
30123
|
+
# Corresponds to the JSON property `source`
|
30124
|
+
# @return [String]
|
30125
|
+
attr_accessor :source
|
30126
|
+
|
30127
|
+
# [Output Only] A size of the storage used by the disk's snapshot by this
|
30128
|
+
# machine image.
|
30129
|
+
# Corresponds to the JSON property `storageBytes`
|
30130
|
+
# @return [Fixnum]
|
30131
|
+
attr_accessor :storage_bytes
|
30132
|
+
|
30133
|
+
# [Output Only] An indicator whether storageBytes is in a stable state or it is
|
30134
|
+
# being adjusted as a result of shared storage reallocation. This status can
|
30135
|
+
# either be UPDATING, meaning the size of the snapshot is being updated, or
|
30136
|
+
# UP_TO_DATE, meaning the size of the snapshot is up-to-date.
|
30137
|
+
# Corresponds to the JSON property `storageBytesStatus`
|
30138
|
+
# @return [String]
|
30139
|
+
attr_accessor :storage_bytes_status
|
30140
|
+
|
30141
|
+
# Specifies the type of the attached disk, either SCRATCH or PERSISTENT.
|
30142
|
+
# Corresponds to the JSON property `type`
|
30143
|
+
# @return [String]
|
30144
|
+
attr_accessor :type
|
30145
|
+
|
30146
|
+
def initialize(**args)
|
30147
|
+
update!(**args)
|
30148
|
+
end
|
30149
|
+
|
30150
|
+
# Update properties of this object
|
30151
|
+
def update!(**args)
|
30152
|
+
@auto_delete = args[:auto_delete] if args.key?(:auto_delete)
|
30153
|
+
@boot = args[:boot] if args.key?(:boot)
|
30154
|
+
@device_name = args[:device_name] if args.key?(:device_name)
|
30155
|
+
@disk_encryption_key = args[:disk_encryption_key] if args.key?(:disk_encryption_key)
|
30156
|
+
@disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb)
|
30157
|
+
@disk_type = args[:disk_type] if args.key?(:disk_type)
|
30158
|
+
@guest_os_features = args[:guest_os_features] if args.key?(:guest_os_features)
|
30159
|
+
@index = args[:index] if args.key?(:index)
|
30160
|
+
@interface = args[:interface] if args.key?(:interface)
|
30161
|
+
@kind = args[:kind] if args.key?(:kind)
|
30162
|
+
@licenses = args[:licenses] if args.key?(:licenses)
|
30163
|
+
@mode = args[:mode] if args.key?(:mode)
|
30164
|
+
@source = args[:source] if args.key?(:source)
|
30165
|
+
@storage_bytes = args[:storage_bytes] if args.key?(:storage_bytes)
|
30166
|
+
@storage_bytes_status = args[:storage_bytes_status] if args.key?(:storage_bytes_status)
|
30167
|
+
@type = args[:type] if args.key?(:type)
|
30168
|
+
end
|
30169
|
+
end
|
30170
|
+
|
30171
|
+
# An instance-attached disk resource.
|
30172
|
+
class SavedDisk
|
30173
|
+
include Google::Apis::Core::Hashable
|
30174
|
+
|
30175
|
+
# [Output Only] Type of the resource. Always compute#savedDisk for attached
|
30176
|
+
# disks.
|
30177
|
+
# Corresponds to the JSON property `kind`
|
30178
|
+
# @return [String]
|
30179
|
+
attr_accessor :kind
|
30180
|
+
|
30181
|
+
# Specifies a URL of the disk attached to the source instance.
|
30182
|
+
# Corresponds to the JSON property `sourceDisk`
|
30183
|
+
# @return [String]
|
30184
|
+
attr_accessor :source_disk
|
30185
|
+
|
30186
|
+
# [Output Only] Size of the individual disk snapshot used by this machine image.
|
30187
|
+
# Corresponds to the JSON property `storageBytes`
|
30188
|
+
# @return [Fixnum]
|
30189
|
+
attr_accessor :storage_bytes
|
30190
|
+
|
30191
|
+
# [Output Only] An indicator whether storageBytes is in a stable state or it is
|
30192
|
+
# being adjusted as a result of shared storage reallocation. This status can
|
30193
|
+
# either be UPDATING, meaning the size of the snapshot is being updated, or
|
30194
|
+
# UP_TO_DATE, meaning the size of the snapshot is up-to-date.
|
30195
|
+
# Corresponds to the JSON property `storageBytesStatus`
|
30196
|
+
# @return [String]
|
30197
|
+
attr_accessor :storage_bytes_status
|
30198
|
+
|
30199
|
+
def initialize(**args)
|
30200
|
+
update!(**args)
|
30201
|
+
end
|
30202
|
+
|
30203
|
+
# Update properties of this object
|
30204
|
+
def update!(**args)
|
30205
|
+
@kind = args[:kind] if args.key?(:kind)
|
30206
|
+
@source_disk = args[:source_disk] if args.key?(:source_disk)
|
30207
|
+
@storage_bytes = args[:storage_bytes] if args.key?(:storage_bytes)
|
30208
|
+
@storage_bytes_status = args[:storage_bytes_status] if args.key?(:storage_bytes_status)
|
30209
|
+
end
|
30210
|
+
end
|
30211
|
+
|
29137
30212
|
#
|
29138
30213
|
class ScalingScheduleStatus
|
29139
30214
|
include Google::Apis::Core::Hashable
|
@@ -29183,6 +30258,11 @@ module Google
|
|
29183
30258
|
attr_accessor :automatic_restart
|
29184
30259
|
alias_method :automatic_restart?, :automatic_restart
|
29185
30260
|
|
30261
|
+
# Specifies the termination action for the instance.
|
30262
|
+
# Corresponds to the JSON property `instanceTerminationAction`
|
30263
|
+
# @return [String]
|
30264
|
+
attr_accessor :instance_termination_action
|
30265
|
+
|
29186
30266
|
# An opaque location hint used to place the instance close to other resources.
|
29187
30267
|
# This field is for use by internal tools that use the public API.
|
29188
30268
|
# Corresponds to the JSON property `locationHint`
|
@@ -29218,6 +30298,11 @@ module Google
|
|
29218
30298
|
attr_accessor :preemptible
|
29219
30299
|
alias_method :preemptible?, :preemptible
|
29220
30300
|
|
30301
|
+
# Specifies the provisioning model of the instance.
|
30302
|
+
# Corresponds to the JSON property `provisioningModel`
|
30303
|
+
# @return [String]
|
30304
|
+
attr_accessor :provisioning_model
|
30305
|
+
|
29221
30306
|
def initialize(**args)
|
29222
30307
|
update!(**args)
|
29223
30308
|
end
|
@@ -29225,11 +30310,13 @@ module Google
|
|
29225
30310
|
# Update properties of this object
|
29226
30311
|
def update!(**args)
|
29227
30312
|
@automatic_restart = args[:automatic_restart] if args.key?(:automatic_restart)
|
30313
|
+
@instance_termination_action = args[:instance_termination_action] if args.key?(:instance_termination_action)
|
29228
30314
|
@location_hint = args[:location_hint] if args.key?(:location_hint)
|
29229
30315
|
@min_node_cpus = args[:min_node_cpus] if args.key?(:min_node_cpus)
|
29230
30316
|
@node_affinities = args[:node_affinities] if args.key?(:node_affinities)
|
29231
30317
|
@on_host_maintenance = args[:on_host_maintenance] if args.key?(:on_host_maintenance)
|
29232
30318
|
@preemptible = args[:preemptible] if args.key?(:preemptible)
|
30319
|
+
@provisioning_model = args[:provisioning_model] if args.key?(:provisioning_model)
|
29233
30320
|
end
|
29234
30321
|
end
|
29235
30322
|
|
@@ -29391,6 +30478,11 @@ module Google
|
|
29391
30478
|
# @return [String]
|
29392
30479
|
attr_accessor :name
|
29393
30480
|
|
30481
|
+
#
|
30482
|
+
# Corresponds to the JSON property `recaptchaOptionsConfig`
|
30483
|
+
# @return [Google::Apis::ComputeV1::SecurityPolicyRecaptchaOptionsConfig]
|
30484
|
+
attr_accessor :recaptcha_options_config
|
30485
|
+
|
29394
30486
|
# A list of rules that belong to this policy. There must always be a default
|
29395
30487
|
# rule (rule with priority 2147483647 and match "*"). If no rules are provided
|
29396
30488
|
# when creating a security policy, a default rule with action "allow" will be
|
@@ -29404,6 +30496,17 @@ module Google
|
|
29404
30496
|
# @return [String]
|
29405
30497
|
attr_accessor :self_link
|
29406
30498
|
|
30499
|
+
# The type indicates the intended use of the security policy. CLOUD_ARMOR -
|
30500
|
+
# Cloud Armor backend security policies can be configured to filter incoming
|
30501
|
+
# HTTP requests targeting backend services. They filter requests before they hit
|
30502
|
+
# the origin servers. CLOUD_ARMOR_EDGE - Cloud Armor edge security policies can
|
30503
|
+
# be configured to filter incoming HTTP requests targeting backend services (
|
30504
|
+
# including Cloud CDN-enabled) as well as backend buckets (Cloud Storage). They
|
30505
|
+
# filter requests before the request is served from Google's cache.
|
30506
|
+
# Corresponds to the JSON property `type`
|
30507
|
+
# @return [String]
|
30508
|
+
attr_accessor :type
|
30509
|
+
|
29407
30510
|
def initialize(**args)
|
29408
30511
|
update!(**args)
|
29409
30512
|
end
|
@@ -29418,8 +30521,10 @@ module Google
|
|
29418
30521
|
@id = args[:id] if args.key?(:id)
|
29419
30522
|
@kind = args[:kind] if args.key?(:kind)
|
29420
30523
|
@name = args[:name] if args.key?(:name)
|
30524
|
+
@recaptcha_options_config = args[:recaptcha_options_config] if args.key?(:recaptcha_options_config)
|
29421
30525
|
@rules = args[:rules] if args.key?(:rules)
|
29422
30526
|
@self_link = args[:self_link] if args.key?(:self_link)
|
30527
|
+
@type = args[:type] if args.key?(:type)
|
29423
30528
|
end
|
29424
30529
|
end
|
29425
30530
|
|
@@ -29606,6 +30711,29 @@ module Google
|
|
29606
30711
|
end
|
29607
30712
|
end
|
29608
30713
|
|
30714
|
+
#
|
30715
|
+
class SecurityPolicyRecaptchaOptionsConfig
|
30716
|
+
include Google::Apis::Core::Hashable
|
30717
|
+
|
30718
|
+
# An optional field to supply a reCAPTCHA site key to be used for all the rules
|
30719
|
+
# using the redirect action with the type of GOOGLE_RECAPTCHA under the security
|
30720
|
+
# policy. The specified site key needs to be created from the reCAPTCHA API. The
|
30721
|
+
# user is responsible for the validity of the specified site key. If not
|
30722
|
+
# specified, a Google-managed site key is used.
|
30723
|
+
# Corresponds to the JSON property `redirectSiteKey`
|
30724
|
+
# @return [String]
|
30725
|
+
attr_accessor :redirect_site_key
|
30726
|
+
|
30727
|
+
def initialize(**args)
|
30728
|
+
update!(**args)
|
30729
|
+
end
|
30730
|
+
|
30731
|
+
# Update properties of this object
|
30732
|
+
def update!(**args)
|
30733
|
+
@redirect_site_key = args[:redirect_site_key] if args.key?(:redirect_site_key)
|
30734
|
+
end
|
30735
|
+
end
|
30736
|
+
|
29609
30737
|
#
|
29610
30738
|
class SecurityPolicyReference
|
29611
30739
|
include Google::Apis::Core::Hashable
|
@@ -29630,9 +30758,17 @@ module Google
|
|
29630
30758
|
class SecurityPolicyRule
|
29631
30759
|
include Google::Apis::Core::Hashable
|
29632
30760
|
|
29633
|
-
# The Action to perform when the
|
29634
|
-
#
|
29635
|
-
# 404, and 502.
|
30761
|
+
# The Action to perform when the rule is matched. The following are the valid
|
30762
|
+
# actions: - allow: allow access to target. - deny(): deny access to target,
|
30763
|
+
# returns the HTTP response code specified (valid values are 403, 404, and 502).
|
30764
|
+
# - rate_based_ban: limit client traffic to the configured threshold and ban the
|
30765
|
+
# client if the traffic exceeds the threshold. Configure parameters for this
|
30766
|
+
# action in RateLimitOptions. Requires rate_limit_options to be set. - redirect:
|
30767
|
+
# redirect to a different target. This can either be an internal reCAPTCHA
|
30768
|
+
# redirect, or an external URL-based redirect via a 302 response. Parameters for
|
30769
|
+
# this action can be configured via redirectOptions. - throttle: limit client
|
30770
|
+
# traffic to the configured threshold. Configure parameters for this action in
|
30771
|
+
# rateLimitOptions. Requires rate_limit_options to be set for this.
|
29636
30772
|
# Corresponds to the JSON property `action`
|
29637
30773
|
# @return [String]
|
29638
30774
|
attr_accessor :action
|
@@ -29643,6 +30779,11 @@ module Google
|
|
29643
30779
|
# @return [String]
|
29644
30780
|
attr_accessor :description
|
29645
30781
|
|
30782
|
+
# Optional, additional actions that are performed on headers.
|
30783
|
+
# Corresponds to the JSON property `headerAction`
|
30784
|
+
# @return [Google::Apis::ComputeV1::SecurityPolicyRuleHttpHeaderAction]
|
30785
|
+
attr_accessor :header_action
|
30786
|
+
|
29646
30787
|
# [Output only] Type of the resource. Always compute#securityPolicyRule for
|
29647
30788
|
# security policy rules
|
29648
30789
|
# Corresponds to the JSON property `kind`
|
@@ -29669,6 +30810,18 @@ module Google
|
|
29669
30810
|
# @return [Fixnum]
|
29670
30811
|
attr_accessor :priority
|
29671
30812
|
|
30813
|
+
# Must be specified if the action is "rate_based_ban" or "throttle". Cannot be
|
30814
|
+
# specified for any other actions.
|
30815
|
+
# Corresponds to the JSON property `rateLimitOptions`
|
30816
|
+
# @return [Google::Apis::ComputeV1::SecurityPolicyRuleRateLimitOptions]
|
30817
|
+
attr_accessor :rate_limit_options
|
30818
|
+
|
30819
|
+
# Parameters defining the redirect action. Cannot be specified for any other
|
30820
|
+
# actions.
|
30821
|
+
# Corresponds to the JSON property `redirectOptions`
|
30822
|
+
# @return [Google::Apis::ComputeV1::SecurityPolicyRuleRedirectOptions]
|
30823
|
+
attr_accessor :redirect_options
|
30824
|
+
|
29672
30825
|
def initialize(**args)
|
29673
30826
|
update!(**args)
|
29674
30827
|
end
|
@@ -29677,10 +30830,57 @@ module Google
|
|
29677
30830
|
def update!(**args)
|
29678
30831
|
@action = args[:action] if args.key?(:action)
|
29679
30832
|
@description = args[:description] if args.key?(:description)
|
30833
|
+
@header_action = args[:header_action] if args.key?(:header_action)
|
29680
30834
|
@kind = args[:kind] if args.key?(:kind)
|
29681
30835
|
@match = args[:match] if args.key?(:match)
|
29682
30836
|
@preview = args[:preview] if args.key?(:preview)
|
29683
30837
|
@priority = args[:priority] if args.key?(:priority)
|
30838
|
+
@rate_limit_options = args[:rate_limit_options] if args.key?(:rate_limit_options)
|
30839
|
+
@redirect_options = args[:redirect_options] if args.key?(:redirect_options)
|
30840
|
+
end
|
30841
|
+
end
|
30842
|
+
|
30843
|
+
#
|
30844
|
+
class SecurityPolicyRuleHttpHeaderAction
|
30845
|
+
include Google::Apis::Core::Hashable
|
30846
|
+
|
30847
|
+
# The list of request headers to add or overwrite if they're already present.
|
30848
|
+
# Corresponds to the JSON property `requestHeadersToAdds`
|
30849
|
+
# @return [Array<Google::Apis::ComputeV1::SecurityPolicyRuleHttpHeaderActionHttpHeaderOption>]
|
30850
|
+
attr_accessor :request_headers_to_adds
|
30851
|
+
|
30852
|
+
def initialize(**args)
|
30853
|
+
update!(**args)
|
30854
|
+
end
|
30855
|
+
|
30856
|
+
# Update properties of this object
|
30857
|
+
def update!(**args)
|
30858
|
+
@request_headers_to_adds = args[:request_headers_to_adds] if args.key?(:request_headers_to_adds)
|
30859
|
+
end
|
30860
|
+
end
|
30861
|
+
|
30862
|
+
#
|
30863
|
+
class SecurityPolicyRuleHttpHeaderActionHttpHeaderOption
|
30864
|
+
include Google::Apis::Core::Hashable
|
30865
|
+
|
30866
|
+
# The name of the header to set.
|
30867
|
+
# Corresponds to the JSON property `headerName`
|
30868
|
+
# @return [String]
|
30869
|
+
attr_accessor :header_name
|
30870
|
+
|
30871
|
+
# The value to set the named header to.
|
30872
|
+
# Corresponds to the JSON property `headerValue`
|
30873
|
+
# @return [String]
|
30874
|
+
attr_accessor :header_value
|
30875
|
+
|
30876
|
+
def initialize(**args)
|
30877
|
+
update!(**args)
|
30878
|
+
end
|
30879
|
+
|
30880
|
+
# Update properties of this object
|
30881
|
+
def update!(**args)
|
30882
|
+
@header_name = args[:header_name] if args.key?(:header_name)
|
30883
|
+
@header_value = args[:header_value] if args.key?(:header_value)
|
29684
30884
|
end
|
29685
30885
|
end
|
29686
30886
|
|
@@ -29754,6 +30954,144 @@ module Google
|
|
29754
30954
|
end
|
29755
30955
|
end
|
29756
30956
|
|
30957
|
+
#
|
30958
|
+
class SecurityPolicyRuleRateLimitOptions
|
30959
|
+
include Google::Apis::Core::Hashable
|
30960
|
+
|
30961
|
+
# Can only be specified if the action for the rule is "rate_based_ban". If
|
30962
|
+
# specified, determines the time (in seconds) the traffic will continue to be
|
30963
|
+
# banned by the rate limit after the rate falls below the threshold.
|
30964
|
+
# Corresponds to the JSON property `banDurationSec`
|
30965
|
+
# @return [Fixnum]
|
30966
|
+
attr_accessor :ban_duration_sec
|
30967
|
+
|
30968
|
+
# Can only be specified if the action for the rule is "rate_based_ban". If
|
30969
|
+
# specified, the key will be banned for the configured 'ban_duration_sec' when
|
30970
|
+
# the number of requests that exceed the 'rate_limit_threshold' also exceed this
|
30971
|
+
# 'ban_threshold'.
|
30972
|
+
# Corresponds to the JSON property `banThreshold`
|
30973
|
+
# @return [Google::Apis::ComputeV1::SecurityPolicyRuleRateLimitOptionsThreshold]
|
30974
|
+
attr_accessor :ban_threshold
|
30975
|
+
|
30976
|
+
# Action to take for requests that are under the configured rate limit threshold.
|
30977
|
+
# Valid option is "allow" only.
|
30978
|
+
# Corresponds to the JSON property `conformAction`
|
30979
|
+
# @return [String]
|
30980
|
+
attr_accessor :conform_action
|
30981
|
+
|
30982
|
+
# Determines the key to enforce the rate_limit_threshold on. Possible values are:
|
30983
|
+
# - ALL: A single rate limit threshold is applied to all the requests matching
|
30984
|
+
# this rule. This is the default value if this field 'enforce_on_key' is not
|
30985
|
+
# configured. - IP: The source IP address of the request is the key. Each IP has
|
30986
|
+
# this limit enforced separately. - HTTP_HEADER: The value of the HTTP header
|
30987
|
+
# whose name is configured under "enforce_on_key_name". The key value is
|
30988
|
+
# truncated to the first 128 bytes of the header value. If no such header is
|
30989
|
+
# present in the request, the key type defaults to ALL. - XFF_IP: The first IP
|
30990
|
+
# address (i.e. the originating client IP address) specified in the list of IPs
|
30991
|
+
# under X-Forwarded-For HTTP header. If no such header is present or the value
|
30992
|
+
# is not a valid IP, the key type defaults to ALL. - HTTP_COOKIE: The value of
|
30993
|
+
# the HTTP cookie whose name is configured under "enforce_on_key_name". The key
|
30994
|
+
# value is truncated to the first 128 bytes of the cookie value. If no such
|
30995
|
+
# cookie is present in the request, the key type defaults to ALL.
|
30996
|
+
# Corresponds to the JSON property `enforceOnKey`
|
30997
|
+
# @return [String]
|
30998
|
+
attr_accessor :enforce_on_key
|
30999
|
+
|
31000
|
+
# Rate limit key name applicable only for the following key types: HTTP_HEADER --
|
31001
|
+
# Name of the HTTP header whose value is taken as the key value. HTTP_COOKIE --
|
31002
|
+
# Name of the HTTP cookie whose value is taken as the key value.
|
31003
|
+
# Corresponds to the JSON property `enforceOnKeyName`
|
31004
|
+
# @return [String]
|
31005
|
+
attr_accessor :enforce_on_key_name
|
31006
|
+
|
31007
|
+
# Action to take for requests that are above the configured rate limit threshold,
|
31008
|
+
# to either deny with a specified HTTP response code, or redirect to a
|
31009
|
+
# different endpoint. Valid options are "deny()" where valid values for status
|
31010
|
+
# are 403, 404, 429, and 502, and "redirect" where the redirect parameters come
|
31011
|
+
# from exceed_redirect_options below.
|
31012
|
+
# Corresponds to the JSON property `exceedAction`
|
31013
|
+
# @return [String]
|
31014
|
+
attr_accessor :exceed_action
|
31015
|
+
|
31016
|
+
# Parameters defining the redirect action that is used as the exceed action.
|
31017
|
+
# Cannot be specified if the exceed action is not redirect.
|
31018
|
+
# Corresponds to the JSON property `exceedRedirectOptions`
|
31019
|
+
# @return [Google::Apis::ComputeV1::SecurityPolicyRuleRedirectOptions]
|
31020
|
+
attr_accessor :exceed_redirect_options
|
31021
|
+
|
31022
|
+
# Threshold at which to begin ratelimiting.
|
31023
|
+
# Corresponds to the JSON property `rateLimitThreshold`
|
31024
|
+
# @return [Google::Apis::ComputeV1::SecurityPolicyRuleRateLimitOptionsThreshold]
|
31025
|
+
attr_accessor :rate_limit_threshold
|
31026
|
+
|
31027
|
+
def initialize(**args)
|
31028
|
+
update!(**args)
|
31029
|
+
end
|
31030
|
+
|
31031
|
+
# Update properties of this object
|
31032
|
+
def update!(**args)
|
31033
|
+
@ban_duration_sec = args[:ban_duration_sec] if args.key?(:ban_duration_sec)
|
31034
|
+
@ban_threshold = args[:ban_threshold] if args.key?(:ban_threshold)
|
31035
|
+
@conform_action = args[:conform_action] if args.key?(:conform_action)
|
31036
|
+
@enforce_on_key = args[:enforce_on_key] if args.key?(:enforce_on_key)
|
31037
|
+
@enforce_on_key_name = args[:enforce_on_key_name] if args.key?(:enforce_on_key_name)
|
31038
|
+
@exceed_action = args[:exceed_action] if args.key?(:exceed_action)
|
31039
|
+
@exceed_redirect_options = args[:exceed_redirect_options] if args.key?(:exceed_redirect_options)
|
31040
|
+
@rate_limit_threshold = args[:rate_limit_threshold] if args.key?(:rate_limit_threshold)
|
31041
|
+
end
|
31042
|
+
end
|
31043
|
+
|
31044
|
+
#
|
31045
|
+
class SecurityPolicyRuleRateLimitOptionsThreshold
|
31046
|
+
include Google::Apis::Core::Hashable
|
31047
|
+
|
31048
|
+
# Number of HTTP(S) requests for calculating the threshold.
|
31049
|
+
# Corresponds to the JSON property `count`
|
31050
|
+
# @return [Fixnum]
|
31051
|
+
attr_accessor :count
|
31052
|
+
|
31053
|
+
# Interval over which the threshold is computed.
|
31054
|
+
# Corresponds to the JSON property `intervalSec`
|
31055
|
+
# @return [Fixnum]
|
31056
|
+
attr_accessor :interval_sec
|
31057
|
+
|
31058
|
+
def initialize(**args)
|
31059
|
+
update!(**args)
|
31060
|
+
end
|
31061
|
+
|
31062
|
+
# Update properties of this object
|
31063
|
+
def update!(**args)
|
31064
|
+
@count = args[:count] if args.key?(:count)
|
31065
|
+
@interval_sec = args[:interval_sec] if args.key?(:interval_sec)
|
31066
|
+
end
|
31067
|
+
end
|
31068
|
+
|
31069
|
+
#
|
31070
|
+
class SecurityPolicyRuleRedirectOptions
|
31071
|
+
include Google::Apis::Core::Hashable
|
31072
|
+
|
31073
|
+
# Target for the redirect action. This is required if the type is EXTERNAL_302
|
31074
|
+
# and cannot be specified for GOOGLE_RECAPTCHA.
|
31075
|
+
# Corresponds to the JSON property `target`
|
31076
|
+
# @return [String]
|
31077
|
+
attr_accessor :target
|
31078
|
+
|
31079
|
+
# Type of the redirect action.
|
31080
|
+
# Corresponds to the JSON property `type`
|
31081
|
+
# @return [String]
|
31082
|
+
attr_accessor :type
|
31083
|
+
|
31084
|
+
def initialize(**args)
|
31085
|
+
update!(**args)
|
31086
|
+
end
|
31087
|
+
|
31088
|
+
# Update properties of this object
|
31089
|
+
def update!(**args)
|
31090
|
+
@target = args[:target] if args.key?(:target)
|
31091
|
+
@type = args[:type] if args.key?(:type)
|
31092
|
+
end
|
31093
|
+
end
|
31094
|
+
|
29757
31095
|
# The authentication and authorization settings for a BackendService.
|
29758
31096
|
class SecuritySettings
|
29759
31097
|
include Google::Apis::Core::Hashable
|
@@ -29931,6 +31269,13 @@ module Google
|
|
29931
31269
|
# @return [String]
|
29932
31270
|
attr_accessor :description
|
29933
31271
|
|
31272
|
+
# If specified, the domain name will be used during the integration between the
|
31273
|
+
# PSC connected endpoints and the Cloud DNS. For example, this is a valid domain
|
31274
|
+
# name: "p.mycompany.com.". Current max number of domain names supported is 1.
|
31275
|
+
# Corresponds to the JSON property `domainNames`
|
31276
|
+
# @return [Array<String>]
|
31277
|
+
attr_accessor :domain_names
|
31278
|
+
|
29934
31279
|
# If true, enable the proxy protocol which is for supplying client TCP/IP
|
29935
31280
|
# address data in TCP connections that traverse proxies on their way to
|
29936
31281
|
# destination servers.
|
@@ -30019,6 +31364,7 @@ module Google
|
|
30019
31364
|
@consumer_reject_lists = args[:consumer_reject_lists] if args.key?(:consumer_reject_lists)
|
30020
31365
|
@creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
|
30021
31366
|
@description = args[:description] if args.key?(:description)
|
31367
|
+
@domain_names = args[:domain_names] if args.key?(:domain_names)
|
30022
31368
|
@enable_proxy_protocol = args[:enable_proxy_protocol] if args.key?(:enable_proxy_protocol)
|
30023
31369
|
@fingerprint = args[:fingerprint] if args.key?(:fingerprint)
|
30024
31370
|
@id = args[:id] if args.key?(:id)
|
@@ -30421,6 +31767,52 @@ module Google
|
|
30421
31767
|
end
|
30422
31768
|
end
|
30423
31769
|
|
31770
|
+
# The share setting for reservations and sole tenancy node groups.
|
31771
|
+
class ShareSettings
|
31772
|
+
include Google::Apis::Core::Hashable
|
31773
|
+
|
31774
|
+
# A map of project id and project config. This is only valid when share_type's
|
31775
|
+
# value is SPECIFIC_PROJECTS.
|
31776
|
+
# Corresponds to the JSON property `projectMap`
|
31777
|
+
# @return [Hash<String,Google::Apis::ComputeV1::ShareSettingsProjectConfig>]
|
31778
|
+
attr_accessor :project_map
|
31779
|
+
|
31780
|
+
# Type of sharing for this shared-reservation
|
31781
|
+
# Corresponds to the JSON property `shareType`
|
31782
|
+
# @return [String]
|
31783
|
+
attr_accessor :share_type
|
31784
|
+
|
31785
|
+
def initialize(**args)
|
31786
|
+
update!(**args)
|
31787
|
+
end
|
31788
|
+
|
31789
|
+
# Update properties of this object
|
31790
|
+
def update!(**args)
|
31791
|
+
@project_map = args[:project_map] if args.key?(:project_map)
|
31792
|
+
@share_type = args[:share_type] if args.key?(:share_type)
|
31793
|
+
end
|
31794
|
+
end
|
31795
|
+
|
31796
|
+
# Config for each project in the share settings.
|
31797
|
+
class ShareSettingsProjectConfig
|
31798
|
+
include Google::Apis::Core::Hashable
|
31799
|
+
|
31800
|
+
# The project ID, should be same as the key of this project config in the parent
|
31801
|
+
# map.
|
31802
|
+
# Corresponds to the JSON property `projectId`
|
31803
|
+
# @return [String]
|
31804
|
+
attr_accessor :project_id
|
31805
|
+
|
31806
|
+
def initialize(**args)
|
31807
|
+
update!(**args)
|
31808
|
+
end
|
31809
|
+
|
31810
|
+
# Update properties of this object
|
31811
|
+
def update!(**args)
|
31812
|
+
@project_id = args[:project_id] if args.key?(:project_id)
|
31813
|
+
end
|
31814
|
+
end
|
31815
|
+
|
30424
31816
|
# A set of Shielded Instance options.
|
30425
31817
|
class ShieldedInstanceConfig
|
30426
31818
|
include Google::Apis::Core::Hashable
|
@@ -30886,6 +32278,35 @@ module Google
|
|
30886
32278
|
end
|
30887
32279
|
end
|
30888
32280
|
|
32281
|
+
#
|
32282
|
+
class SourceDiskEncryptionKey
|
32283
|
+
include Google::Apis::Core::Hashable
|
32284
|
+
|
32285
|
+
# The customer-supplied encryption key of the source disk. Required if the
|
32286
|
+
# source disk is protected by a customer-supplied encryption key.
|
32287
|
+
# Corresponds to the JSON property `diskEncryptionKey`
|
32288
|
+
# @return [Google::Apis::ComputeV1::CustomerEncryptionKey]
|
32289
|
+
attr_accessor :disk_encryption_key
|
32290
|
+
|
32291
|
+
# URL of the disk attached to the source instance. This can be a full or valid
|
32292
|
+
# partial URL. For example, the following are valid values: - https://www.
|
32293
|
+
# googleapis.com/compute/v1/projects/project/zones/zone /disks/disk - projects/
|
32294
|
+
# project/zones/zone/disks/disk - zones/zone/disks/disk
|
32295
|
+
# Corresponds to the JSON property `sourceDisk`
|
32296
|
+
# @return [String]
|
32297
|
+
attr_accessor :source_disk
|
32298
|
+
|
32299
|
+
def initialize(**args)
|
32300
|
+
update!(**args)
|
32301
|
+
end
|
32302
|
+
|
32303
|
+
# Update properties of this object
|
32304
|
+
def update!(**args)
|
32305
|
+
@disk_encryption_key = args[:disk_encryption_key] if args.key?(:disk_encryption_key)
|
32306
|
+
@source_disk = args[:source_disk] if args.key?(:source_disk)
|
32307
|
+
end
|
32308
|
+
end
|
32309
|
+
|
30889
32310
|
# A specification of the parameters to use when creating the instance template
|
30890
32311
|
# from a source instance.
|
30891
32312
|
class SourceInstanceParams
|
@@ -30909,6 +32330,116 @@ module Google
|
|
30909
32330
|
end
|
30910
32331
|
end
|
30911
32332
|
|
32333
|
+
# DEPRECATED: Please use compute#instanceProperties instead. New properties will
|
32334
|
+
# not be added to this field.
|
32335
|
+
class SourceInstanceProperties
|
32336
|
+
include Google::Apis::Core::Hashable
|
32337
|
+
|
32338
|
+
# Enables instances created based on this machine image to send packets with
|
32339
|
+
# source IP addresses other than their own and receive packets with destination
|
32340
|
+
# IP addresses other than their own. If these instances will be used as an IP
|
32341
|
+
# gateway or it will be set as the next-hop in a Route resource, specify true.
|
32342
|
+
# If unsure, leave this set to false. See the Enable IP forwarding documentation
|
32343
|
+
# for more information.
|
32344
|
+
# Corresponds to the JSON property `canIpForward`
|
32345
|
+
# @return [Boolean]
|
32346
|
+
attr_accessor :can_ip_forward
|
32347
|
+
alias_method :can_ip_forward?, :can_ip_forward
|
32348
|
+
|
32349
|
+
# Whether the instance created from this machine image should be protected
|
32350
|
+
# against deletion.
|
32351
|
+
# Corresponds to the JSON property `deletionProtection`
|
32352
|
+
# @return [Boolean]
|
32353
|
+
attr_accessor :deletion_protection
|
32354
|
+
alias_method :deletion_protection?, :deletion_protection
|
32355
|
+
|
32356
|
+
# An optional text description for the instances that are created from this
|
32357
|
+
# machine image.
|
32358
|
+
# Corresponds to the JSON property `description`
|
32359
|
+
# @return [String]
|
32360
|
+
attr_accessor :description
|
32361
|
+
|
32362
|
+
# An array of disks that are associated with the instances that are created from
|
32363
|
+
# this machine image.
|
32364
|
+
# Corresponds to the JSON property `disks`
|
32365
|
+
# @return [Array<Google::Apis::ComputeV1::SavedAttachedDisk>]
|
32366
|
+
attr_accessor :disks
|
32367
|
+
|
32368
|
+
# A list of guest accelerator cards' type and count to use for instances created
|
32369
|
+
# from this machine image.
|
32370
|
+
# Corresponds to the JSON property `guestAccelerators`
|
32371
|
+
# @return [Array<Google::Apis::ComputeV1::AcceleratorConfig>]
|
32372
|
+
attr_accessor :guest_accelerators
|
32373
|
+
|
32374
|
+
# Labels to apply to instances that are created from this machine image.
|
32375
|
+
# Corresponds to the JSON property `labels`
|
32376
|
+
# @return [Hash<String,String>]
|
32377
|
+
attr_accessor :labels
|
32378
|
+
|
32379
|
+
# The machine type to use for instances that are created from this machine image.
|
32380
|
+
# Corresponds to the JSON property `machineType`
|
32381
|
+
# @return [String]
|
32382
|
+
attr_accessor :machine_type
|
32383
|
+
|
32384
|
+
# A metadata key/value entry.
|
32385
|
+
# Corresponds to the JSON property `metadata`
|
32386
|
+
# @return [Google::Apis::ComputeV1::Metadata]
|
32387
|
+
attr_accessor :metadata
|
32388
|
+
|
32389
|
+
# Minimum cpu/platform to be used by instances created from this machine image.
|
32390
|
+
# The instance may be scheduled on the specified or newer cpu/platform.
|
32391
|
+
# Applicable values are the friendly names of CPU platforms, such as
|
32392
|
+
# minCpuPlatform: "Intel Haswell" or minCpuPlatform: "Intel Sandy Bridge". For
|
32393
|
+
# more information, read Specifying a Minimum CPU Platform.
|
32394
|
+
# Corresponds to the JSON property `minCpuPlatform`
|
32395
|
+
# @return [String]
|
32396
|
+
attr_accessor :min_cpu_platform
|
32397
|
+
|
32398
|
+
# An array of network access configurations for this interface.
|
32399
|
+
# Corresponds to the JSON property `networkInterfaces`
|
32400
|
+
# @return [Array<Google::Apis::ComputeV1::NetworkInterface>]
|
32401
|
+
attr_accessor :network_interfaces
|
32402
|
+
|
32403
|
+
# Sets the scheduling options for an Instance. NextID: 21
|
32404
|
+
# Corresponds to the JSON property `scheduling`
|
32405
|
+
# @return [Google::Apis::ComputeV1::Scheduling]
|
32406
|
+
attr_accessor :scheduling
|
32407
|
+
|
32408
|
+
# A list of service accounts with specified scopes. Access tokens for these
|
32409
|
+
# service accounts are available to the instances that are created from this
|
32410
|
+
# machine image. Use metadata queries to obtain the access tokens for these
|
32411
|
+
# instances.
|
32412
|
+
# Corresponds to the JSON property `serviceAccounts`
|
32413
|
+
# @return [Array<Google::Apis::ComputeV1::ServiceAccount>]
|
32414
|
+
attr_accessor :service_accounts
|
32415
|
+
|
32416
|
+
# A set of instance tags.
|
32417
|
+
# Corresponds to the JSON property `tags`
|
32418
|
+
# @return [Google::Apis::ComputeV1::Tags]
|
32419
|
+
attr_accessor :tags
|
32420
|
+
|
32421
|
+
def initialize(**args)
|
32422
|
+
update!(**args)
|
32423
|
+
end
|
32424
|
+
|
32425
|
+
# Update properties of this object
|
32426
|
+
def update!(**args)
|
32427
|
+
@can_ip_forward = args[:can_ip_forward] if args.key?(:can_ip_forward)
|
32428
|
+
@deletion_protection = args[:deletion_protection] if args.key?(:deletion_protection)
|
32429
|
+
@description = args[:description] if args.key?(:description)
|
32430
|
+
@disks = args[:disks] if args.key?(:disks)
|
32431
|
+
@guest_accelerators = args[:guest_accelerators] if args.key?(:guest_accelerators)
|
32432
|
+
@labels = args[:labels] if args.key?(:labels)
|
32433
|
+
@machine_type = args[:machine_type] if args.key?(:machine_type)
|
32434
|
+
@metadata = args[:metadata] if args.key?(:metadata)
|
32435
|
+
@min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform)
|
32436
|
+
@network_interfaces = args[:network_interfaces] if args.key?(:network_interfaces)
|
32437
|
+
@scheduling = args[:scheduling] if args.key?(:scheduling)
|
32438
|
+
@service_accounts = args[:service_accounts] if args.key?(:service_accounts)
|
32439
|
+
@tags = args[:tags] if args.key?(:tags)
|
32440
|
+
end
|
32441
|
+
end
|
32442
|
+
|
30912
32443
|
# Represents an SSL Certificate resource. Google Compute Engine has two SSL
|
30913
32444
|
# Certificate resources: * [Global](/compute/docs/reference/rest/v1/
|
30914
32445
|
# sslCertificates) * [Regional](/compute/docs/reference/rest/v1/
|
@@ -31837,8 +33368,9 @@ module Google
|
|
31837
33368
|
|
31838
33369
|
# Whether to enable flow logging for this subnetwork. If this field is not
|
31839
33370
|
# explicitly set, it will not appear in get listings. If not set the default
|
31840
|
-
# behavior is
|
31841
|
-
#
|
33371
|
+
# behavior is determined by the org policy, if there is no org policy specified,
|
33372
|
+
# then it will default to disabled. This field isn't supported with the purpose
|
33373
|
+
# field set to INTERNAL_HTTPS_LOAD_BALANCER.
|
31842
33374
|
# Corresponds to the JSON property `enableFlowLogs`
|
31843
33375
|
# @return [Boolean]
|
31844
33376
|
attr_accessor :enable_flow_logs
|
@@ -31892,7 +33424,7 @@ module Google
|
|
31892
33424
|
attr_accessor :ipv6_access_type
|
31893
33425
|
|
31894
33426
|
# [Output Only] The range of internal IPv6 addresses that are owned by this
|
31895
|
-
# subnetwork.
|
33427
|
+
# subnetwork. Note this will be for private google access only eventually.
|
31896
33428
|
# Corresponds to the JSON property `ipv6CidrRange`
|
31897
33429
|
# @return [String]
|
31898
33430
|
attr_accessor :ipv6_cidr_range
|
@@ -32285,7 +33817,8 @@ module Google
|
|
32285
33817
|
|
32286
33818
|
# Whether to enable flow logging for this subnetwork. If this field is not
|
32287
33819
|
# explicitly set, it will not appear in get listings. If not set the default
|
32288
|
-
# behavior is
|
33820
|
+
# behavior is determined by the org policy, if there is no org policy specified,
|
33821
|
+
# then it will default to disabled.
|
32289
33822
|
# Corresponds to the JSON property `enable`
|
32290
33823
|
# @return [Boolean]
|
32291
33824
|
attr_accessor :enable
|
@@ -32300,8 +33833,8 @@ module Google
|
|
32300
33833
|
# Can only be specified if VPC flow logging for this subnetwork is enabled. The
|
32301
33834
|
# value of the field must be in [0, 1]. Set the sampling rate of VPC flow logs
|
32302
33835
|
# within the subnetwork where 1.0 means all collected logs are reported and 0.0
|
32303
|
-
# means no logs are reported. Default is 0.5
|
32304
|
-
# logs are reported.
|
33836
|
+
# means no logs are reported. Default is 0.5 unless otherwise specified by the
|
33837
|
+
# org policy, which means half of all collected logs are reported.
|
32305
33838
|
# Corresponds to the JSON property `flowSampling`
|
32306
33839
|
# @return [Float]
|
32307
33840
|
attr_accessor :flow_sampling
|
@@ -35683,7 +37216,7 @@ module Google
|
|
35683
37216
|
class TestFailure
|
35684
37217
|
include Google::Apis::Core::Hashable
|
35685
37218
|
|
35686
|
-
# The actual output URL evaluated by load balancer containing the scheme, host,
|
37219
|
+
# The actual output URL evaluated by a load balancer containing the scheme, host,
|
35687
37220
|
# path and query parameters.
|
35688
37221
|
# Corresponds to the JSON property `actualOutputUrl`
|
35689
37222
|
# @return [String]
|
@@ -35700,8 +37233,8 @@ module Google
|
|
35700
37233
|
# @return [String]
|
35701
37234
|
attr_accessor :actual_service
|
35702
37235
|
|
35703
|
-
# The expected output URL evaluated by load balancer containing the scheme,
|
35704
|
-
# path and query parameters.
|
37236
|
+
# The expected output URL evaluated by a load balancer containing the scheme,
|
37237
|
+
# host, path and query parameters.
|
35705
37238
|
# Corresponds to the JSON property `expectedOutputUrl`
|
35706
37239
|
# @return [String]
|
35707
37240
|
attr_accessor :expected_output_url
|
@@ -35815,17 +37348,17 @@ module Google
|
|
35815
37348
|
end
|
35816
37349
|
end
|
35817
37350
|
|
35818
|
-
# Represents a URL Map resource.
|
35819
|
-
#
|
35820
|
-
#
|
35821
|
-
#
|
35822
|
-
#
|
35823
|
-
#
|
35824
|
-
#
|
37351
|
+
# Represents a URL Map resource. Compute Engine has two URL Map resources: * [
|
37352
|
+
# Global](/compute/docs/reference/rest/v1/urlMaps) * [Regional](/compute/docs/
|
37353
|
+
# reference/rest/v1/regionUrlMaps) A URL map resource is a component of certain
|
37354
|
+
# types of cloud load balancers and Traffic Director: * urlMaps are used by
|
37355
|
+
# external HTTP(S) load balancers and Traffic Director. * regionUrlMaps are used
|
37356
|
+
# by internal HTTP(S) load balancers. For a list of supported URL map features
|
37357
|
+
# by the load balancer type, see the Load balancing features: Routing and
|
35825
37358
|
# traffic management table. For a list of supported URL map features for Traffic
|
35826
37359
|
# Director, see the Traffic Director features: Routing and traffic management
|
35827
|
-
# table. This resource defines mappings from
|
35828
|
-
#
|
37360
|
+
# table. This resource defines mappings from hostnames and URL paths to either a
|
37361
|
+
# backend service or a backend bucket. To use the global urlMaps resource, the
|
35829
37362
|
# backend service must have a loadBalancingScheme of either EXTERNAL or
|
35830
37363
|
# INTERNAL_SELF_MANAGED. To use the regionUrlMaps resource, the backend service
|
35831
37364
|
# must have a loadBalancingScheme of INTERNAL_MANAGED. For more information,
|
@@ -35839,28 +37372,28 @@ module Google
|
|
35839
37372
|
attr_accessor :creation_timestamp
|
35840
37373
|
|
35841
37374
|
# defaultRouteAction takes effect when none of the hostRules match. The load
|
35842
|
-
# balancer performs advanced routing actions
|
35843
|
-
# transformations,
|
35844
|
-
#
|
35845
|
-
#
|
35846
|
-
#
|
37375
|
+
# balancer performs advanced routing actions, such as URL rewrites and header
|
37376
|
+
# transformations, before forwarding the request to the selected backend. If
|
37377
|
+
# defaultRouteAction specifies any weightedBackendServices, defaultService must
|
37378
|
+
# not be set. Conversely if defaultService is set, defaultRouteAction cannot
|
37379
|
+
# contain any weightedBackendServices. Only one of defaultRouteAction or
|
35847
37380
|
# defaultUrlRedirect must be set. UrlMaps for external HTTP(S) load balancers
|
35848
37381
|
# support only the urlRewrite action within defaultRouteAction.
|
35849
|
-
# defaultRouteAction has no effect when the URL map is bound to target gRPC
|
35850
|
-
# proxy that has validateForProxyless field set to true.
|
37382
|
+
# defaultRouteAction has no effect when the URL map is bound to a target gRPC
|
37383
|
+
# proxy that has the validateForProxyless field set to true.
|
35851
37384
|
# Corresponds to the JSON property `defaultRouteAction`
|
35852
37385
|
# @return [Google::Apis::ComputeV1::HttpRouteAction]
|
35853
37386
|
attr_accessor :default_route_action
|
35854
37387
|
|
35855
37388
|
# The full or partial URL of the defaultService resource to which traffic is
|
35856
|
-
# directed if none of the hostRules match. If defaultRouteAction is
|
35857
|
-
# specified, advanced routing actions
|
35858
|
-
#
|
37389
|
+
# directed if none of the hostRules match. If defaultRouteAction is also
|
37390
|
+
# specified, advanced routing actions, such as URL rewrites, take effect before
|
37391
|
+
# sending the request to the backend. However, if defaultService is specified,
|
35859
37392
|
# defaultRouteAction cannot contain any weightedBackendServices. Conversely, if
|
35860
37393
|
# routeAction specifies any weightedBackendServices, service must not be
|
35861
|
-
# specified. Only one of defaultService, defaultUrlRedirect or
|
37394
|
+
# specified. Only one of defaultService, defaultUrlRedirect , or
|
35862
37395
|
# defaultRouteAction.weightedBackendService must be set. defaultService has no
|
35863
|
-
# effect when the URL map is bound to target gRPC proxy that has
|
37396
|
+
# effect when the URL map is bound to a target gRPC proxy that has the
|
35864
37397
|
# validateForProxyless field set to true.
|
35865
37398
|
# Corresponds to the JSON property `defaultService`
|
35866
37399
|
# @return [String]
|
@@ -35878,11 +37411,10 @@ module Google
|
|
35878
37411
|
attr_accessor :description
|
35879
37412
|
|
35880
37413
|
# Fingerprint of this resource. A hash of the contents stored in this object.
|
35881
|
-
# This field is used in optimistic locking. This field
|
35882
|
-
#
|
35883
|
-
#
|
35884
|
-
#
|
35885
|
-
# retrieve a UrlMap.
|
37414
|
+
# This field is used in optimistic locking. This field is ignored when inserting
|
37415
|
+
# a UrlMap. An up-to-date fingerprint must be provided in order to update the
|
37416
|
+
# UrlMap, otherwise the request will fail with error 412 conditionNotMet. To see
|
37417
|
+
# the latest fingerprint, make a get() request to retrieve a UrlMap.
|
35886
37418
|
# Corresponds to the JSON property `fingerprint`
|
35887
37419
|
# NOTE: Values are automatically base64 encoded/decoded in the client library.
|
35888
37420
|
# @return [String]
|
@@ -35894,7 +37426,7 @@ module Google
|
|
35894
37426
|
# @return [Google::Apis::ComputeV1::HttpHeaderAction]
|
35895
37427
|
attr_accessor :header_action
|
35896
37428
|
|
35897
|
-
# The list of
|
37429
|
+
# The list of host rules to use against the URL.
|
35898
37430
|
# Corresponds to the JSON property `hostRules`
|
35899
37431
|
# @return [Array<Google::Apis::ComputeV1::HostRule>]
|
35900
37432
|
attr_accessor :host_rules
|
@@ -35937,10 +37469,10 @@ module Google
|
|
35937
37469
|
# @return [String]
|
35938
37470
|
attr_accessor :self_link
|
35939
37471
|
|
35940
|
-
# The list of expected URL mapping tests. Request to update
|
35941
|
-
#
|
35942
|
-
#
|
35943
|
-
#
|
37472
|
+
# The list of expected URL mapping tests. Request to update the UrlMap succeeds
|
37473
|
+
# only if all test cases pass. You can specify a maximum of 100 tests per UrlMap.
|
37474
|
+
# Not supported when the URL map is bound to a target gRPC proxy that has
|
37475
|
+
# validateForProxyless field set to true.
|
35944
37476
|
# Corresponds to the JSON property `tests`
|
35945
37477
|
# @return [Array<Google::Apis::ComputeV1::UrlMapTest>]
|
35946
37478
|
attr_accessor :tests
|
@@ -36114,18 +37646,18 @@ module Google
|
|
36114
37646
|
# @return [String]
|
36115
37647
|
attr_accessor :description
|
36116
37648
|
|
36117
|
-
# The expected output URL evaluated by load balancer containing the scheme,
|
36118
|
-
# path and query parameters. For rules that forward requests to backends,
|
36119
|
-
# test passes only when expectedOutputUrl matches the request forwarded by
|
36120
|
-
# balancer to backends. For rules with urlRewrite, the test verifies
|
36121
|
-
# forwarded request matches hostRewrite and pathPrefixRewrite in the
|
36122
|
-
# action. When service is specified, expectedOutputUrl`s scheme is
|
36123
|
-
# rules with urlRedirect, the test passes only if expectedOutputUrl
|
36124
|
-
# URL in the load balancer's redirect response. If urlRedirect
|
36125
|
-
# https_redirect, the test passes only if the scheme in
|
36126
|
-
# also set to
|
36127
|
-
# if expectedOutputUrl does not contain any query
|
36128
|
-
# is optional when service is specified.
|
37649
|
+
# The expected output URL evaluated by the load balancer containing the scheme,
|
37650
|
+
# host, path and query parameters. For rules that forward requests to backends,
|
37651
|
+
# the test passes only when expectedOutputUrl matches the request forwarded by
|
37652
|
+
# the load balancer to backends. For rules with urlRewrite, the test verifies
|
37653
|
+
# that the forwarded request matches hostRewrite and pathPrefixRewrite in the
|
37654
|
+
# urlRewrite action. When service is specified, expectedOutputUrl`s scheme is
|
37655
|
+
# ignored. For rules with urlRedirect, the test passes only if expectedOutputUrl
|
37656
|
+
# matches the URL in the load balancer's redirect response. If urlRedirect
|
37657
|
+
# specifies https_redirect, the test passes only if the scheme in
|
37658
|
+
# expectedOutputUrl is also set to HTTPS. If urlRedirect specifies strip_query,
|
37659
|
+
# the test passes only if expectedOutputUrl does not contain any query
|
37660
|
+
# parameters. expectedOutputUrl is optional when service is specified.
|
36129
37661
|
# Corresponds to the JSON property `expectedOutputUrl`
|
36130
37662
|
# @return [String]
|
36131
37663
|
attr_accessor :expected_output_url
|
@@ -36156,7 +37688,8 @@ module Google
|
|
36156
37688
|
attr_accessor :path
|
36157
37689
|
|
36158
37690
|
# Expected BackendService or BackendBucket resource the given URL should be
|
36159
|
-
# mapped to. service cannot be set if expectedRedirectResponseCode is
|
37691
|
+
# mapped to. The service field cannot be set if expectedRedirectResponseCode is
|
37692
|
+
# set.
|
36160
37693
|
# Corresponds to the JSON property `service`
|
36161
37694
|
# @return [String]
|
36162
37695
|
attr_accessor :service
|
@@ -36461,17 +37994,17 @@ module Google
|
|
36461
37994
|
class ValidateUrlMapsRequest
|
36462
37995
|
include Google::Apis::Core::Hashable
|
36463
37996
|
|
36464
|
-
# Represents a URL Map resource.
|
36465
|
-
#
|
36466
|
-
#
|
36467
|
-
#
|
36468
|
-
#
|
36469
|
-
#
|
36470
|
-
#
|
37997
|
+
# Represents a URL Map resource. Compute Engine has two URL Map resources: * [
|
37998
|
+
# Global](/compute/docs/reference/rest/v1/urlMaps) * [Regional](/compute/docs/
|
37999
|
+
# reference/rest/v1/regionUrlMaps) A URL map resource is a component of certain
|
38000
|
+
# types of cloud load balancers and Traffic Director: * urlMaps are used by
|
38001
|
+
# external HTTP(S) load balancers and Traffic Director. * regionUrlMaps are used
|
38002
|
+
# by internal HTTP(S) load balancers. For a list of supported URL map features
|
38003
|
+
# by the load balancer type, see the Load balancing features: Routing and
|
36471
38004
|
# traffic management table. For a list of supported URL map features for Traffic
|
36472
38005
|
# Director, see the Traffic Director features: Routing and traffic management
|
36473
|
-
# table. This resource defines mappings from
|
36474
|
-
#
|
38006
|
+
# table. This resource defines mappings from hostnames and URL paths to either a
|
38007
|
+
# backend service or a backend bucket. To use the global urlMaps resource, the
|
36475
38008
|
# backend service must have a loadBalancingScheme of either EXTERNAL or
|
36476
38009
|
# INTERNAL_SELF_MANAGED. To use the regionUrlMaps resource, the backend service
|
36477
38010
|
# must have a loadBalancingScheme of INTERNAL_MANAGED. For more information,
|
@@ -36514,16 +38047,16 @@ module Google
|
|
36514
38047
|
class UrlRewrite
|
36515
38048
|
include Google::Apis::Core::Hashable
|
36516
38049
|
|
36517
|
-
#
|
36518
|
-
# header is replaced with contents of hostRewrite. The value must be
|
36519
|
-
#
|
38050
|
+
# Before forwarding the request to the selected service, the request's host
|
38051
|
+
# header is replaced with contents of hostRewrite. The value must be from 1 to
|
38052
|
+
# 255 characters.
|
36520
38053
|
# Corresponds to the JSON property `hostRewrite`
|
36521
38054
|
# @return [String]
|
36522
38055
|
attr_accessor :host_rewrite
|
36523
38056
|
|
36524
|
-
#
|
38057
|
+
# Before forwarding the request to the selected backend service, the matching
|
36525
38058
|
# portion of the request's path is replaced by pathPrefixRewrite. The value must
|
36526
|
-
# be
|
38059
|
+
# be from 1 to 1024 characters.
|
36527
38060
|
# Corresponds to the JSON property `pathPrefixRewrite`
|
36528
38061
|
# @return [String]
|
36529
38062
|
attr_accessor :path_prefix_rewrite
|
@@ -37033,6 +38566,12 @@ module Google
|
|
37033
38566
|
# @return [String]
|
37034
38567
|
attr_accessor :self_link
|
37035
38568
|
|
38569
|
+
# The stack type for this VPN gateway to identify the IP protocols that are
|
38570
|
+
# enabled. If not specified, IPV4_ONLY will be used.
|
38571
|
+
# Corresponds to the JSON property `stackType`
|
38572
|
+
# @return [String]
|
38573
|
+
attr_accessor :stack_type
|
38574
|
+
|
37036
38575
|
# The list of VPN interfaces associated with this VPN gateway.
|
37037
38576
|
# Corresponds to the JSON property `vpnInterfaces`
|
37038
38577
|
# @return [Array<Google::Apis::ComputeV1::VpnGatewayVpnGatewayInterface>]
|
@@ -37054,6 +38593,7 @@ module Google
|
|
37054
38593
|
@network = args[:network] if args.key?(:network)
|
37055
38594
|
@region = args[:region] if args.key?(:region)
|
37056
38595
|
@self_link = args[:self_link] if args.key?(:self_link)
|
38596
|
+
@stack_type = args[:stack_type] if args.key?(:stack_type)
|
37057
38597
|
@vpn_interfaces = args[:vpn_interfaces] if args.key?(:vpn_interfaces)
|
37058
38598
|
end
|
37059
38599
|
end
|
@@ -38156,14 +39696,13 @@ module Google
|
|
38156
39696
|
|
38157
39697
|
# In contrast to a single BackendService in HttpRouteAction to which all
|
38158
39698
|
# matching traffic is directed to, WeightedBackendService allows traffic to be
|
38159
|
-
# split across multiple
|
38160
|
-
#
|
38161
|
-
# WeightedBackendService
|
39699
|
+
# split across multiple backend services. The volume of traffic for each backend
|
39700
|
+
# service is proportional to the weight specified in each WeightedBackendService
|
38162
39701
|
class WeightedBackendService
|
38163
39702
|
include Google::Apis::Core::Hashable
|
38164
39703
|
|
38165
39704
|
# The full or partial URL to the default BackendService resource. Before
|
38166
|
-
# forwarding the request to backendService, the
|
39705
|
+
# forwarding the request to backendService, the load balancer applies any
|
38167
39706
|
# relevant headerActions specified as part of this backendServiceWeight.
|
38168
39707
|
# Corresponds to the JSON property `backendService`
|
38169
39708
|
# @return [String]
|
@@ -38175,12 +39714,12 @@ module Google
|
|
38175
39714
|
# @return [Google::Apis::ComputeV1::HttpHeaderAction]
|
38176
39715
|
attr_accessor :header_action
|
38177
39716
|
|
38178
|
-
# Specifies the fraction of traffic sent to
|
38179
|
-
# (sum of all weightedBackendService weights in routeAction) . The
|
38180
|
-
# a backend service is determined only for new traffic. Once a user'
|
38181
|
-
# has been directed to a
|
38182
|
-
# same
|
38183
|
-
# policy. The value must be
|
39717
|
+
# Specifies the fraction of traffic sent to a backend service, computed as
|
39718
|
+
# weight / (sum of all weightedBackendService weights in routeAction) . The
|
39719
|
+
# selection of a backend service is determined only for new traffic. Once a user'
|
39720
|
+
# s request has been directed to a backend service, subsequent requests are sent
|
39721
|
+
# to the same backend service as determined by the backend service's session
|
39722
|
+
# affinity policy. The value must be from 0 to 1000.
|
38184
39723
|
# Corresponds to the JSON property `weight`
|
38185
39724
|
# @return [Fixnum]
|
38186
39725
|
attr_accessor :weight
|
@@ -38590,31 +40129,31 @@ module Google
|
|
38590
40129
|
|
38591
40130
|
# An Identity and Access Management (IAM) policy, which specifies access
|
38592
40131
|
# controls for Google Cloud resources. A `Policy` is a collection of `bindings`.
|
38593
|
-
# A `binding` binds one or more `members
|
38594
|
-
# user accounts, service accounts, Google groups, and domains (
|
38595
|
-
# A `role` is a named list of permissions; each `role` can be
|
38596
|
-
# role or a user-created custom role. For some types of Google
|
38597
|
-
# a `binding` can also specify a `condition`, which is a
|
38598
|
-
# allows access to a resource only if the expression
|
38599
|
-
# condition can add constraints based on attributes of
|
38600
|
-
# or both. To learn which resources support
|
38601
|
-
# see the [IAM documentation](https://cloud.
|
38602
|
-
# resource-policies). **JSON example:** ` "
|
38603
|
-
# resourcemanager.organizationAdmin", "members": [
|
38604
|
-
# group:admins@example.com", "domain:google.com", "
|
38605
|
-
# appspot.gserviceaccount.com" ] `, ` "role": "
|
38606
|
-
# organizationViewer", "members": [ "user:eve@example.com"
|
38607
|
-
# title": "expirable access", "description": "Does not grant
|
38608
|
-
# 2020", "expression": "request.time < timestamp('2020-10-01T00:
|
38609
|
-
# ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
|
38610
|
-
# members: - user:mike@example.com - group:admins@example.com -
|
38611
|
-
# com - serviceAccount:my-project-id@appspot.gserviceaccount.com
|
38612
|
-
# resourcemanager.organizationAdmin - members: - user:eve@example.
|
38613
|
-
# roles/resourcemanager.organizationViewer condition: title: expirable
|
38614
|
-
# description: Does not grant access after Sep 2020 expression: request.
|
38615
|
-
# timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
|
38616
|
-
# description of IAM and its features, see the [IAM documentation](https://
|
38617
|
-
# google.com/iam/docs/).
|
40132
|
+
# A `binding` binds one or more `members`, or principals, to a single `role`.
|
40133
|
+
# Principals can be user accounts, service accounts, Google groups, and domains (
|
40134
|
+
# such as G Suite). A `role` is a named list of permissions; each `role` can be
|
40135
|
+
# an IAM predefined role or a user-created custom role. For some types of Google
|
40136
|
+
# Cloud resources, a `binding` can also specify a `condition`, which is a
|
40137
|
+
# logical expression that allows access to a resource only if the expression
|
40138
|
+
# evaluates to `true`. A condition can add constraints based on attributes of
|
40139
|
+
# the request, the resource, or both. To learn which resources support
|
40140
|
+
# conditions in their IAM policies, see the [IAM documentation](https://cloud.
|
40141
|
+
# google.com/iam/help/conditions/resource-policies). **JSON example:** ` "
|
40142
|
+
# bindings": [ ` "role": "roles/resourcemanager.organizationAdmin", "members": [
|
40143
|
+
# "user:mike@example.com", "group:admins@example.com", "domain:google.com", "
|
40144
|
+
# serviceAccount:my-project-id@appspot.gserviceaccount.com" ] `, ` "role": "
|
40145
|
+
# roles/resourcemanager.organizationViewer", "members": [ "user:eve@example.com"
|
40146
|
+
# ], "condition": ` "title": "expirable access", "description": "Does not grant
|
40147
|
+
# access after Sep 2020", "expression": "request.time < timestamp('2020-10-01T00:
|
40148
|
+
# 00:00.000Z')", ` ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:**
|
40149
|
+
# bindings: - members: - user:mike@example.com - group:admins@example.com -
|
40150
|
+
# domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com
|
40151
|
+
# role: roles/resourcemanager.organizationAdmin - members: - user:eve@example.
|
40152
|
+
# com role: roles/resourcemanager.organizationViewer condition: title: expirable
|
40153
|
+
# access description: Does not grant access after Sep 2020 expression: request.
|
40154
|
+
# time < timestamp('2020-10-01T00:00:00.000Z') etag: BwWWja0YfJA= version: 3 For
|
40155
|
+
# a description of IAM and its features, see the [IAM documentation](https://
|
40156
|
+
# cloud.google.com/iam/docs/).
|
38618
40157
|
# Corresponds to the JSON property `policy`
|
38619
40158
|
# @return [Google::Apis::ComputeV1::Policy]
|
38620
40159
|
attr_accessor :policy
|