google-apis-compute_beta 0.8.0 → 0.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9b87476b50fc20714995b90ed9c0e60aaeca8a38f649d38c2150119c6746e746
4
- data.tar.gz: 5d7ff87732fb1a641ae79f5f683ba66c18b33bc5048e15a6ef4177c72d6f610f
3
+ metadata.gz: 1dd2f49517f069fbdfcea7b03f5cdcd4b8f48abeac30103f820201593a68036a
4
+ data.tar.gz: eb6e76ca51fafd8c2b6d611c5ff0fd7ed9a2bced84129e6f778c48dd2b4e4370
5
5
  SHA512:
6
- metadata.gz: a350bc3e15ef55bcb053789287bd6c694c1dc71b8b870f12b53bd09f3e19870a804675dde99d2ea669e0e8b5ac4375b8b7c48a3faefc44876604c881c957407f
7
- data.tar.gz: 71b612bb64cbc55b3cbbcbe24e60bf5cfb927bd89173b9249708537321dc2bb52c5a2a321b51dcd625d27b22d28316d250c8a43d9196e96138921d97480b7d6c
6
+ metadata.gz: 68012945ec33701f6dd7b891b2bf320ef776d3b1048289260b7ab39e1a3b30ecbf5931abc20161ff9c46b08f17f3e69bc87a45c9d73f19589833d49882c757bb
7
+ data.tar.gz: d371aa6ff5254b7ddae9aaa2f771bece54ee3c070dd7889efa64d623ef7275a188514ed40b6c5b9bb19ee67c1efe4f89443509a84bab315e175ff3f4ead153df
data/CHANGELOG.md CHANGED
@@ -1,5 +1,27 @@
1
1
  # Release history for google-apis-compute_beta
2
2
 
3
+ ### v0.13.0 (2021-06-24)
4
+
5
+ * Unspecified changes
6
+
7
+ ### v0.12.0 (2021-06-10)
8
+
9
+ * Regenerated from discovery document revision 20210525
10
+ * Regenerated using generator version 0.3.0
11
+
12
+ ### v0.11.0 (2021-05-28)
13
+
14
+ * Regenerated from discovery document revision 20210518
15
+
16
+ ### v0.10.0 (2021-05-20)
17
+
18
+ * Regenerated from discovery document revision 20210505
19
+ * Unspecified changes
20
+
21
+ ### v0.9.0 (2021-05-05)
22
+
23
+ * Regenerated from discovery document revision 20210415
24
+
3
25
  ### v0.8.0 (2021-03-30)
4
26
 
5
27
  * Regenerated from discovery document revision 20210316
@@ -465,6 +465,19 @@ module Google
465
465
  class AccessConfig
466
466
  include Google::Apis::Core::Hashable
467
467
 
468
+ # [Output Only] The first IPv6 address of the external IPv6 range associated
469
+ # with this instance, prefix length is stored in externalIpv6PrefixLength in
470
+ # ipv6AccessConfig. The field is output only, an IPv6 address from a subnetwork
471
+ # associated with the instance will be allocated dynamically.
472
+ # Corresponds to the JSON property `externalIpv6`
473
+ # @return [String]
474
+ attr_accessor :external_ipv6
475
+
476
+ # [Output Only] The prefix length of the external IPv6 range.
477
+ # Corresponds to the JSON property `externalIpv6PrefixLength`
478
+ # @return [Fixnum]
479
+ attr_accessor :external_ipv6_prefix_length
480
+
468
481
  # [Output Only] Type of the resource. Always compute#accessConfig for access
469
482
  # configs.
470
483
  # Corresponds to the JSON property `kind`
@@ -522,6 +535,8 @@ module Google
522
535
 
523
536
  # Update properties of this object
524
537
  def update!(**args)
538
+ @external_ipv6 = args[:external_ipv6] if args.key?(:external_ipv6)
539
+ @external_ipv6_prefix_length = args[:external_ipv6_prefix_length] if args.key?(:external_ipv6_prefix_length)
525
540
  @kind = args[:kind] if args.key?(:kind)
526
541
  @name = args[:name] if args.key?(:name)
527
542
  @nat_ip = args[:nat_ip] if args.key?(:nat_ip)
@@ -650,7 +665,8 @@ module Google
650
665
  # reserved for Cloud NAT.
651
666
  # - `IPSEC_INTERCONNECT` for addresses created from a private IP range that are
652
667
  # reserved for a VLAN attachment in an IPsec-encrypted Cloud Interconnect
653
- # configuration. These addresses are regional resources.
668
+ # configuration. These addresses are regional resources. Not currently available
669
+ # publicly.
654
670
  # Corresponds to the JSON property `purpose`
655
671
  # @return [String]
656
672
  attr_accessor :purpose
@@ -1063,6 +1079,13 @@ module Google
1063
1079
  attr_accessor :enable_nested_virtualization
1064
1080
  alias_method :enable_nested_virtualization?, :enable_nested_virtualization
1065
1081
 
1082
+ # The number of threads per physical core. To disable simultaneous
1083
+ # multithreading (SMT) set this to 1. If unset, the maximum number of threads
1084
+ # supported per core by the underlying processor is assumed.
1085
+ # Corresponds to the JSON property `threadsPerCore`
1086
+ # @return [Fixnum]
1087
+ attr_accessor :threads_per_core
1088
+
1066
1089
  def initialize(**args)
1067
1090
  update!(**args)
1068
1091
  end
@@ -1070,6 +1093,7 @@ module Google
1070
1093
  # Update properties of this object
1071
1094
  def update!(**args)
1072
1095
  @enable_nested_virtualization = args[:enable_nested_virtualization] if args.key?(:enable_nested_virtualization)
1096
+ @threads_per_core = args[:threads_per_core] if args.key?(:threads_per_core)
1073
1097
  end
1074
1098
  end
1075
1099
 
@@ -1158,6 +1182,18 @@ module Google
1158
1182
  # @return [String]
1159
1183
  attr_accessor :machine_type
1160
1184
 
1185
+ # Specifies the number of hours after reservation creation where instances using
1186
+ # the reservation won't be scheduled for maintenance.
1187
+ # Corresponds to the JSON property `maintenanceFreezeDurationHours`
1188
+ # @return [Fixnum]
1189
+ attr_accessor :maintenance_freeze_duration_hours
1190
+
1191
+ # For more information about maintenance intervals, see Setting maintenance
1192
+ # intervals.
1193
+ # Corresponds to the JSON property `maintenanceInterval`
1194
+ # @return [String]
1195
+ attr_accessor :maintenance_interval
1196
+
1161
1197
  # Minimum cpu platform the reservation.
1162
1198
  # Corresponds to the JSON property `minCpuPlatform`
1163
1199
  # @return [String]
@@ -1173,6 +1209,8 @@ module Google
1173
1209
  @local_ssds = args[:local_ssds] if args.key?(:local_ssds)
1174
1210
  @location_hint = args[:location_hint] if args.key?(:location_hint)
1175
1211
  @machine_type = args[:machine_type] if args.key?(:machine_type)
1212
+ @maintenance_freeze_duration_hours = args[:maintenance_freeze_duration_hours] if args.key?(:maintenance_freeze_duration_hours)
1213
+ @maintenance_interval = args[:maintenance_interval] if args.key?(:maintenance_interval)
1176
1214
  @min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform)
1177
1215
  end
1178
1216
  end
@@ -2642,6 +2680,12 @@ module Google
2642
2680
  # @return [Google::Apis::ComputeBeta::BackendBucketCdnPolicy]
2643
2681
  attr_accessor :cdn_policy
2644
2682
 
2683
+ # Compress text responses using Brotli or gzip compression, based on the client?
2684
+ # s Accept-Encoding header.
2685
+ # Corresponds to the JSON property `compressionMode`
2686
+ # @return [String]
2687
+ attr_accessor :compression_mode
2688
+
2645
2689
  # [Output Only] Creation timestamp in RFC3339 text format.
2646
2690
  # Corresponds to the JSON property `creationTimestamp`
2647
2691
  # @return [String]
@@ -2658,6 +2702,12 @@ module Google
2658
2702
  # @return [String]
2659
2703
  attr_accessor :description
2660
2704
 
2705
+ # [Output Only] The resource URL for the edge security policy associated with
2706
+ # this backend bucket.
2707
+ # Corresponds to the JSON property `edgeSecurityPolicy`
2708
+ # @return [String]
2709
+ attr_accessor :edge_security_policy
2710
+
2661
2711
  # If true, enable Cloud CDN for this BackendBucket.
2662
2712
  # Corresponds to the JSON property `enableCdn`
2663
2713
  # @return [Boolean]
@@ -2697,9 +2747,11 @@ module Google
2697
2747
  def update!(**args)
2698
2748
  @bucket_name = args[:bucket_name] if args.key?(:bucket_name)
2699
2749
  @cdn_policy = args[:cdn_policy] if args.key?(:cdn_policy)
2750
+ @compression_mode = args[:compression_mode] if args.key?(:compression_mode)
2700
2751
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
2701
2752
  @custom_response_headers = args[:custom_response_headers] if args.key?(:custom_response_headers)
2702
2753
  @description = args[:description] if args.key?(:description)
2754
+ @edge_security_policy = args[:edge_security_policy] if args.key?(:edge_security_policy)
2703
2755
  @enable_cdn = args[:enable_cdn] if args.key?(:enable_cdn)
2704
2756
  @id = args[:id] if args.key?(:id)
2705
2757
  @kind = args[:kind] if args.key?(:kind)
@@ -2719,6 +2771,12 @@ module Google
2719
2771
  # @return [Array<Google::Apis::ComputeBeta::BackendBucketCdnPolicyBypassCacheOnRequestHeader>]
2720
2772
  attr_accessor :bypass_cache_on_request_headers
2721
2773
 
2774
+ # Message containing what to include in the cache key for a request for Cloud
2775
+ # CDN.
2776
+ # Corresponds to the JSON property `cacheKeyPolicy`
2777
+ # @return [Google::Apis::ComputeBeta::BackendBucketCdnPolicyCacheKeyPolicy]
2778
+ attr_accessor :cache_key_policy
2779
+
2722
2780
  # Specifies the cache setting for all responses from this backend. The possible
2723
2781
  # values are:
2724
2782
  # USE_ORIGIN_HEADERS Requires the origin to set valid caching headers to cache
@@ -2843,6 +2901,7 @@ module Google
2843
2901
  # Update properties of this object
2844
2902
  def update!(**args)
2845
2903
  @bypass_cache_on_request_headers = args[:bypass_cache_on_request_headers] if args.key?(:bypass_cache_on_request_headers)
2904
+ @cache_key_policy = args[:cache_key_policy] if args.key?(:cache_key_policy)
2846
2905
  @cache_mode = args[:cache_mode] if args.key?(:cache_mode)
2847
2906
  @client_ttl = args[:client_ttl] if args.key?(:client_ttl)
2848
2907
  @default_ttl = args[:default_ttl] if args.key?(:default_ttl)
@@ -2878,6 +2937,34 @@ module Google
2878
2937
  end
2879
2938
  end
2880
2939
 
2940
+ # Message containing what to include in the cache key for a request for Cloud
2941
+ # CDN.
2942
+ class BackendBucketCdnPolicyCacheKeyPolicy
2943
+ include Google::Apis::Core::Hashable
2944
+
2945
+ # Allows HTTP request headers (by name) to be used in the cache key.
2946
+ # Corresponds to the JSON property `includeHttpHeaders`
2947
+ # @return [Array<String>]
2948
+ attr_accessor :include_http_headers
2949
+
2950
+ # Names of query string parameters to include in cache keys. All other
2951
+ # parameters will be excluded. '&' and '=' will be percent encoded and not
2952
+ # treated as delimiters.
2953
+ # Corresponds to the JSON property `queryStringWhitelist`
2954
+ # @return [Array<String>]
2955
+ attr_accessor :query_string_whitelist
2956
+
2957
+ def initialize(**args)
2958
+ update!(**args)
2959
+ end
2960
+
2961
+ # Update properties of this object
2962
+ def update!(**args)
2963
+ @include_http_headers = args[:include_http_headers] if args.key?(:include_http_headers)
2964
+ @query_string_whitelist = args[:query_string_whitelist] if args.key?(:query_string_whitelist)
2965
+ end
2966
+ end
2967
+
2881
2968
  # Specify CDN TTLs for response error codes.
2882
2969
  class BackendBucketCdnPolicyNegativeCachingPolicy
2883
2970
  include Google::Apis::Core::Hashable
@@ -3067,6 +3154,12 @@ module Google
3067
3154
  # @return [Google::Apis::ComputeBeta::CircuitBreakers]
3068
3155
  attr_accessor :circuit_breakers
3069
3156
 
3157
+ # Compress text responses using Brotli or gzip compression, based on the client?
3158
+ # s Accept-Encoding header.
3159
+ # Corresponds to the JSON property `compressionMode`
3160
+ # @return [String]
3161
+ attr_accessor :compression_mode
3162
+
3070
3163
  # Message containing connection draining configuration.
3071
3164
  # Corresponds to the JSON property `connectionDraining`
3072
3165
  # @return [Google::Apis::ComputeBeta::ConnectionDraining]
@@ -3103,6 +3196,12 @@ module Google
3103
3196
  # @return [String]
3104
3197
  attr_accessor :description
3105
3198
 
3199
+ # [Output Only] The resource URL for the edge security policy associated with
3200
+ # this backend service.
3201
+ # Corresponds to the JSON property `edgeSecurityPolicy`
3202
+ # @return [String]
3203
+ attr_accessor :edge_security_policy
3204
+
3106
3205
  # If true, enables Cloud CDN for the backend service. Only applicable if the
3107
3206
  # loadBalancingScheme is EXTERNAL and the protocol is HTTP or HTTPS.
3108
3207
  # Corresponds to the JSON property `enableCDN`
@@ -3296,11 +3395,12 @@ module Google
3296
3395
  attr_accessor :self_link
3297
3396
 
3298
3397
  # Type of session affinity to use. The default is NONE.
3299
- # When the loadBalancingScheme is EXTERNAL: * For Network Load Balancing, the
3300
- # possible values are NONE, CLIENT_IP, CLIENT_IP_PROTO, or CLIENT_IP_PORT_PROTO.
3301
- # * For all other load balancers that use loadBalancingScheme=EXTERNAL, the
3302
- # possible values are NONE, CLIENT_IP, or GENERATED_COOKIE. * You can use
3303
- # GENERATED_COOKIE if the protocol is HTTP, HTTP2, or HTTPS.
3398
+ # When the loadBalancingScheme is EXTERNAL:
3399
+ # * For Network Load Balancing, the possible values are NONE, CLIENT_IP,
3400
+ # CLIENT_IP_PROTO, or CLIENT_IP_PORT_PROTO. * For all other load balancers that
3401
+ # use loadBalancingScheme=EXTERNAL, the possible values are NONE, CLIENT_IP, or
3402
+ # GENERATED_COOKIE. * You can use GENERATED_COOKIE if the protocol is HTTP,
3403
+ # HTTP2, or HTTPS.
3304
3404
  # When the loadBalancingScheme is INTERNAL, possible values are NONE, CLIENT_IP,
3305
3405
  # CLIENT_IP_PROTO, or CLIENT_IP_PORT_PROTO.
3306
3406
  # When the loadBalancingScheme is INTERNAL_SELF_MANAGED, or INTERNAL_MANAGED,
@@ -3312,15 +3412,16 @@ module Google
3312
3412
  # @return [String]
3313
3413
  attr_accessor :session_affinity
3314
3414
 
3315
- # Subsetting options to make L4 ILB support any number of backend instances
3415
+ # Subsetting configuration for this BackendService. Currently this is applicable
3416
+ # only for Internal TCP/UDP load balancing, Internal HTTP(S) load balancing and
3417
+ # Traffic Director.
3316
3418
  # Corresponds to the JSON property `subsetting`
3317
3419
  # @return [Google::Apis::ComputeBeta::Subsetting]
3318
3420
  attr_accessor :subsetting
3319
3421
 
3320
- # The backend service timeout has a different meaning depending on the type of
3321
- # load balancer. For more information see, Backend service settings The default
3322
- # is 30 seconds. The full range of timeout values allowed is 1 - 2,147,483,647
3323
- # seconds.
3422
+ # Not supported when the backend service is referenced by a URL map that is
3423
+ # bound to target gRPC proxy that has validateForProxyless field set to true.
3424
+ # Instead, use maxStreamDuration.
3324
3425
  # Corresponds to the JSON property `timeoutSec`
3325
3426
  # @return [Fixnum]
3326
3427
  attr_accessor :timeout_sec
@@ -3335,6 +3436,7 @@ module Google
3335
3436
  @backends = args[:backends] if args.key?(:backends)
3336
3437
  @cdn_policy = args[:cdn_policy] if args.key?(:cdn_policy)
3337
3438
  @circuit_breakers = args[:circuit_breakers] if args.key?(:circuit_breakers)
3439
+ @compression_mode = args[:compression_mode] if args.key?(:compression_mode)
3338
3440
  @connection_draining = args[:connection_draining] if args.key?(:connection_draining)
3339
3441
  @connection_tracking_policy = args[:connection_tracking_policy] if args.key?(:connection_tracking_policy)
3340
3442
  @consistent_hash = args[:consistent_hash] if args.key?(:consistent_hash)
@@ -3342,6 +3444,7 @@ module Google
3342
3444
  @custom_request_headers = args[:custom_request_headers] if args.key?(:custom_request_headers)
3343
3445
  @custom_response_headers = args[:custom_response_headers] if args.key?(:custom_response_headers)
3344
3446
  @description = args[:description] if args.key?(:description)
3447
+ @edge_security_policy = args[:edge_security_policy] if args.key?(:edge_security_policy)
3345
3448
  @enable_cdn = args[:enable_cdn] if args.key?(:enable_cdn)
3346
3449
  @failover_policy = args[:failover_policy] if args.key?(:failover_policy)
3347
3450
  @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
@@ -4470,7 +4573,10 @@ module Google
4470
4573
  end
4471
4574
  end
4472
4575
 
4473
- #
4576
+ # A transient resource used in compute.instances.bulkInsert and compute.
4577
+ # regionInstances.bulkInsert and compute.regionInstances.recommendLocations.
4578
+ # This resource is not persisted anywhere, it is used only for processing the
4579
+ # requests.
4474
4580
  class BulkInsertInstanceResource
4475
4581
  include Google::Apis::Core::Hashable
4476
4582
 
@@ -4492,16 +4598,17 @@ module Google
4492
4598
 
4493
4599
  # The minimum number of instances to create. If no min_count is specified then
4494
4600
  # count is used as the default value. If min_count instances cannot be created,
4495
- # then no instances will be created.
4601
+ # then no instances will be created and instances already created will be
4602
+ # deleted.
4496
4603
  # Corresponds to the JSON property `minCount`
4497
4604
  # @return [Fixnum]
4498
4605
  attr_accessor :min_count
4499
4606
 
4500
4607
  # The string pattern used for the names of the VMs. Either name_pattern or
4501
- # predefined_names must be set. The pattern should contain one consecutive
4608
+ # per_instance_properties must be set. The pattern should contain one continuous
4502
4609
  # sequence of placeholder hash characters (#) with each character corresponding
4503
4610
  # to one digit of the generated instance name. Example: name_pattern of inst-####
4504
- # will generate instance names like inst-0001, inst-0002, ... . If there
4611
+ # will generate instance names such as inst-0001, inst-0002, ... . If there
4505
4612
  # already exist instance(s) whose names match the name pattern in the same
4506
4613
  # project and zone, then the generated instance numbers will start after the
4507
4614
  # biggest existing number. For example, if there exists an instance with name
@@ -4606,6 +4713,17 @@ module Google
4606
4713
  attr_accessor :include_host
4607
4714
  alias_method :include_host?, :include_host
4608
4715
 
4716
+ # Allows HTTP request headers (by name) to be used in the cache key.
4717
+ # Corresponds to the JSON property `includeHttpHeaders`
4718
+ # @return [Array<String>]
4719
+ attr_accessor :include_http_headers
4720
+
4721
+ # Allows HTTP cookies (by name) to be used in the cache key. The name=value pair
4722
+ # will be used in the cache key Cloud CDN generates.
4723
+ # Corresponds to the JSON property `includeNamedCookies`
4724
+ # @return [Array<String>]
4725
+ attr_accessor :include_named_cookies
4726
+
4609
4727
  # If true, http and https requests will be cached separately.
4610
4728
  # Corresponds to the JSON property `includeProtocol`
4611
4729
  # @return [Boolean]
@@ -4644,6 +4762,8 @@ module Google
4644
4762
  # Update properties of this object
4645
4763
  def update!(**args)
4646
4764
  @include_host = args[:include_host] if args.key?(:include_host)
4765
+ @include_http_headers = args[:include_http_headers] if args.key?(:include_http_headers)
4766
+ @include_named_cookies = args[:include_named_cookies] if args.key?(:include_named_cookies)
4647
4767
  @include_protocol = args[:include_protocol] if args.key?(:include_protocol)
4648
4768
  @include_query_string = args[:include_query_string] if args.key?(:include_query_string)
4649
4769
  @query_string_blacklist = args[:query_string_blacklist] if args.key?(:query_string_blacklist)
@@ -4663,14 +4783,14 @@ module Google
4663
4783
  # @return [Google::Apis::ComputeBeta::Duration]
4664
4784
  attr_accessor :connect_timeout
4665
4785
 
4666
- # The maximum number of connections to the backend service. If not specified,
4667
- # there is no limit.
4786
+ # Not supported when the backend service is referenced by a URL map that is
4787
+ # bound to target gRPC proxy that has validateForProxyless field set to true.
4668
4788
  # Corresponds to the JSON property `maxConnections`
4669
4789
  # @return [Fixnum]
4670
4790
  attr_accessor :max_connections
4671
4791
 
4672
- # The maximum number of pending requests allowed to the backend service. If not
4673
- # specified, there is no limit.
4792
+ # Not supported when the backend service is referenced by a URL map that is
4793
+ # bound to target gRPC proxy that has validateForProxyless field set to true.
4674
4794
  # Corresponds to the JSON property `maxPendingRequests`
4675
4795
  # @return [Fixnum]
4676
4796
  attr_accessor :max_pending_requests
@@ -4681,16 +4801,14 @@ module Google
4681
4801
  # @return [Fixnum]
4682
4802
  attr_accessor :max_requests
4683
4803
 
4684
- # Maximum requests for a single connection to the backend service. This
4685
- # parameter is respected by both the HTTP/1.1 and HTTP/2 implementations. If not
4686
- # specified, there is no limit. Setting this parameter to 1 will effectively
4687
- # disable keep alive.
4804
+ # Not supported when the backend service is referenced by a URL map that is
4805
+ # bound to target gRPC proxy that has validateForProxyless field set to true.
4688
4806
  # Corresponds to the JSON property `maxRequestsPerConnection`
4689
4807
  # @return [Fixnum]
4690
4808
  attr_accessor :max_requests_per_connection
4691
4809
 
4692
- # The maximum number of parallel retries allowed to the backend cluster. If not
4693
- # specified, the default is 1.
4810
+ # Not supported when the backend service is referenced by a URL map that is
4811
+ # bound to target gRPC proxy that has validateForProxyless field set to true.
4694
4812
  # Corresponds to the JSON property `maxRetries`
4695
4813
  # @return [Fixnum]
4696
4814
  attr_accessor :max_retries
@@ -7168,6 +7286,10 @@ module Google
7168
7286
  attr_accessor :id
7169
7287
 
7170
7288
  # List of interfaces for this external VPN gateway.
7289
+ # If your peer-side gateway is an on-premises gateway and non-AWS cloud
7290
+ # providers? gateway, at most two interfaces can be provided for an external VPN
7291
+ # gateway. If your peer side is an AWS virtual private gateway, four interfaces
7292
+ # should be provided for an external VPN gateway.
7171
7293
  # Corresponds to the JSON property `interfaces`
7172
7294
  # @return [Array<Google::Apis::ComputeBeta::ExternalVpnGatewayInterface>]
7173
7295
  attr_accessor :interfaces
@@ -7243,8 +7365,9 @@ module Google
7243
7365
 
7244
7366
  # The numeric ID of this interface. The allowed input values for this id for
7245
7367
  # different redundancy types of external VPN gateway:
7246
- # SINGLE_IP_INTERNALLY_REDUNDANT - 0 TWO_IPS_REDUNDANCY - 0, 1
7247
- # FOUR_IPS_REDUNDANCY - 0, 1, 2, 3
7368
+ # - SINGLE_IP_INTERNALLY_REDUNDANT - 0
7369
+ # - TWO_IPS_REDUNDANCY - 0, 1
7370
+ # - FOUR_IPS_REDUNDANCY - 0, 1, 2, 3
7248
7371
  # Corresponds to the JSON property `id`
7249
7372
  # @return [Fixnum]
7250
7373
  attr_accessor :id
@@ -8209,17 +8332,6 @@ module Google
8209
8332
  # @return [Array<String>]
8210
8333
  attr_accessor :target_resources
8211
8334
 
8212
- # A list of secure labels that controls which instances the firewall rule
8213
- # applies to. If targetSecureLabel are specified, then the firewall rule applies
8214
- # only to instances in the VPC network that have one of those secure labels.
8215
- # targetSecureLabel may not be set at the same time as targetServiceAccounts. If
8216
- # neither targetServiceAccounts nor targetSecureLabel are specified, the
8217
- # firewall rule applies to all instances on the specified network. Maximum
8218
- # number of target label values allowed is 256.
8219
- # Corresponds to the JSON property `targetSecureLabels`
8220
- # @return [Array<String>]
8221
- attr_accessor :target_secure_labels
8222
-
8223
8335
  # A list of service accounts indicating the sets of instances that are applied
8224
8336
  # with this rule.
8225
8337
  # Corresponds to the JSON property `targetServiceAccounts`
@@ -8242,7 +8354,6 @@ module Google
8242
8354
  @priority = args[:priority] if args.key?(:priority)
8243
8355
  @rule_tuple_count = args[:rule_tuple_count] if args.key?(:rule_tuple_count)
8244
8356
  @target_resources = args[:target_resources] if args.key?(:target_resources)
8245
- @target_secure_labels = args[:target_secure_labels] if args.key?(:target_secure_labels)
8246
8357
  @target_service_accounts = args[:target_service_accounts] if args.key?(:target_service_accounts)
8247
8358
  end
8248
8359
  end
@@ -8268,12 +8379,6 @@ module Google
8268
8379
  # @return [Array<String>]
8269
8380
  attr_accessor :src_ip_ranges
8270
8381
 
8271
- # List of firewall label values, which should be matched at the source of the
8272
- # traffic. Maximum number of source label values allowed is 256.
8273
- # Corresponds to the JSON property `srcSecureLabels`
8274
- # @return [Array<String>]
8275
- attr_accessor :src_secure_labels
8276
-
8277
8382
  def initialize(**args)
8278
8383
  update!(**args)
8279
8384
  end
@@ -8283,7 +8388,6 @@ module Google
8283
8388
  @dest_ip_ranges = args[:dest_ip_ranges] if args.key?(:dest_ip_ranges)
8284
8389
  @layer4_configs = args[:layer4_configs] if args.key?(:layer4_configs)
8285
8390
  @src_ip_ranges = args[:src_ip_ranges] if args.key?(:src_ip_ranges)
8286
- @src_secure_labels = args[:src_secure_labels] if args.key?(:src_secure_labels)
8287
8391
  end
8288
8392
  end
8289
8393
 
@@ -8330,7 +8434,7 @@ module Google
8330
8434
  # - If the value is a percent, then the calculated value is percent/100 *
8331
8435
  # targetSize. For example, the calculated value of a 80% of a managed instance
8332
8436
  # group with 150 instances would be (80/100 * 150) = 120 VM instances. If there
8333
- # is a remainder, the number is rounded up.
8437
+ # is a remainder, the number is rounded.
8334
8438
  # Corresponds to the JSON property `calculated`
8335
8439
  # @return [Fixnum]
8336
8440
  attr_accessor :calculated
@@ -8399,10 +8503,11 @@ module Google
8399
8503
  attr_accessor :ip_address
8400
8504
 
8401
8505
  # The IP protocol to which this rule applies.
8402
- # For protocol forwarding, valid options are TCP, UDP, ESP, AH, SCTP and ICMP.
8506
+ # For protocol forwarding, valid options are TCP, UDP, ESP, AH, SCTP, ICMP and
8507
+ # L3_DEFAULT.
8403
8508
  # The valid IP protocols are different for different load balancing products:
8404
8509
  # - Internal TCP/UDP Load Balancing: The load balancing scheme is INTERNAL, and
8405
- # one of TCP, UDP or ALL is valid.
8510
+ # one of TCP, UDP or L3_DEFAULT is valid.
8406
8511
  # - Traffic Director: The load balancing scheme is INTERNAL_SELF_MANAGED, and
8407
8512
  # only TCP is valid.
8408
8513
  # - Internal HTTP(S) Load Balancing: The load balancing scheme is
@@ -8410,17 +8515,18 @@ module Google
8410
8515
  # - HTTP(S), SSL Proxy, and TCP Proxy Load Balancing: The load balancing scheme
8411
8516
  # is EXTERNAL and only TCP is valid.
8412
8517
  # - Network Load Balancing: The load balancing scheme is EXTERNAL, and one of
8413
- # TCP or UDP is valid.
8518
+ # TCP, UDP or L3_DEFAULT is valid.
8414
8519
  # Corresponds to the JSON property `IPProtocol`
8415
8520
  # @return [String]
8416
8521
  attr_accessor :ip_protocol
8417
8522
 
8418
- # This field is used along with the backend_service field for internal load
8419
- # balancing or with the target field for internal TargetInstance. This field
8420
- # cannot be used with port or portRange fields.
8421
- # When the load balancing scheme is INTERNAL and protocol is TCP/UDP, specify
8422
- # this field to allow packets addressed to any ports will be forwarded to the
8423
- # backends configured with this forwarding rule.
8523
+ # This field is used along with the backend_service field for Internal TCP/UDP
8524
+ # Load Balancing or Network Load Balancing, or with the target field for
8525
+ # internal and external TargetInstance.
8526
+ # You can only use one of ports and port_range, or allPorts. The three are
8527
+ # mutually exclusive.
8528
+ # For TCP, UDP and SCTP traffic, packets addressed to any ports will be
8529
+ # forwarded to the target or backendService.
8424
8530
  # Corresponds to the JSON property `allPorts`
8425
8531
  # @return [Boolean]
8426
8532
  attr_accessor :all_ports
@@ -8582,13 +8688,16 @@ module Google
8582
8688
  # @return [String]
8583
8689
  attr_accessor :network_tier
8584
8690
 
8585
- # This field can be used only if: * Load balancing scheme is one of EXTERNAL,
8586
- # INTERNAL_SELF_MANAGED or INTERNAL_MANAGED, and * IPProtocol is one of TCP, UDP,
8587
- # or SCTP.
8691
+ # This field can be used only if:
8692
+ # - Load balancing scheme is one of EXTERNAL, INTERNAL_SELF_MANAGED or
8693
+ # INTERNAL_MANAGED
8694
+ # - IPProtocol is one of TCP, UDP, or SCTP.
8588
8695
  # Packets addressed to ports in the specified range will be forwarded to target
8589
- # or backend_service. You can only use one of ports, port_range, or allPorts.
8590
- # The three are mutually exclusive. Forwarding rules with the same [IPAddress,
8591
- # IPProtocol] pair must have disjoint port ranges.
8696
+ # or backend_service.
8697
+ # You can only use one of ports, port_range, or allPorts. The three are mutually
8698
+ # exclusive.
8699
+ # Forwarding rules with the same [IPAddress, IPProtocol] pair must have disjoint
8700
+ # ports.
8592
8701
  # Some types of forwarding target have constraints on the acceptable ports:
8593
8702
  # - TargetHttpProxy: 80, 8080
8594
8703
  # - TargetHttpsProxy: 443
@@ -8609,8 +8718,8 @@ module Google
8609
8718
  # You can only use one of ports and port_range, or allPorts. The three are
8610
8719
  # mutually exclusive.
8611
8720
  # You can specify a list of up to five ports, which can be non-contiguous.
8612
- # For Internal TCP/UDP Load Balancing, if you specify allPorts, you should not
8613
- # specify ports.
8721
+ # Forwarding rules with the same [IPAddress, IPProtocol] pair must have disjoint
8722
+ # ports.
8614
8723
  # For more information, see [Port specifications](/load-balancing/docs/
8615
8724
  # forwarding-rule-concepts#port_specifications).
8616
8725
  # Corresponds to the JSON property `ports`
@@ -8622,6 +8731,11 @@ module Google
8622
8731
  # @return [Fixnum]
8623
8732
  attr_accessor :psc_connection_id
8624
8733
 
8734
+ #
8735
+ # Corresponds to the JSON property `pscConnectionStatus`
8736
+ # @return [String]
8737
+ attr_accessor :psc_connection_status
8738
+
8625
8739
  # [Output Only] URL of the region where the regional forwarding rule resides.
8626
8740
  # This field is not applicable to global forwarding rules. You must specify this
8627
8741
  # field as part of the HTTP request URL. It is not settable as a field in the
@@ -8705,6 +8819,7 @@ module Google
8705
8819
  @port_range = args[:port_range] if args.key?(:port_range)
8706
8820
  @ports = args[:ports] if args.key?(:ports)
8707
8821
  @psc_connection_id = args[:psc_connection_id] if args.key?(:psc_connection_id)
8822
+ @psc_connection_status = args[:psc_connection_status] if args.key?(:psc_connection_status)
8708
8823
  @region = args[:region] if args.key?(:region)
8709
8824
  @self_link = args[:self_link] if args.key?(:self_link)
8710
8825
  @service_directory_registrations = args[:service_directory_registrations] if args.key?(:service_directory_registrations)
@@ -10036,11 +10151,12 @@ module Google
10036
10151
 
10037
10152
  # List of URLs to the HealthCheck resources. Must have at least one HealthCheck,
10038
10153
  # and not more than 10. HealthCheck resources must have portSpecification=
10039
- # USE_SERVING_PORT. For regional HealthCheckService, the HealthCheck must be
10040
- # regional and in the same region. For global HealthCheckService, HealthCheck
10041
- # must be global. Mix of regional and global HealthChecks is not supported.
10042
- # Multiple regional HealthChecks must belong to the same region. Regional
10043
- # HealthChecks</code? must belong to the same region as zones of NEGs.
10154
+ # USE_SERVING_PORT or portSpecification=USE_FIXED_PORT. For regional
10155
+ # HealthCheckService, the HealthCheck must be regional and in the same region.
10156
+ # For global HealthCheckService, HealthCheck must be global. Mix of regional and
10157
+ # global HealthChecks is not supported. Multiple regional HealthChecks must
10158
+ # belong to the same region. Regional HealthChecks must belong to the same
10159
+ # region as zones of NEGs.
10044
10160
  # Corresponds to the JSON property `healthChecks`
10045
10161
  # @return [Array<String>]
10046
10162
  attr_accessor :health_checks
@@ -10670,6 +10786,9 @@ module Google
10670
10786
 
10671
10787
  # The HTTP status code used to abort the request.
10672
10788
  # The value must be between 200 and 599 inclusive.
10789
+ # For gRPC protocol, the gRPC status code is mapped to HTTP status code
10790
+ # according to this mapping table. HTTP status 200 is mapped to gRPC status
10791
+ # UNKNOWN. Injecting an OK status is currently not supported by Traffic Director.
10673
10792
  # Corresponds to the JSON property `httpStatus`
10674
10793
  # @return [Fixnum]
10675
10794
  attr_accessor :http_status
@@ -11333,8 +11452,8 @@ module Google
11333
11452
  # @return [Google::Apis::ComputeBeta::Duration]
11334
11453
  attr_accessor :per_try_timeout
11335
11454
 
11336
- # Specfies one or more conditions when this retry rule applies. Valid values are:
11337
- #
11455
+ # Specifies one or more conditions when this retry rule applies. Valid values
11456
+ # are:
11338
11457
  # - 5xx: Loadbalancer will attempt a retry if the backend service responds with
11339
11458
  # any 5xx response code, or if the backend service does not respond at all,
11340
11459
  # example: disconnects, reset, read timeout, connection failure, and refused
@@ -12014,13 +12133,17 @@ module Google
12014
12133
  # @return [Google::Apis::ComputeBeta::InitialStateConfig]
12015
12134
  attr_accessor :shielded_instance_initial_state
12016
12135
 
12017
- # URL of the source disk used to create this image. This can be a full or valid
12018
- # partial URL. You must provide either this property or the rawDisk.source
12019
- # property but not both to create an image. For example, the following are valid
12020
- # values:
12136
+ # URL of the source disk used to create this image. For example, the following
12137
+ # are valid values:
12021
12138
  # - https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/disk
12022
12139
  # - projects/project/zones/zone/disks/disk
12023
12140
  # - zones/zone/disks/disk
12141
+ # In order to create an image, you must provide the full or partial URL of one
12142
+ # of the following:
12143
+ # - The rawDisk.source URL
12144
+ # - The sourceDisk URL
12145
+ # - The sourceImage URL
12146
+ # - The sourceSnapshot URL
12024
12147
  # Corresponds to the JSON property `sourceDisk`
12025
12148
  # @return [String]
12026
12149
  attr_accessor :source_disk
@@ -12041,10 +12164,10 @@ module Google
12041
12164
  # URL of the source image used to create this image.
12042
12165
  # In order to create an image, you must provide the full or partial URL of one
12043
12166
  # of the following:
12044
- # - The selfLink URL
12045
- # - This property
12046
12167
  # - The rawDisk.source URL
12047
12168
  # - The sourceDisk URL
12169
+ # - The sourceImage URL
12170
+ # - The sourceSnapshot URL
12048
12171
  # Corresponds to the JSON property `sourceImage`
12049
12172
  # @return [String]
12050
12173
  attr_accessor :source_image
@@ -12065,11 +12188,10 @@ module Google
12065
12188
  # URL of the source snapshot used to create this image.
12066
12189
  # In order to create an image, you must provide the full or partial URL of one
12067
12190
  # of the following:
12068
- # - The selfLink URL
12069
- # - This property
12070
- # - The sourceImage URL
12071
12191
  # - The rawDisk.source URL
12072
12192
  # - The sourceDisk URL
12193
+ # - The sourceImage URL
12194
+ # - The sourceSnapshot URL
12073
12195
  # Corresponds to the JSON property `sourceSnapshot`
12074
12196
  # @return [String]
12075
12197
  attr_accessor :source_snapshot
@@ -12163,8 +12285,13 @@ module Google
12163
12285
  # @return [String]
12164
12286
  attr_accessor :sha1_checksum
12165
12287
 
12166
- # The full Google Cloud Storage URL where the disk image is stored. You must
12167
- # provide either this property or the sourceDisk property but not both.
12288
+ # The full Google Cloud Storage URL where the disk image is stored.
12289
+ # In order to create an image, you must provide the full or partial URL of one
12290
+ # of the following:
12291
+ # - The rawDisk.source URL
12292
+ # - The sourceDisk URL
12293
+ # - The sourceImage URL
12294
+ # - The sourceSnapshot URL
12168
12295
  # Corresponds to the JSON property `source`
12169
12296
  # @return [String]
12170
12297
  attr_accessor :source
@@ -12573,7 +12700,7 @@ module Google
12573
12700
  attr_accessor :satisfies_pzs
12574
12701
  alias_method :satisfies_pzs?, :satisfies_pzs
12575
12702
 
12576
- # Sets the scheduling options for an Instance. NextID: 20
12703
+ # Sets the scheduling options for an Instance. NextID: 21
12577
12704
  # Corresponds to the JSON property `scheduling`
12578
12705
  # @return [Google::Apis::ComputeBeta::Scheduling]
12579
12706
  attr_accessor :scheduling
@@ -13198,6 +13325,13 @@ module Google
13198
13325
  end
13199
13326
  end
13200
13327
 
13328
+ # Whether the instance is a standby. Properties of a standby instance comparing
13329
+ # to the regular instance: ======================================================
13330
+ # =================== | regular | standby =======================================
13331
+ # ================================== managed by IGM? | yes | yes added to the IG?
13332
+ # | yes | yes counts towards IGM's target size? | yes | no taken into account
13333
+ # by Autoscaler? | yes | no receives traffic from LB? | yes | no ================
13334
+ # =========================================================
13201
13335
  # Represents a Managed Instance Group resource.
13202
13336
  # An instance group is a collection of VM instances that you can manage as a
13203
13337
  # single entity. For more information, read Instance groups.
@@ -13932,6 +14066,17 @@ module Google
13932
14066
  # @return [String]
13933
14067
  attr_accessor :minimal_action
13934
14068
 
14069
+ # Most disruptive action that is allowed to be taken on an instance. You can
14070
+ # specify either NONE to forbid any actions, REFRESH to allow actions that do
14071
+ # not need instance restart, RESTART to allow actions that can be applied
14072
+ # without instance replacing or REPLACE to allow all possible actions. If the
14073
+ # Updater determines that the minimal update action needed is more disruptive
14074
+ # than most disruptive allowed action you specify it will not perform the update
14075
+ # at all.
14076
+ # Corresponds to the JSON property `mostDisruptiveAllowedAction`
14077
+ # @return [String]
14078
+ attr_accessor :most_disruptive_allowed_action
14079
+
13935
14080
  # What action should be used to replace instances. See minimal_action.REPLACE
13936
14081
  # Corresponds to the JSON property `replacementMethod`
13937
14082
  # @return [String]
@@ -13957,6 +14102,7 @@ module Google
13957
14102
  @max_unavailable = args[:max_unavailable] if args.key?(:max_unavailable)
13958
14103
  @min_ready_sec = args[:min_ready_sec] if args.key?(:min_ready_sec)
13959
14104
  @minimal_action = args[:minimal_action] if args.key?(:minimal_action)
14105
+ @most_disruptive_allowed_action = args[:most_disruptive_allowed_action] if args.key?(:most_disruptive_allowed_action)
13960
14106
  @replacement_method = args[:replacement_method] if args.key?(:replacement_method)
13961
14107
  @type = args[:type] if args.key?(:type)
13962
14108
  end
@@ -15335,7 +15481,7 @@ module Google
15335
15481
  # @return [Array<String>]
15336
15482
  attr_accessor :resource_policies
15337
15483
 
15338
- # Sets the scheduling options for an Instance. NextID: 20
15484
+ # Sets the scheduling options for an Instance. NextID: 21
15339
15485
  # Corresponds to the JSON property `scheduling`
15340
15486
  # @return [Google::Apis::ComputeBeta::Scheduling]
15341
15487
  attr_accessor :scheduling
@@ -16402,15 +16548,18 @@ module Google
16402
16548
  # @return [String]
16403
16549
  attr_accessor :edge_availability_domain
16404
16550
 
16405
- # Indicates the user-supplied encryption option of this interconnect attachment:
16406
- # - NONE is the default value, which means that the attachment carries
16407
- # unencrypted traffic. VMs can send traffic to, or receive traffic from, this
16408
- # type of attachment.
16409
- # - IPSEC indicates that the attachment carries only traffic encrypted by an
16410
- # IPsec device such as an HA VPN gateway. VMs cannot directly send traffic to,
16411
- # or receive traffic from, such an attachment. To use IPsec-encrypted Cloud
16412
- # Interconnect, create the attachment using this option.
16413
- # Not currently available in all Interconnect locations.
16551
+ # Indicates the user-supplied encryption option of this VLAN attachment (
16552
+ # interconnectAttachment). Can only be specified at attachment creation for
16553
+ # PARTNER or DEDICATED attachments. Possible values are:
16554
+ # - NONE - This is the default value, which means that the VLAN attachment
16555
+ # carries unencrypted traffic. VMs are able to send traffic to, or receive
16556
+ # traffic from, such a VLAN attachment.
16557
+ # - IPSEC - The VLAN attachment carries only encrypted traffic that is encrypted
16558
+ # by an IPsec device, such as an HA VPN gateway or third-party IPsec VPN. VMs
16559
+ # cannot directly send traffic to, or receive traffic from, such a VLAN
16560
+ # attachment. To use IPsec-encrypted Cloud Interconnect, the VLAN attachment
16561
+ # must be created with this option.
16562
+ # Not currently available publicly.
16414
16563
  # Corresponds to the JSON property `encryption`
16415
16564
  # @return [String]
16416
16565
  attr_accessor :encryption
@@ -16434,19 +16583,19 @@ module Google
16434
16583
  # @return [String]
16435
16584
  attr_accessor :interconnect
16436
16585
 
16437
- # URL of addresses that have been reserved for the interconnect attachment, Used
16438
- # only for interconnect attachment that has the encryption option as IPSEC. The
16439
- # addresses must be RFC 1918 IP address ranges. When creating HA VPN gateway
16440
- # over the interconnect attachment, if the attachment is configured to use an
16441
- # RFC 1918 IP address, then the VPN gateway?s IP address will be allocated from
16442
- # the IP address range specified here. For example, if the HA VPN gateway?s
16443
- # interface 0 is paired to this interconnect attachment, then an RFC 1918 IP
16586
+ # List of URL of addresses that have been reserved for the VLAN attachment. Used
16587
+ # only for the VLAN attachment that has the encryption option as IPSEC. The
16588
+ # addresses must be regional internal IP address ranges. When creating an HA VPN
16589
+ # gateway over the VLAN attachment, if the attachment is configured to use a
16590
+ # regional internal IP address, then the VPN gateway's IP address is allocated
16591
+ # from the IP address range specified here. For example, if the HA VPN gateway's
16592
+ # interface 0 is paired to this VLAN attachment, then a regional internal IP
16444
16593
  # address for the VPN gateway interface 0 will be allocated from the IP address
16445
- # specified for this interconnect attachment. If this field is not specified for
16446
- # interconnect attachment that has encryption option as IPSEC, later on when
16447
- # creating HA VPN gateway on this interconnect attachment, the HA VPN gateway's
16448
- # IP address will be allocated from regional external IP address pool.
16449
- # Not currently available in all Interconnect locations.
16594
+ # specified for this VLAN attachment. If this field is not specified when
16595
+ # creating the VLAN attachment, then later on when creating an HA VPN gateway on
16596
+ # this VLAN attachment, the HA VPN gateway's IP address is allocated from the
16597
+ # regional external IP address pool.
16598
+ # Not currently available publicly.
16450
16599
  # Corresponds to the JSON property `ipsecInternalAddresses`
16451
16600
  # @return [Array<String>]
16452
16601
  attr_accessor :ipsec_internal_addresses
@@ -17684,8 +17833,10 @@ module Google
17684
17833
  # - ACTIVE: This outage notification is active. The event could be in the past,
17685
17834
  # present, or future. See start_time and end_time for scheduling.
17686
17835
  # - CANCELLED: The outage associated with this notification was cancelled before
17687
- # the outage was due to start. Note that the versions of this enum prefixed with
17688
- # "NS_" have been deprecated in favor of the unprefixed values.
17836
+ # the outage was due to start.
17837
+ # - COMPLETED: The outage associated with this notification is complete. Note
17838
+ # that the versions of this enum prefixed with "NS_" have been deprecated in
17839
+ # favor of the unprefixed values.
17689
17840
  # Corresponds to the JSON property `state`
17690
17841
  # @return [String]
17691
17842
  attr_accessor :state
@@ -18121,7 +18272,7 @@ module Google
18121
18272
  include Google::Apis::Core::Hashable
18122
18273
 
18123
18274
  # Location configurations mapped by location name. Currently only zone names are
18124
- # supported and must be represented as valid internal URLs, like: zones/us-
18275
+ # supported and must be represented as valid internal URLs, such as zones/us-
18125
18276
  # central1-a.
18126
18277
  # Corresponds to the JSON property `locations`
18127
18278
  # @return [Hash<String,Google::Apis::ComputeBeta::LocationPolicyLocation>]
@@ -18141,7 +18292,7 @@ module Google
18141
18292
  class LocationPolicyLocation
18142
18293
  include Google::Apis::Core::Hashable
18143
18294
 
18144
- #
18295
+ # Preference for a given location: ALLOW or DENY.
18145
18296
  # Corresponds to the JSON property `preference`
18146
18297
  # @return [String]
18147
18298
  attr_accessor :preference
@@ -20500,6 +20651,20 @@ module Google
20500
20651
  # @return [String]
20501
20652
  attr_accessor :fingerprint
20502
20653
 
20654
+ # An array of IPv6 access configurations for this interface. Currently, only one
20655
+ # IPv6 access config, DIRECT_IPV6, is supported. If there is no ipv6AccessConfig
20656
+ # specified, then this instance will have no external IPv6 Internet access.
20657
+ # Corresponds to the JSON property `ipv6AccessConfigs`
20658
+ # @return [Array<Google::Apis::ComputeBeta::AccessConfig>]
20659
+ attr_accessor :ipv6_access_configs
20660
+
20661
+ # [Output Only] One of EXTERNAL, INTERNAL to indicate whether the IP can be
20662
+ # accessed from the Internet. This field is always inherited from its subnetwork.
20663
+ # Valid only if stackType is IPV4_IPV6.
20664
+ # Corresponds to the JSON property `ipv6AccessType`
20665
+ # @return [String]
20666
+ attr_accessor :ipv6_access_type
20667
+
20503
20668
  # [Output Only] An IPv6 internal network address for this network interface.
20504
20669
  # Corresponds to the JSON property `ipv6Address`
20505
20670
  # @return [String]
@@ -20543,6 +20708,14 @@ module Google
20543
20708
  # @return [String]
20544
20709
  attr_accessor :nic_type
20545
20710
 
20711
+ # The stack type for this network interface to identify whether the IPv6 feature
20712
+ # is enabled or not. If not specified, IPV4_ONLY will be used.
20713
+ # This field can be both set at instance creation and update network interface
20714
+ # operations.
20715
+ # Corresponds to the JSON property `stackType`
20716
+ # @return [String]
20717
+ attr_accessor :stack_type
20718
+
20546
20719
  # The URL of the Subnetwork resource for this instance. If the network resource
20547
20720
  # is in legacy mode, do not specify this field. If the network is in auto subnet
20548
20721
  # mode, specifying the subnetwork is optional. If the network is in custom
@@ -20565,12 +20738,15 @@ module Google
20565
20738
  @access_configs = args[:access_configs] if args.key?(:access_configs)
20566
20739
  @alias_ip_ranges = args[:alias_ip_ranges] if args.key?(:alias_ip_ranges)
20567
20740
  @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
20741
+ @ipv6_access_configs = args[:ipv6_access_configs] if args.key?(:ipv6_access_configs)
20742
+ @ipv6_access_type = args[:ipv6_access_type] if args.key?(:ipv6_access_type)
20568
20743
  @ipv6_address = args[:ipv6_address] if args.key?(:ipv6_address)
20569
20744
  @kind = args[:kind] if args.key?(:kind)
20570
20745
  @name = args[:name] if args.key?(:name)
20571
20746
  @network = args[:network] if args.key?(:network)
20572
20747
  @network_ip = args[:network_ip] if args.key?(:network_ip)
20573
20748
  @nic_type = args[:nic_type] if args.key?(:nic_type)
20749
+ @stack_type = args[:stack_type] if args.key?(:stack_type)
20574
20750
  @subnetwork = args[:subnetwork] if args.key?(:subnetwork)
20575
20751
  end
20576
20752
  end
@@ -27540,7 +27716,10 @@ module Google
27540
27716
  # @return [String]
27541
27717
  attr_accessor :key
27542
27718
 
27543
- # Corresponds to the label values of a reservation resource.
27719
+ # Corresponds to the label values of a reservation resource. This can be either
27720
+ # a name to a reservation in the same project or "projects/different-project/
27721
+ # reservations/some-reservation-name" to target a shared reservation in the same
27722
+ # zone but in a different project.
27544
27723
  # Corresponds to the JSON property `values`
27545
27724
  # @return [Array<String>]
27546
27725
  attr_accessor :values
@@ -29183,9 +29362,9 @@ module Google
29183
29362
  # @return [String]
29184
29363
  attr_accessor :description
29185
29364
 
29186
- # Field to indicate if a router is dedicated to use with encrypted Interconnect
29187
- # Attachment (IPsec-encrypted Cloud Interconnect feature).
29188
- # Not currently available in all Interconnect locations.
29365
+ # Indicates if a router is dedicated for use with encrypted VLAN attachments (
29366
+ # interconnectAttachments).
29367
+ # Not currently available publicly.
29189
29368
  # Corresponds to the JSON property `encryptedInterconnectRouter`
29190
29369
  # @return [Boolean]
29191
29370
  attr_accessor :encrypted_interconnect_router
@@ -29446,7 +29625,6 @@ module Google
29446
29625
 
29447
29626
  # The interval in seconds between BGP keepalive messages that are sent to the
29448
29627
  # peer.
29449
- # Not currently available publicly.
29450
29628
  # Hold time is three times the interval at which keepalive messages are sent,
29451
29629
  # and the hold time is the maximum number of seconds allowed to elapse between
29452
29630
  # successive keepalive messages that BGP receives from a peer.
@@ -29515,7 +29693,6 @@ module Google
29515
29693
  attr_accessor :bfd
29516
29694
 
29517
29695
  # The status of the BGP peer connection.
29518
- # Not currently available publicly.
29519
29696
  # If set to FALSE, any active session with the peer is terminated and all
29520
29697
  # associated routing information is removed. If set to TRUE, the peer connection
29521
29698
  # can be established with routing information. The default is TRUE.
@@ -29722,7 +29899,7 @@ module Google
29722
29899
  # @return [String]
29723
29900
  attr_accessor :redundant_interface
29724
29901
 
29725
- # The URL of the subnetwork resource that this interface belongs to, which must
29902
+ # The URI of the subnetwork resource that this interface belongs to, which must
29726
29903
  # be in the same region as the Cloud Router. When you establish a BGP session to
29727
29904
  # a VM instance using this interface, the VM instance must belong to the same
29728
29905
  # subnetwork as the subnetwork specified here.
@@ -30669,7 +30846,7 @@ module Google
30669
30846
  end
30670
30847
  end
30671
30848
 
30672
- # Sets the scheduling options for an Instance. NextID: 20
30849
+ # Sets the scheduling options for an Instance. NextID: 21
30673
30850
  class Scheduling
30674
30851
  include Google::Apis::Core::Hashable
30675
30852
 
@@ -30684,12 +30861,31 @@ module Google
30684
30861
  attr_accessor :automatic_restart
30685
30862
  alias_method :automatic_restart?, :automatic_restart
30686
30863
 
30864
+ # Specify the time in seconds for host error detection, the value must be within
30865
+ # the range of [90, 330] with the increment of 30, if unset, the default
30866
+ # behavior of host error recovery will be used.
30867
+ # Corresponds to the JSON property `hostErrorTimeoutSeconds`
30868
+ # @return [Fixnum]
30869
+ attr_accessor :host_error_timeout_seconds
30870
+
30687
30871
  # An opaque location hint used to place the instance close to other resources.
30688
30872
  # This field is for use by internal tools that use the public API.
30689
30873
  # Corresponds to the JSON property `locationHint`
30690
30874
  # @return [String]
30691
30875
  attr_accessor :location_hint
30692
30876
 
30877
+ # Specifies the number of hours after VM instance creation where the VM won't be
30878
+ # scheduled for maintenance.
30879
+ # Corresponds to the JSON property `maintenanceFreezeDurationHours`
30880
+ # @return [Fixnum]
30881
+ attr_accessor :maintenance_freeze_duration_hours
30882
+
30883
+ # For more information about maintenance intervals, see Setting maintenance
30884
+ # intervals.
30885
+ # Corresponds to the JSON property `maintenanceInterval`
30886
+ # @return [String]
30887
+ attr_accessor :maintenance_interval
30888
+
30693
30889
  # The minimum number of virtual CPUs this instance will consume when running on
30694
30890
  # a sole-tenant node.
30695
30891
  # Corresponds to the JSON property `minNodeCpus`
@@ -30726,7 +30922,10 @@ module Google
30726
30922
  # Update properties of this object
30727
30923
  def update!(**args)
30728
30924
  @automatic_restart = args[:automatic_restart] if args.key?(:automatic_restart)
30925
+ @host_error_timeout_seconds = args[:host_error_timeout_seconds] if args.key?(:host_error_timeout_seconds)
30729
30926
  @location_hint = args[:location_hint] if args.key?(:location_hint)
30927
+ @maintenance_freeze_duration_hours = args[:maintenance_freeze_duration_hours] if args.key?(:maintenance_freeze_duration_hours)
30928
+ @maintenance_interval = args[:maintenance_interval] if args.key?(:maintenance_interval)
30730
30929
  @min_node_cpus = args[:min_node_cpus] if args.key?(:min_node_cpus)
30731
30930
  @node_affinities = args[:node_affinities] if args.key?(:node_affinities)
30732
30931
  @on_host_maintenance = args[:on_host_maintenance] if args.key?(:on_host_maintenance)
@@ -30843,6 +31042,11 @@ module Google
30843
31042
  # @return [Google::Apis::ComputeBeta::SecurityPolicyAdaptiveProtectionConfig]
30844
31043
  attr_accessor :adaptive_protection_config
30845
31044
 
31045
+ #
31046
+ # Corresponds to the JSON property `advancedOptionsConfig`
31047
+ # @return [Google::Apis::ComputeBeta::SecurityPolicyAdvancedOptionsConfig]
31048
+ attr_accessor :advanced_options_config
31049
+
30846
31050
  # A list of associations that belong to this policy.
30847
31051
  # Corresponds to the JSON property `associations`
30848
31052
  # @return [Array<Google::Apis::ComputeBeta::SecurityPolicyAssociation>]
@@ -30965,6 +31169,7 @@ module Google
30965
31169
  # Update properties of this object
30966
31170
  def update!(**args)
30967
31171
  @adaptive_protection_config = args[:adaptive_protection_config] if args.key?(:adaptive_protection_config)
31172
+ @advanced_options_config = args[:advanced_options_config] if args.key?(:advanced_options_config)
30968
31173
  @associations = args[:associations] if args.key?(:associations)
30969
31174
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
30970
31175
  @description = args[:description] if args.key?(:description)
@@ -31030,6 +31235,31 @@ module Google
31030
31235
  end
31031
31236
  end
31032
31237
 
31238
+ #
31239
+ class SecurityPolicyAdvancedOptionsConfig
31240
+ include Google::Apis::Core::Hashable
31241
+
31242
+ #
31243
+ # Corresponds to the JSON property `jsonParsing`
31244
+ # @return [String]
31245
+ attr_accessor :json_parsing
31246
+
31247
+ #
31248
+ # Corresponds to the JSON property `logLevel`
31249
+ # @return [String]
31250
+ attr_accessor :log_level
31251
+
31252
+ def initialize(**args)
31253
+ update!(**args)
31254
+ end
31255
+
31256
+ # Update properties of this object
31257
+ def update!(**args)
31258
+ @json_parsing = args[:json_parsing] if args.key?(:json_parsing)
31259
+ @log_level = args[:log_level] if args.key?(:log_level)
31260
+ end
31261
+ end
31262
+
31033
31263
  #
31034
31264
  class SecurityPolicyAssociation
31035
31265
  include Google::Apis::Core::Hashable
@@ -31574,10 +31804,16 @@ module Google
31574
31804
  # A service attachment represents a service that a producer has exposed. It
31575
31805
  # encapsulates the load balancer which fronts the service runs and a list of NAT
31576
31806
  # IP ranges that the producers uses to represent the consumers connecting to the
31577
- # service. next tag = 17
31807
+ # service. next tag = 19
31578
31808
  class ServiceAttachment
31579
31809
  include Google::Apis::Core::Hashable
31580
31810
 
31811
+ # [Output Only] An array of connections for all the consumers connected to this
31812
+ # service attachment.
31813
+ # Corresponds to the JSON property `connectedEndpoints`
31814
+ # @return [Array<Google::Apis::ComputeBeta::ServiceAttachmentConnectedEndpoint>]
31815
+ attr_accessor :connected_endpoints
31816
+
31581
31817
  # The connection preference of service attachment. The value can be set to
31582
31818
  # ACCEPT_AUTOMATIC. An ACCEPT_AUTOMATIC service attachment is one that always
31583
31819
  # accepts the connection from consumer forwarding rules.
@@ -31585,12 +31821,23 @@ module Google
31585
31821
  # @return [String]
31586
31822
  attr_accessor :connection_preference
31587
31823
 
31824
+ # Projects that are allowed to connect to this service attachment.
31825
+ # Corresponds to the JSON property `consumerAcceptLists`
31826
+ # @return [Array<Google::Apis::ComputeBeta::ServiceAttachmentConsumerProjectLimit>]
31827
+ attr_accessor :consumer_accept_lists
31828
+
31588
31829
  # [Output Only] An array of forwarding rules for all the consumers connected to
31589
31830
  # this service attachment.
31590
31831
  # Corresponds to the JSON property `consumerForwardingRules`
31591
31832
  # @return [Array<Google::Apis::ComputeBeta::ServiceAttachmentConsumerForwardingRule>]
31592
31833
  attr_accessor :consumer_forwarding_rules
31593
31834
 
31835
+ # Projects that are not allowed to connect to this service attachment. The
31836
+ # project can be specified using its id or number.
31837
+ # Corresponds to the JSON property `consumerRejectLists`
31838
+ # @return [Array<String>]
31839
+ attr_accessor :consumer_reject_lists
31840
+
31594
31841
  # [Output Only] Creation timestamp in RFC3339 text format.
31595
31842
  # Corresponds to the JSON property `creationTimestamp`
31596
31843
  # @return [String]
@@ -31610,6 +31857,17 @@ module Google
31610
31857
  attr_accessor :enable_proxy_protocol
31611
31858
  alias_method :enable_proxy_protocol?, :enable_proxy_protocol
31612
31859
 
31860
+ # Fingerprint of this resource. A hash of the contents stored in this object.
31861
+ # This field is used in optimistic locking. This field will be ignored when
31862
+ # inserting a ServiceAttachment. An up-to-date fingerprint must be provided in
31863
+ # order to patch/update the ServiceAttachment; otherwise, the request will fail
31864
+ # with error 412 conditionNotMet. To see the latest fingerprint, make a get()
31865
+ # request to retrieve the ServiceAttachment.
31866
+ # Corresponds to the JSON property `fingerprint`
31867
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
31868
+ # @return [String]
31869
+ attr_accessor :fingerprint
31870
+
31613
31871
  # [Output Only] The unique identifier for the resource type. The server
31614
31872
  # generates this identifier.
31615
31873
  # Corresponds to the JSON property `id`
@@ -31644,6 +31902,11 @@ module Google
31644
31902
  # @return [String]
31645
31903
  attr_accessor :producer_forwarding_rule
31646
31904
 
31905
+ # [Output Only] An 128-bit global unique ID of the PSC service attachment.
31906
+ # Corresponds to the JSON property `pscServiceAttachmentId`
31907
+ # @return [Google::Apis::ComputeBeta::Uint128]
31908
+ attr_accessor :psc_service_attachment_id
31909
+
31647
31910
  # [Output Only] URL of the region where the service attachment resides. This
31648
31911
  # field applies only to the region resource. You must specify this field as part
31649
31912
  # of the HTTP request URL. It is not settable as a field in the request body.
@@ -31656,24 +31919,36 @@ module Google
31656
31919
  # @return [String]
31657
31920
  attr_accessor :self_link
31658
31921
 
31922
+ # The URL of a service serving the endpoint identified by this service
31923
+ # attachment.
31924
+ # Corresponds to the JSON property `targetService`
31925
+ # @return [String]
31926
+ attr_accessor :target_service
31927
+
31659
31928
  def initialize(**args)
31660
31929
  update!(**args)
31661
31930
  end
31662
31931
 
31663
31932
  # Update properties of this object
31664
31933
  def update!(**args)
31934
+ @connected_endpoints = args[:connected_endpoints] if args.key?(:connected_endpoints)
31665
31935
  @connection_preference = args[:connection_preference] if args.key?(:connection_preference)
31936
+ @consumer_accept_lists = args[:consumer_accept_lists] if args.key?(:consumer_accept_lists)
31666
31937
  @consumer_forwarding_rules = args[:consumer_forwarding_rules] if args.key?(:consumer_forwarding_rules)
31938
+ @consumer_reject_lists = args[:consumer_reject_lists] if args.key?(:consumer_reject_lists)
31667
31939
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
31668
31940
  @description = args[:description] if args.key?(:description)
31669
31941
  @enable_proxy_protocol = args[:enable_proxy_protocol] if args.key?(:enable_proxy_protocol)
31942
+ @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
31670
31943
  @id = args[:id] if args.key?(:id)
31671
31944
  @kind = args[:kind] if args.key?(:kind)
31672
31945
  @name = args[:name] if args.key?(:name)
31673
31946
  @nat_subnets = args[:nat_subnets] if args.key?(:nat_subnets)
31674
31947
  @producer_forwarding_rule = args[:producer_forwarding_rule] if args.key?(:producer_forwarding_rule)
31948
+ @psc_service_attachment_id = args[:psc_service_attachment_id] if args.key?(:psc_service_attachment_id)
31675
31949
  @region = args[:region] if args.key?(:region)
31676
31950
  @self_link = args[:self_link] if args.key?(:self_link)
31951
+ @target_service = args[:target_service] if args.key?(:target_service)
31677
31952
  end
31678
31953
  end
31679
31954
 
@@ -31800,7 +32075,45 @@ module Google
31800
32075
  end
31801
32076
  end
31802
32077
 
32078
+ # [Output Only] A connection connected to this service attachment.
32079
+ class ServiceAttachmentConnectedEndpoint
32080
+ include Google::Apis::Core::Hashable
32081
+
32082
+ # The url of a connected endpoint.
32083
+ # Corresponds to the JSON property `endpoint`
32084
+ # @return [String]
32085
+ attr_accessor :endpoint
32086
+
32087
+ # The url of a consumer forwarding rule. [Deprecated] Do not use.
32088
+ # Corresponds to the JSON property `forwardingRule`
32089
+ # @return [String]
32090
+ attr_accessor :forwarding_rule
32091
+
32092
+ # The PSC connection id of the connected endpoint.
32093
+ # Corresponds to the JSON property `pscConnectionId`
32094
+ # @return [Fixnum]
32095
+ attr_accessor :psc_connection_id
32096
+
32097
+ # The status of a connected endpoint to this service attachment.
32098
+ # Corresponds to the JSON property `status`
32099
+ # @return [String]
32100
+ attr_accessor :status
32101
+
32102
+ def initialize(**args)
32103
+ update!(**args)
32104
+ end
32105
+
32106
+ # Update properties of this object
32107
+ def update!(**args)
32108
+ @endpoint = args[:endpoint] if args.key?(:endpoint)
32109
+ @forwarding_rule = args[:forwarding_rule] if args.key?(:forwarding_rule)
32110
+ @psc_connection_id = args[:psc_connection_id] if args.key?(:psc_connection_id)
32111
+ @status = args[:status] if args.key?(:status)
32112
+ end
32113
+ end
32114
+
31803
32115
  # [Output Only] A consumer forwarding rule connected to this service attachment.
32116
+ # [Deprecated] Do not use.
31804
32117
  class ServiceAttachmentConsumerForwardingRule
31805
32118
  include Google::Apis::Core::Hashable
31806
32119
 
@@ -31809,6 +32122,11 @@ module Google
31809
32122
  # @return [String]
31810
32123
  attr_accessor :forwarding_rule
31811
32124
 
32125
+ # The PSC connection id of the PSC Forwarding Rule.
32126
+ # Corresponds to the JSON property `pscConnectionId`
32127
+ # @return [Fixnum]
32128
+ attr_accessor :psc_connection_id
32129
+
31812
32130
  # The status of the forwarding rule.
31813
32131
  # Corresponds to the JSON property `status`
31814
32132
  # @return [String]
@@ -31821,10 +32139,36 @@ module Google
31821
32139
  # Update properties of this object
31822
32140
  def update!(**args)
31823
32141
  @forwarding_rule = args[:forwarding_rule] if args.key?(:forwarding_rule)
32142
+ @psc_connection_id = args[:psc_connection_id] if args.key?(:psc_connection_id)
31824
32143
  @status = args[:status] if args.key?(:status)
31825
32144
  end
31826
32145
  end
31827
32146
 
32147
+ #
32148
+ class ServiceAttachmentConsumerProjectLimit
32149
+ include Google::Apis::Core::Hashable
32150
+
32151
+ # The value of the limit to set.
32152
+ # Corresponds to the JSON property `connectionLimit`
32153
+ # @return [Fixnum]
32154
+ attr_accessor :connection_limit
32155
+
32156
+ # The project id or number for the project to set the limit for.
32157
+ # Corresponds to the JSON property `projectIdOrNum`
32158
+ # @return [String]
32159
+ attr_accessor :project_id_or_num
32160
+
32161
+ def initialize(**args)
32162
+ update!(**args)
32163
+ end
32164
+
32165
+ # Update properties of this object
32166
+ def update!(**args)
32167
+ @connection_limit = args[:connection_limit] if args.key?(:connection_limit)
32168
+ @project_id_or_num = args[:project_id_or_num] if args.key?(:project_id_or_num)
32169
+ end
32170
+ end
32171
+
31828
32172
  #
31829
32173
  class ServiceAttachmentList
31830
32174
  include Google::Apis::Core::Hashable
@@ -31948,9 +32292,9 @@ module Google
31948
32292
  include Google::Apis::Core::Hashable
31949
32293
 
31950
32294
  # A list of ServiceAttachments contained in this scope.
31951
- # Corresponds to the JSON property `resources`
32295
+ # Corresponds to the JSON property `serviceAttachments`
31952
32296
  # @return [Array<Google::Apis::ComputeBeta::ServiceAttachment>]
31953
- attr_accessor :resources
32297
+ attr_accessor :service_attachments
31954
32298
 
31955
32299
  # Informational warning which replaces the list of service attachments when the
31956
32300
  # list is empty.
@@ -31964,7 +32308,7 @@ module Google
31964
32308
 
31965
32309
  # Update properties of this object
31966
32310
  def update!(**args)
31967
- @resources = args[:resources] if args.key?(:resources)
32311
+ @service_attachments = args[:service_attachments] if args.key?(:service_attachments)
31968
32312
  @warning = args[:warning] if args.key?(:warning)
31969
32313
  end
31970
32314
 
@@ -32751,7 +33095,7 @@ module Google
32751
33095
  # @return [String]
32752
33096
  attr_accessor :post_key_revocation_action_type
32753
33097
 
32754
- # Sets the scheduling options for an Instance. NextID: 20
33098
+ # Sets the scheduling options for an Instance. NextID: 21
32755
33099
  # Corresponds to the JSON property `scheduling`
32756
33100
  # @return [Google::Apis::ComputeBeta::Scheduling]
32757
33101
  attr_accessor :scheduling
@@ -33749,6 +34093,12 @@ module Google
33749
34093
  attr_accessor :enable_flow_logs
33750
34094
  alias_method :enable_flow_logs?, :enable_flow_logs
33751
34095
 
34096
+ # [Output Only] The range of external IPv6 addresses that are owned by this
34097
+ # subnetwork.
34098
+ # Corresponds to the JSON property `externalIpv6Prefix`
34099
+ # @return [String]
34100
+ attr_accessor :external_ipv6_prefix
34101
+
33752
34102
  # Fingerprint of this resource. A hash of the contents stored in this object.
33753
34103
  # This field is used in optimistic locking. This field will be ignored when
33754
34104
  # inserting a Subnetwork. An up-to-date fingerprint must be provided in order to
@@ -33782,6 +34132,14 @@ module Google
33782
34132
  # @return [String]
33783
34133
  attr_accessor :ip_cidr_range
33784
34134
 
34135
+ # The access type of IPv6 address this subnet holds. It's immutable and can only
34136
+ # be specified during creation or the first time the subnet is updated into
34137
+ # IPV4_IPV6 dual stack. If the ipv6_type is EXTERNAL then this subnet cannot
34138
+ # enable direct path.
34139
+ # Corresponds to the JSON property `ipv6AccessType`
34140
+ # @return [String]
34141
+ attr_accessor :ipv6_access_type
34142
+
33785
34143
  # [Output Only] The range of internal IPv6 addresses that are owned by this
33786
34144
  # subnetwork.
33787
34145
  # Corresponds to the JSON property `ipv6CidrRange`
@@ -33872,14 +34230,19 @@ module Google
33872
34230
  # @return [String]
33873
34231
  attr_accessor :self_link
33874
34232
 
34233
+ # The stack type for this subnet to identify whether the IPv6 feature is enabled
34234
+ # or not. If not specified IPV4_ONLY will be used.
34235
+ # This field can be both set at resource creation time and updated using patch.
34236
+ # Corresponds to the JSON property `stackType`
34237
+ # @return [String]
34238
+ attr_accessor :stack_type
34239
+
33875
34240
  # [Output Only] The state of the subnetwork, which can be one of the following
33876
34241
  # values: READY: Subnetwork is created and ready to use DRAINING: only
33877
34242
  # applicable to subnetworks that have the purpose set to
33878
34243
  # INTERNAL_HTTPS_LOAD_BALANCER and indicates that connections to the load
33879
34244
  # balancer are being drained. A subnetwork that is draining cannot be used or
33880
- # modified until it reaches a status of READY CREATING: Subnetwork is
33881
- # provisioning DELETING: Subnetwork is being deleted UPDATING: Subnetwork is
33882
- # being updated
34245
+ # modified until it reaches a status of READY
33883
34246
  # Corresponds to the JSON property `state`
33884
34247
  # @return [String]
33885
34248
  attr_accessor :state
@@ -33894,10 +34257,12 @@ module Google
33894
34257
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
33895
34258
  @description = args[:description] if args.key?(:description)
33896
34259
  @enable_flow_logs = args[:enable_flow_logs] if args.key?(:enable_flow_logs)
34260
+ @external_ipv6_prefix = args[:external_ipv6_prefix] if args.key?(:external_ipv6_prefix)
33897
34261
  @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
33898
34262
  @gateway_address = args[:gateway_address] if args.key?(:gateway_address)
33899
34263
  @id = args[:id] if args.key?(:id)
33900
34264
  @ip_cidr_range = args[:ip_cidr_range] if args.key?(:ip_cidr_range)
34265
+ @ipv6_access_type = args[:ipv6_access_type] if args.key?(:ipv6_access_type)
33901
34266
  @ipv6_cidr_range = args[:ipv6_cidr_range] if args.key?(:ipv6_cidr_range)
33902
34267
  @kind = args[:kind] if args.key?(:kind)
33903
34268
  @log_config = args[:log_config] if args.key?(:log_config)
@@ -33910,6 +34275,7 @@ module Google
33910
34275
  @role = args[:role] if args.key?(:role)
33911
34276
  @secondary_ip_ranges = args[:secondary_ip_ranges] if args.key?(:secondary_ip_ranges)
33912
34277
  @self_link = args[:self_link] if args.key?(:self_link)
34278
+ @stack_type = args[:stack_type] if args.key?(:stack_type)
33913
34279
  @state = args[:state] if args.key?(:state)
33914
34280
  end
33915
34281
  end
@@ -34381,7 +34747,9 @@ module Google
34381
34747
  end
34382
34748
  end
34383
34749
 
34384
- # Subsetting options to make L4 ILB support any number of backend instances
34750
+ # Subsetting configuration for this BackendService. Currently this is applicable
34751
+ # only for Internal TCP/UDP load balancing, Internal HTTP(S) load balancing and
34752
+ # Traffic Director.
34385
34753
  class Subsetting
34386
34754
  include Google::Apis::Core::Hashable
34387
34755
 
@@ -35287,7 +35655,8 @@ module Google
35287
35655
  include Google::Apis::Core::Hashable
35288
35656
 
35289
35657
  # New set of SslCertificate resources to associate with this TargetHttpsProxy
35290
- # resource. Currently exactly one SslCertificate resource must be specified.
35658
+ # resource. At least one SSL certificate must be specified. Currently, you may
35659
+ # specify up to 15 SSL certificates.
35291
35660
  # Corresponds to the JSON property `sslCertificates`
35292
35661
  # @return [Array<String>]
35293
35662
  attr_accessor :ssl_certificates
@@ -35447,6 +35816,8 @@ module Google
35447
35816
  # URLs to SslCertificate resources that are used to authenticate connections
35448
35817
  # between users and the load balancer. At least one SSL certificate must be
35449
35818
  # specified. Currently, you may specify up to 15 SSL certificates.
35819
+ # sslCertificates do not apply when the load balancing scheme is set to
35820
+ # INTERNAL_SELF_MANAGED.
35450
35821
  # Corresponds to the JSON property `sslCertificates`
35451
35822
  # @return [Array<String>]
35452
35823
  attr_accessor :ssl_certificates
@@ -36798,7 +37169,8 @@ module Google
36798
37169
  include Google::Apis::Core::Hashable
36799
37170
 
36800
37171
  # New set of URLs to SslCertificate resources to associate with this
36801
- # TargetSslProxy. Currently exactly one ssl certificate must be specified.
37172
+ # TargetSslProxy. At least one SSL certificate must be specified. Currently, you
37173
+ # may specify up to 15 SSL certificates.
36802
37174
  # Corresponds to the JSON property `sslCertificates`
36803
37175
  # @return [Array<String>]
36804
37176
  attr_accessor :ssl_certificates
@@ -36872,7 +37244,8 @@ module Google
36872
37244
 
36873
37245
  # URLs to SslCertificate resources that are used to authenticate connections to
36874
37246
  # Backends. At least one SSL certificate must be specified. Currently, you may
36875
- # specify up to 15 SSL certificates.
37247
+ # specify up to 15 SSL certificates. sslCertificates do not apply when the load
37248
+ # balancing scheme is set to INTERNAL_SELF_MANAGED.
36876
37249
  # Corresponds to the JSON property `sslCertificates`
36877
37250
  # @return [Array<String>]
36878
37251
  attr_accessor :ssl_certificates
@@ -37827,6 +38200,31 @@ module Google
37827
38200
  end
37828
38201
  end
37829
38202
 
38203
+ #
38204
+ class Uint128
38205
+ include Google::Apis::Core::Hashable
38206
+
38207
+ #
38208
+ # Corresponds to the JSON property `high`
38209
+ # @return [Fixnum]
38210
+ attr_accessor :high
38211
+
38212
+ #
38213
+ # Corresponds to the JSON property `low`
38214
+ # @return [Fixnum]
38215
+ attr_accessor :low
38216
+
38217
+ def initialize(**args)
38218
+ update!(**args)
38219
+ end
38220
+
38221
+ # Update properties of this object
38222
+ def update!(**args)
38223
+ @high = args[:high] if args.key?(:high)
38224
+ @low = args[:low] if args.key?(:low)
38225
+ end
38226
+ end
38227
+
37830
38228
  # Represents a URL Map resource.
37831
38229
  # Google Compute Engine has two URL Map resources:
37832
38230
  # * [Global](/compute/docs/reference/rest/`$api_version`/urlMaps) * [Regional](/
@@ -38651,7 +39049,9 @@ module Google
38651
39049
  # requests. If the number of results is larger than maxResults, use the
38652
39050
  # nextPageToken as a value for the query parameter pageToken in the next list
38653
39051
  # request. Subsequent list requests will have their own nextPageToken to
38654
- # continue paging through the results.
39052
+ # continue paging through the results. In special cases listUsable may return 0
39053
+ # subnetworks and nextPageToken which still should be used to get the next page
39054
+ # of results.
38655
39055
  # Corresponds to the JSON property `nextPageToken`
38656
39056
  # @return [String]
38657
39057
  attr_accessor :next_page_token
@@ -39055,7 +39455,7 @@ module Google
39055
39455
  # @return [String]
39056
39456
  attr_accessor :self_link
39057
39457
 
39058
- # A list of interfaces on this VPN gateway.
39458
+ # The list of VPN interfaces associated with this VPN gateway.
39059
39459
  # Corresponds to the JSON property `vpnInterfaces`
39060
39460
  # @return [Array<Google::Apis::ComputeBeta::VpnGatewayVpnGatewayInterface>]
39061
39461
  attr_accessor :vpn_interfaces
@@ -39448,21 +39848,30 @@ module Google
39448
39848
  class VpnGatewayVpnGatewayInterface
39449
39849
  include Google::Apis::Core::Hashable
39450
39850
 
39451
- # The numeric ID of this VPN gateway interface.
39851
+ # [Output Only] Numeric identifier for this VPN interface associated with the
39852
+ # VPN gateway.
39452
39853
  # Corresponds to the JSON property `id`
39453
39854
  # @return [Fixnum]
39454
39855
  attr_accessor :id
39455
39856
 
39456
- # URL of the interconnect attachment resource. When the value of this field is
39457
- # present, the VPN Gateway will be used for IPsec-encrypted Cloud Interconnect;
39458
- # all Egress or Ingress traffic for this VPN Gateway interface will go through
39459
- # the specified interconnect attachment resource.
39460
- # Not currently available in all Interconnect locations.
39857
+ # URL of the VLAN attachment (interconnectAttachment) resource for this VPN
39858
+ # gateway interface. When the value of this field is present, the VPN gateway is
39859
+ # used for IPsec-encrypted Cloud Interconnect; all egress or ingress traffic for
39860
+ # this VPN gateway interface goes through the specified VLAN attachment resource.
39861
+ # Not currently available publicly.
39461
39862
  # Corresponds to the JSON property `interconnectAttachment`
39462
39863
  # @return [String]
39463
39864
  attr_accessor :interconnect_attachment
39464
39865
 
39465
- # [Output Only] The external IP address for this VPN gateway interface.
39866
+ # [Output Only] IP address for this VPN interface associated with the VPN
39867
+ # gateway. The IP address could be either a regional external IP address or a
39868
+ # regional internal IP address. The two IP addresses for a VPN gateway must be
39869
+ # all regional external or regional internal IP addresses. There cannot be a mix
39870
+ # of regional external IP addresses and regional internal IP addresses. For
39871
+ # IPsec-encrypted Cloud Interconnect, the IP addresses for both interfaces could
39872
+ # either be regional internal IP addresses or regional external IP addresses.
39873
+ # For regular (non IPsec-encrypted Cloud Interconnect) HA VPN tunnels, the IP
39874
+ # address must be a regional external IP address.
39466
39875
  # Corresponds to the JSON property `ipAddress`
39467
39876
  # @return [String]
39468
39877
  attr_accessor :ip_address