google-apis-compute_v1 0.84.0 → 0.86.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.
@@ -1203,6 +1203,91 @@ module Google
1203
1203
  end
1204
1204
  end
1205
1205
 
1206
+ # This reservation type is specified by total resource amounts (e.g. total count
1207
+ # of CPUs) and can account for multiple instance SKUs. In other words, one can
1208
+ # create instances of varying shapes against this reservation.
1209
+ class AllocationAggregateReservation
1210
+ include Google::Apis::Core::Hashable
1211
+
1212
+ # [Output only] List of resources currently in use.
1213
+ # Corresponds to the JSON property `inUseResources`
1214
+ # @return [Array<Google::Apis::ComputeV1::AllocationAggregateReservationReservedResourceInfo>]
1215
+ attr_accessor :in_use_resources
1216
+
1217
+ # List of reserved resources (CPUs, memory, accelerators).
1218
+ # Corresponds to the JSON property `reservedResources`
1219
+ # @return [Array<Google::Apis::ComputeV1::AllocationAggregateReservationReservedResourceInfo>]
1220
+ attr_accessor :reserved_resources
1221
+
1222
+ # The VM family that all instances scheduled against this reservation must
1223
+ # belong to.
1224
+ # Corresponds to the JSON property `vmFamily`
1225
+ # @return [String]
1226
+ attr_accessor :vm_family
1227
+
1228
+ # The workload type of the instances that will target this reservation.
1229
+ # Corresponds to the JSON property `workloadType`
1230
+ # @return [String]
1231
+ attr_accessor :workload_type
1232
+
1233
+ def initialize(**args)
1234
+ update!(**args)
1235
+ end
1236
+
1237
+ # Update properties of this object
1238
+ def update!(**args)
1239
+ @in_use_resources = args[:in_use_resources] if args.key?(:in_use_resources)
1240
+ @reserved_resources = args[:reserved_resources] if args.key?(:reserved_resources)
1241
+ @vm_family = args[:vm_family] if args.key?(:vm_family)
1242
+ @workload_type = args[:workload_type] if args.key?(:workload_type)
1243
+ end
1244
+ end
1245
+
1246
+ #
1247
+ class AllocationAggregateReservationReservedResourceInfo
1248
+ include Google::Apis::Core::Hashable
1249
+
1250
+ # Properties of accelerator resources in this reservation.
1251
+ # Corresponds to the JSON property `accelerator`
1252
+ # @return [Google::Apis::ComputeV1::AllocationAggregateReservationReservedResourceInfoAccelerator]
1253
+ attr_accessor :accelerator
1254
+
1255
+ def initialize(**args)
1256
+ update!(**args)
1257
+ end
1258
+
1259
+ # Update properties of this object
1260
+ def update!(**args)
1261
+ @accelerator = args[:accelerator] if args.key?(:accelerator)
1262
+ end
1263
+ end
1264
+
1265
+ #
1266
+ class AllocationAggregateReservationReservedResourceInfoAccelerator
1267
+ include Google::Apis::Core::Hashable
1268
+
1269
+ # Number of accelerators of specified type.
1270
+ # Corresponds to the JSON property `acceleratorCount`
1271
+ # @return [Fixnum]
1272
+ attr_accessor :accelerator_count
1273
+
1274
+ # Full or partial URL to accelerator type. e.g. "projects/`PROJECT`/zones/`ZONE`/
1275
+ # acceleratorTypes/ct4l"
1276
+ # Corresponds to the JSON property `acceleratorType`
1277
+ # @return [String]
1278
+ attr_accessor :accelerator_type
1279
+
1280
+ def initialize(**args)
1281
+ update!(**args)
1282
+ end
1283
+
1284
+ # Update properties of this object
1285
+ def update!(**args)
1286
+ @accelerator_count = args[:accelerator_count] if args.key?(:accelerator_count)
1287
+ @accelerator_type = args[:accelerator_type] if args.key?(:accelerator_type)
1288
+ end
1289
+ end
1290
+
1206
1291
  # [Output Only] Contains output only fields.
1207
1292
  class AllocationResourceStatus
1208
1293
  include Google::Apis::Core::Hashable
@@ -1585,6 +1670,12 @@ module Google
1585
1670
  # @return [String]
1586
1671
  attr_accessor :disk_type
1587
1672
 
1673
+ # Whether this disk is using confidential compute mode.
1674
+ # Corresponds to the JSON property `enableConfidentialCompute`
1675
+ # @return [Boolean]
1676
+ attr_accessor :enable_confidential_compute
1677
+ alias_method :enable_confidential_compute?, :enable_confidential_compute
1678
+
1588
1679
  # Labels to apply to this disk. These can be later modified by the disks.
1589
1680
  # setLabels method. This field is only applicable for persistent disks.
1590
1681
  # Corresponds to the JSON property `labels`
@@ -1690,6 +1781,7 @@ module Google
1690
1781
  @disk_name = args[:disk_name] if args.key?(:disk_name)
1691
1782
  @disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb)
1692
1783
  @disk_type = args[:disk_type] if args.key?(:disk_type)
1784
+ @enable_confidential_compute = args[:enable_confidential_compute] if args.key?(:enable_confidential_compute)
1693
1785
  @labels = args[:labels] if args.key?(:labels)
1694
1786
  @licenses = args[:licenses] if args.key?(:licenses)
1695
1787
  @on_update_action = args[:on_update_action] if args.key?(:on_update_action)
@@ -3228,13 +3320,13 @@ module Google
3228
3320
  class BackendService
3229
3321
  include Google::Apis::Core::Hashable
3230
3322
 
3231
- # Lifetime of cookies in seconds. This setting is applicable to external and
3232
- # internal HTTP(S) load balancers and Traffic Director and requires
3233
- # GENERATED_COOKIE or HTTP_COOKIE session affinity. If set to 0, the cookie is
3234
- # non-persistent and lasts only until the end of the browser session (or
3235
- # equivalent). The maximum allowed value is two weeks (1,209,600). Not supported
3236
- # when the backend service is referenced by a URL map that is bound to target
3237
- # gRPC proxy that has validateForProxyless field set to true.
3323
+ # Lifetime of cookies in seconds. This setting is applicable to Application Load
3324
+ # Balancers and Traffic Director and requires GENERATED_COOKIE or HTTP_COOKIE
3325
+ # session affinity. If set to 0, the cookie is non-persistent and lasts only
3326
+ # until the end of the browser session (or equivalent). The maximum allowed
3327
+ # value is two weeks (1,209,600). Not supported when the backend service is
3328
+ # referenced by a URL map that is bound to target gRPC proxy that has
3329
+ # validateForProxyless field set to true.
3238
3330
  # Corresponds to the JSON property `affinityCookieTtlSec`
3239
3331
  # @return [Fixnum]
3240
3332
  attr_accessor :affinity_cookie_ttl_sec
@@ -3305,23 +3397,23 @@ module Google
3305
3397
  # @return [String]
3306
3398
  attr_accessor :edge_security_policy
3307
3399
 
3308
- # If true, enables Cloud CDN for the backend service of an external HTTP(S) load
3309
- # balancer.
3400
+ # If true, enables Cloud CDN for the backend service of a global external
3401
+ # Application Load Balancer.
3310
3402
  # Corresponds to the JSON property `enableCDN`
3311
3403
  # @return [Boolean]
3312
3404
  attr_accessor :enable_cdn
3313
3405
  alias_method :enable_cdn?, :enable_cdn
3314
3406
 
3315
- # For load balancers that have configurable failover: [Internal TCP/UDP Load
3316
- # Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-
3317
- # overview) and [external TCP/UDP Load Balancing](https://cloud.google.com/load-
3318
- # balancing/docs/network/networklb-failover-overview). On failover or failback,
3319
- # this field indicates whether connection draining will be honored. Google Cloud
3320
- # has a fixed connection draining timeout of 10 minutes. A setting of true
3321
- # terminates existing TCP connections to the active pool during failover and
3322
- # failback, immediately draining traffic. A setting of false allows existing TCP
3323
- # connections to persist, even on VMs no longer in the active pool, for up to
3324
- # the duration of the connection draining timeout (10 minutes).
3407
+ # For load balancers that have configurable failover: [Internal passthrough
3408
+ # Network Load Balancers](https://cloud.google.com/load-balancing/docs/internal/
3409
+ # failover-overview) and [external passthrough Network Load Balancers](https://
3410
+ # cloud.google.com/load-balancing/docs/network/networklb-failover-overview). On
3411
+ # failover or failback, this field indicates whether connection draining will be
3412
+ # honored. Google Cloud has a fixed connection draining timeout of 10 minutes. A
3413
+ # setting of true terminates existing TCP connections to the active pool during
3414
+ # failover and failback, immediately draining traffic. A setting of false allows
3415
+ # existing TCP connections to persist, even on VMs no longer in the active pool,
3416
+ # for up to the duration of the connection draining timeout (10 minutes).
3325
3417
  # Corresponds to the JSON property `failoverPolicy`
3326
3418
  # @return [Google::Apis::ComputeV1::BackendServiceFailoverPolicy]
3327
3419
  attr_accessor :failover_policy
@@ -3454,8 +3546,8 @@ module Google
3454
3546
  attr_accessor :outlier_detection
3455
3547
 
3456
3548
  # Deprecated in favor of portName. The TCP port to connect on the backend. The
3457
- # default value is 80. For Internal TCP/UDP Load Balancing and Network Load
3458
- # Balancing, omit port.
3549
+ # default value is 80. For internal passthrough Network Load Balancers and
3550
+ # external passthrough Network Load Balancers, omit port.
3459
3551
  # Corresponds to the JSON property `port`
3460
3552
  # @return [Fixnum]
3461
3553
  attr_accessor :port
@@ -3464,8 +3556,8 @@ module Google
3464
3556
  # communication to the backend VMs in that group. The named port must be [
3465
3557
  # defined on each backend instance group](https://cloud.google.com/load-
3466
3558
  # balancing/docs/backend-service#named_ports). This parameter has no meaning if
3467
- # the backends are NEGs. For Internal TCP/UDP Load Balancing and Network Load
3468
- # Balancing, omit port_name.
3559
+ # the backends are NEGs. For internal passthrough Network Load Balancers and
3560
+ # external passthrough Network Load Balancers, omit port_name.
3469
3561
  # Corresponds to the JSON property `portName`
3470
3562
  # @return [String]
3471
3563
  attr_accessor :port_name
@@ -3947,20 +4039,20 @@ module Google
3947
4039
  # @return [String]
3948
4040
  attr_accessor :connection_persistence_on_unhealthy_backends
3949
4041
 
3950
- # Enable Strong Session Affinity for Network Load Balancing. This option is not
3951
- # available publicly.
4042
+ # Enable Strong Session Affinity for external passthrough Network Load Balancers.
4043
+ # This option is not available publicly.
3952
4044
  # Corresponds to the JSON property `enableStrongAffinity`
3953
4045
  # @return [Boolean]
3954
4046
  attr_accessor :enable_strong_affinity
3955
4047
  alias_method :enable_strong_affinity?, :enable_strong_affinity
3956
4048
 
3957
4049
  # Specifies how long to keep a Connection Tracking entry while there is no
3958
- # matching traffic (in seconds). For Internal TCP/UDP Load Balancing: - The
3959
- # minimum (default) is 10 minutes and the maximum is 16 hours. - It can be set
3960
- # only if Connection Tracking is less than 5-tuple (i.e. Session Affinity is
3961
- # CLIENT_IP_NO_DESTINATION, CLIENT_IP or CLIENT_IP_PROTO, and Tracking Mode is
3962
- # PER_SESSION). For Network Load Balancer the default is 60 seconds. This option
3963
- # is not available publicly.
4050
+ # matching traffic (in seconds). For internal passthrough Network Load Balancers:
4051
+ # - The minimum (default) is 10 minutes and the maximum is 16 hours. - It can
4052
+ # be set only if Connection Tracking is less than 5-tuple (i.e. Session Affinity
4053
+ # is CLIENT_IP_NO_DESTINATION, CLIENT_IP or CLIENT_IP_PROTO, and Tracking Mode
4054
+ # is PER_SESSION). For external passthrough Network Load Balancers the default
4055
+ # is 60 seconds. This option is not available publicly.
3964
4056
  # Corresponds to the JSON property `idleTimeoutSec`
3965
4057
  # @return [Fixnum]
3966
4058
  attr_accessor :idle_timeout_sec
@@ -3991,16 +4083,16 @@ module Google
3991
4083
  end
3992
4084
  end
3993
4085
 
3994
- # For load balancers that have configurable failover: [Internal TCP/UDP Load
3995
- # Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-
3996
- # overview) and [external TCP/UDP Load Balancing](https://cloud.google.com/load-
3997
- # balancing/docs/network/networklb-failover-overview). On failover or failback,
3998
- # this field indicates whether connection draining will be honored. Google Cloud
3999
- # has a fixed connection draining timeout of 10 minutes. A setting of true
4000
- # terminates existing TCP connections to the active pool during failover and
4001
- # failback, immediately draining traffic. A setting of false allows existing TCP
4002
- # connections to persist, even on VMs no longer in the active pool, for up to
4003
- # the duration of the connection draining timeout (10 minutes).
4086
+ # For load balancers that have configurable failover: [Internal passthrough
4087
+ # Network Load Balancers](https://cloud.google.com/load-balancing/docs/internal/
4088
+ # failover-overview) and [external passthrough Network Load Balancers](https://
4089
+ # cloud.google.com/load-balancing/docs/network/networklb-failover-overview). On
4090
+ # failover or failback, this field indicates whether connection draining will be
4091
+ # honored. Google Cloud has a fixed connection draining timeout of 10 minutes. A
4092
+ # setting of true terminates existing TCP connections to the active pool during
4093
+ # failover and failback, immediately draining traffic. A setting of false allows
4094
+ # existing TCP connections to persist, even on VMs no longer in the active pool,
4095
+ # for up to the duration of the connection draining timeout (10 minutes).
4004
4096
  class BackendServiceFailoverPolicy
4005
4097
  include Google::Apis::Core::Hashable
4006
4098
 
@@ -4014,10 +4106,10 @@ module Google
4014
4106
  # and all backup backend VMs are unhealthy.If set to false, connections are
4015
4107
  # distributed among all primary VMs when all primary and all backup backend VMs
4016
4108
  # are unhealthy. For load balancers that have configurable failover: [Internal
4017
- # TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/
4018
- # failover-overview) and [external TCP/UDP Load Balancing](https://cloud.google.
4019
- # com/load-balancing/docs/network/networklb-failover-overview). The default is
4020
- # false.
4109
+ # passthrough Network Load Balancers](https://cloud.google.com/load-balancing/
4110
+ # docs/internal/failover-overview) and [external passthrough Network Load
4111
+ # Balancers](https://cloud.google.com/load-balancing/docs/network/networklb-
4112
+ # failover-overview). The default is false.
4021
4113
  # Corresponds to the JSON property `dropTrafficIfUnhealthy`
4022
4114
  # @return [Boolean]
4023
4115
  attr_accessor :drop_traffic_if_unhealthy
@@ -4911,21 +5003,43 @@ module Google
4911
5003
  # project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * `group:`emailid``: An
4912
5004
  # email address that represents a Google group. For example, `admins@example.com`
4913
5005
  # . * `domain:`domain``: The G Suite domain (primary) that represents all the
4914
- # users of that domain. For example, `google.com` or `example.com`. * `deleted:
4915
- # user:`emailid`?uid=`uniqueid``: An email address (plus unique identifier)
4916
- # representing a user that has been recently deleted. For example, `alice@
4917
- # example.com?uid=123456789012345678901`. If the user is recovered, this value
4918
- # reverts to `user:`emailid`` and the recovered user retains the role in the
4919
- # binding. * `deleted:serviceAccount:`emailid`?uid=`uniqueid``: An email address
4920
- # (plus unique identifier) representing a service account that has been recently
4921
- # deleted. For example, `my-other-app@appspot.gserviceaccount.com?uid=
5006
+ # users of that domain. For example, `google.com` or `example.com`. * `principal:
5007
+ # //iam.googleapis.com/locations/global/workforcePools/`pool_id`/subject/`
5008
+ # subject_attribute_value``: A single identity in a workforce identity pool. * `
5009
+ # principalSet://iam.googleapis.com/locations/global/workforcePools/`pool_id`/
5010
+ # group/`group_id``: All workforce identities in a group. * `principalSet://iam.
5011
+ # googleapis.com/locations/global/workforcePools/`pool_id`/attribute.`
5012
+ # attribute_name`/`attribute_value``: All workforce identities with a specific
5013
+ # attribute value. * `principalSet://iam.googleapis.com/locations/global/
5014
+ # workforcePools/`pool_id`/*`: All identities in a workforce identity pool. * `
5015
+ # principal://iam.googleapis.com/projects/`project_number`/locations/global/
5016
+ # workloadIdentityPools/`pool_id`/subject/`subject_attribute_value``: A single
5017
+ # identity in a workload identity pool. * `principalSet://iam.googleapis.com/
5018
+ # projects/`project_number`/locations/global/workloadIdentityPools/`pool_id`/
5019
+ # group/`group_id``: A workload identity pool group. * `principalSet://iam.
5020
+ # googleapis.com/projects/`project_number`/locations/global/
5021
+ # workloadIdentityPools/`pool_id`/attribute.`attribute_name`/`attribute_value``:
5022
+ # All identities in a workload identity pool with a certain attribute. * `
5023
+ # principalSet://iam.googleapis.com/projects/`project_number`/locations/global/
5024
+ # workloadIdentityPools/`pool_id`/*`: All identities in a workload identity pool.
5025
+ # * `deleted:user:`emailid`?uid=`uniqueid``: An email address (plus unique
5026
+ # identifier) representing a user that has been recently deleted. For example, `
5027
+ # alice@example.com?uid=123456789012345678901`. If the user is recovered, this
5028
+ # value reverts to `user:`emailid`` and the recovered user retains the role in
5029
+ # the binding. * `deleted:serviceAccount:`emailid`?uid=`uniqueid``: An email
5030
+ # address (plus unique identifier) representing a service account that has been
5031
+ # recently deleted. For example, `my-other-app@appspot.gserviceaccount.com?uid=
4922
5032
  # 123456789012345678901`. If the service account is undeleted, this value
4923
5033
  # reverts to `serviceAccount:`emailid`` and the undeleted service account
4924
5034
  # retains the role in the binding. * `deleted:group:`emailid`?uid=`uniqueid``:
4925
5035
  # An email address (plus unique identifier) representing a Google group that has
4926
5036
  # been recently deleted. For example, `admins@example.com?uid=
4927
5037
  # 123456789012345678901`. If the group is recovered, this value reverts to `
4928
- # group:`emailid`` and the recovered group retains the role in the binding.
5038
+ # group:`emailid`` and the recovered group retains the role in the binding. * `
5039
+ # deleted:principal://iam.googleapis.com/locations/global/workforcePools/`
5040
+ # pool_id`/subject/`subject_attribute_value``: Deleted single identity in a
5041
+ # workforce identity pool. For example, `deleted:principal://iam.googleapis.com/
5042
+ # locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value`.
4929
5043
  # Corresponds to the JSON property `members`
4930
5044
  # @return [Array<String>]
4931
5045
  attr_accessor :members
@@ -5320,6 +5434,15 @@ module Google
5320
5434
  # @return [String]
5321
5435
  attr_accessor :end_timestamp
5322
5436
 
5437
+ # Specifies the already existing reservations to attach to the Commitment. This
5438
+ # field is optional, and it can be a full or partial URL. For example, the
5439
+ # following are valid URLs to an reservation: - https://www.googleapis.com/
5440
+ # compute/v1/projects/project/zones/zone /reservations/reservation - projects/
5441
+ # project/zones/zone/reservations/reservation
5442
+ # Corresponds to the JSON property `existingReservations`
5443
+ # @return [Array<String>]
5444
+ attr_accessor :existing_reservations
5445
+
5323
5446
  # [Output Only] The unique identifier for the resource. This identifier is
5324
5447
  # defined by the server.
5325
5448
  # Corresponds to the JSON property `id`
@@ -5363,7 +5486,7 @@ module Google
5363
5486
  # @return [String]
5364
5487
  attr_accessor :region
5365
5488
 
5366
- # List of create-on-create reseravtions for this commitment.
5489
+ # List of create-on-create reservations for this commitment.
5367
5490
  # Corresponds to the JSON property `reservations`
5368
5491
  # @return [Array<Google::Apis::ComputeV1::Reservation>]
5369
5492
  attr_accessor :reservations
@@ -5420,6 +5543,7 @@ module Google
5420
5543
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
5421
5544
  @description = args[:description] if args.key?(:description)
5422
5545
  @end_timestamp = args[:end_timestamp] if args.key?(:end_timestamp)
5546
+ @existing_reservations = args[:existing_reservations] if args.key?(:existing_reservations)
5423
5547
  @id = args[:id] if args.key?(:id)
5424
5548
  @kind = args[:kind] if args.key?(:kind)
5425
5549
  @license_resource = args[:license_resource] if args.key?(:license_resource)
@@ -6203,6 +6327,12 @@ module Google
6203
6327
  # @return [Google::Apis::ComputeV1::CustomerEncryptionKey]
6204
6328
  attr_accessor :disk_encryption_key
6205
6329
 
6330
+ # Whether this disk is using confidential compute mode.
6331
+ # Corresponds to the JSON property `enableConfidentialCompute`
6332
+ # @return [Boolean]
6333
+ attr_accessor :enable_confidential_compute
6334
+ alias_method :enable_confidential_compute?, :enable_confidential_compute
6335
+
6206
6336
  # A list of features to enable on the guest operating system. Applicable only
6207
6337
  # for bootable images. Read Enabling guest operating system features to see a
6208
6338
  # list of available options.
@@ -6330,6 +6460,12 @@ module Google
6330
6460
  # @return [Google::Apis::ComputeV1::DiskResourceStatus]
6331
6461
  attr_accessor :resource_status
6332
6462
 
6463
+ # Output only. Reserved for future use.
6464
+ # Corresponds to the JSON property `satisfiesPzi`
6465
+ # @return [Boolean]
6466
+ attr_accessor :satisfies_pzi
6467
+ alias_method :satisfies_pzi?, :satisfies_pzi
6468
+
6333
6469
  # [Output Only] Reserved for future use.
6334
6470
  # Corresponds to the JSON property `satisfiesPzs`
6335
6471
  # @return [Boolean]
@@ -6484,6 +6620,7 @@ module Google
6484
6620
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
6485
6621
  @description = args[:description] if args.key?(:description)
6486
6622
  @disk_encryption_key = args[:disk_encryption_key] if args.key?(:disk_encryption_key)
6623
+ @enable_confidential_compute = args[:enable_confidential_compute] if args.key?(:enable_confidential_compute)
6487
6624
  @guest_os_features = args[:guest_os_features] if args.key?(:guest_os_features)
6488
6625
  @id = args[:id] if args.key?(:id)
6489
6626
  @kind = args[:kind] if args.key?(:kind)
@@ -6504,6 +6641,7 @@ module Google
6504
6641
  @replica_zones = args[:replica_zones] if args.key?(:replica_zones)
6505
6642
  @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
6506
6643
  @resource_status = args[:resource_status] if args.key?(:resource_status)
6644
+ @satisfies_pzi = args[:satisfies_pzi] if args.key?(:satisfies_pzi)
6507
6645
  @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
6508
6646
  @self_link = args[:self_link] if args.key?(:self_link)
6509
6647
  @size_gb = args[:size_gb] if args.key?(:size_gb)
@@ -9286,10 +9424,10 @@ module Google
9286
9424
  # google.com/compute/docs/reference/rest/v1/globalForwardingRules) * [Regional](
9287
9425
  # https://cloud.google.com/compute/docs/reference/rest/v1/forwardingRules) A
9288
9426
  # forwarding rule and its corresponding IP address represent the frontend
9289
- # configuration of a Google Cloud Platform load balancer. Forwarding rules can
9290
- # also reference target instances and Cloud VPN Classic gateways (
9291
- # targetVpnGateway). For more information, read Forwarding rule concepts and
9292
- # Using protocol forwarding.
9427
+ # configuration of a Google Cloud load balancer. Forwarding rules can also
9428
+ # reference target instances and Cloud VPN Classic gateways (targetVpnGateway).
9429
+ # For more information, read Forwarding rule concepts and Using protocol
9430
+ # forwarding.
9293
9431
  class ForwardingRule
9294
9432
  include Google::Apis::Core::Hashable
9295
9433
 
@@ -9345,11 +9483,12 @@ module Google
9345
9483
 
9346
9484
  # This field is used along with the backend_service field for internal load
9347
9485
  # balancing or with the target field for internal TargetInstance. If set to true,
9348
- # clients can access the Internal TCP/UDP Load Balancer, Internal HTTP(S) and
9349
- # TCP Proxy Load Balancer from all regions. If false, only allows access from
9350
- # the local region the load balancer is located at. Note that for
9351
- # INTERNAL_MANAGED forwarding rules, this field cannot be changed after the
9352
- # forwarding rule is created.
9486
+ # clients can access the internal passthrough Network Load Balancers, the
9487
+ # regional internal Application Load Balancer, and the regional internal proxy
9488
+ # Network Load Balancer from all regions. If false, only allows access from the
9489
+ # local region the load balancer is located at. Note that for INTERNAL_MANAGED
9490
+ # forwarding rules, this field cannot be changed after the forwarding rule is
9491
+ # created.
9353
9492
  # Corresponds to the JSON property `allowGlobalAccess`
9354
9493
  # @return [Boolean]
9355
9494
  attr_accessor :allow_global_access
@@ -9363,16 +9502,16 @@ module Google
9363
9502
  alias_method :allow_psc_global_access?, :allow_psc_global_access
9364
9503
 
9365
9504
  # Identifies the backend service to which the forwarding rule sends traffic.
9366
- # Required for Internal TCP/UDP Load Balancing and Network Load Balancing; must
9367
- # be omitted for all other load balancer types.
9505
+ # Required for internal and external passthrough Network Load Balancers; must be
9506
+ # omitted for all other load balancer types.
9368
9507
  # Corresponds to the JSON property `backendService`
9369
9508
  # @return [String]
9370
9509
  attr_accessor :backend_service
9371
9510
 
9372
- # [Output Only] The URL for the corresponding base Forwarding Rule. By base
9373
- # Forwarding Rule, we mean the Forwarding Rule that has the same IP address,
9374
- # protocol, and port settings with the current Forwarding Rule, but without
9375
- # sourceIPRanges specified. Always empty if the current Forwarding Rule does not
9511
+ # [Output Only] The URL for the corresponding base forwarding rule. By base
9512
+ # forwarding rule, we mean the forwarding rule that has the same IP address,
9513
+ # protocol, and port settings with the current forwarding rule, but without
9514
+ # sourceIPRanges specified. Always empty if the current forwarding rule does not
9376
9515
  # have sourceIPRanges specified.
9377
9516
  # Corresponds to the JSON property `baseForwardingRule`
9378
9517
  # @return [String]
@@ -9423,7 +9562,7 @@ module Google
9423
9562
  alias_method :is_mirroring_collector?, :is_mirroring_collector
9424
9563
 
9425
9564
  # [Output Only] Type of the resource. Always compute#forwardingRule for
9426
- # Forwarding Rule resources.
9565
+ # forwarding rule resources.
9427
9566
  # Corresponds to the JSON property `kind`
9428
9567
  # @return [String]
9429
9568
  attr_accessor :kind
@@ -9485,13 +9624,13 @@ module Google
9485
9624
  # @return [String]
9486
9625
  attr_accessor :name
9487
9626
 
9488
- # This field is not used for global external load balancing. For Internal TCP/
9489
- # UDP Load Balancing, this field identifies the network that the load balanced
9490
- # IP should belong to for this Forwarding Rule. If the subnetwork is specified,
9491
- # the network of the subnetwork will be used. If neither subnetwork nor this
9492
- # field is specified, the default network will be used. For Private Service
9493
- # Connect forwarding rules that forward traffic to Google APIs, a network must
9494
- # be provided.
9627
+ # This field is not used for global external load balancing. For internal
9628
+ # passthrough Network Load Balancers, this field identifies the network that the
9629
+ # load balanced IP should belong to for this forwarding rule. If the subnetwork
9630
+ # is specified, the network of the subnetwork will be used. If neither
9631
+ # subnetwork nor this field is specified, the default network will be used. For
9632
+ # Private Service Connect forwarding rules that forward traffic to Google APIs,
9633
+ # a network must be provided.
9495
9634
  # Corresponds to the JSON property `network`
9496
9635
  # @return [String]
9497
9636
  attr_accessor :network
@@ -9550,7 +9689,7 @@ module Google
9550
9689
  # @return [Array<String>]
9551
9690
  attr_accessor :ports
9552
9691
 
9553
- # [Output Only] The PSC connection id of the PSC Forwarding Rule.
9692
+ # [Output Only] The PSC connection id of the PSC forwarding rule.
9554
9693
  # Corresponds to the JSON property `pscConnectionId`
9555
9694
  # @return [Fixnum]
9556
9695
  attr_accessor :psc_connection_id
@@ -9579,7 +9718,7 @@ module Google
9579
9718
  # @return [Array<Google::Apis::ComputeV1::ForwardingRuleServiceDirectoryRegistration>]
9580
9719
  attr_accessor :service_directory_registrations
9581
9720
 
9582
- # An optional prefix to the service name for this Forwarding Rule. If specified,
9721
+ # An optional prefix to the service name for this forwarding rule. If specified,
9583
9722
  # the prefix is the first label of the fully qualified service name. The label
9584
9723
  # must be 1-63 characters long, and comply with RFC1035. Specifically, the label
9585
9724
  # must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*
@@ -9591,16 +9730,16 @@ module Google
9591
9730
  # @return [String]
9592
9731
  attr_accessor :service_label
9593
9732
 
9594
- # [Output Only] The internal fully qualified service name for this Forwarding
9595
- # Rule. This field is only used for internal load balancing.
9733
+ # [Output Only] The internal fully qualified service name for this forwarding
9734
+ # rule. This field is only used for internal load balancing.
9596
9735
  # Corresponds to the JSON property `serviceName`
9597
9736
  # @return [String]
9598
9737
  attr_accessor :service_name
9599
9738
 
9600
- # If not empty, this Forwarding Rule will only forward the traffic when the
9739
+ # If not empty, this forwarding rule will only forward the traffic when the
9601
9740
  # source IP address matches one of the IP addresses or CIDR ranges set here.
9602
- # Note that a Forwarding Rule can only have up to 64 source IP ranges, and this
9603
- # field can only be used with a regional Forwarding Rule whose scheme is
9741
+ # Note that a forwarding rule can only have up to 64 source IP ranges, and this
9742
+ # field can only be used with a regional forwarding rule whose scheme is
9604
9743
  # EXTERNAL. Each source_ip_range entry should be either an IP address (for
9605
9744
  # example, 1.2.3.4) or a CIDR range (for example, 1.2.3.0/24).
9606
9745
  # Corresponds to the JSON property `sourceIpRanges`
@@ -9608,10 +9747,11 @@ module Google
9608
9747
  attr_accessor :source_ip_ranges
9609
9748
 
9610
9749
  # This field identifies the subnetwork that the load balanced IP should belong
9611
- # to for this Forwarding Rule, used in internal load balancing and network load
9612
- # balancing with IPv6. If the network specified is in auto subnet mode, this
9613
- # field is optional. However, a subnetwork must be specified if the network is
9614
- # in custom subnet mode or when creating external forwarding rule with IPv6.
9750
+ # to for this forwarding rule, used with internal load balancers and external
9751
+ # passthrough Network Load Balancers with IPv6. If the network specified is in
9752
+ # auto subnet mode, this field is optional. However, a subnetwork must be
9753
+ # specified if the network is in custom subnet mode or when creating external
9754
+ # forwarding rule with IPv6.
9615
9755
  # Corresponds to the JSON property `subnetwork`
9616
9756
  # @return [String]
9617
9757
  attr_accessor :subnetwork
@@ -9935,9 +10075,9 @@ module Google
9935
10075
  end
9936
10076
  end
9937
10077
 
9938
- # Describes the auto-registration of the Forwarding Rule to Service Directory.
10078
+ # Describes the auto-registration of the forwarding rule to Service Directory.
9939
10079
  # The region and project of the Service Directory resource generated from this
9940
- # registration will be the same as this Forwarding Rule.
10080
+ # registration will be the same as this forwarding rule.
9941
10081
  class ForwardingRuleServiceDirectoryRegistration
9942
10082
  include Google::Apis::Core::Hashable
9943
10083
 
@@ -9953,7 +10093,7 @@ module Google
9953
10093
 
9954
10094
  # [Optional] Service Directory region to register this global forwarding rule
9955
10095
  # under. Default to "us-central1". Only used for PSC for Google APIs. All PSC
9956
- # for Google APIs Forwarding Rules on the same network should use the same
10096
+ # for Google APIs forwarding rules on the same network should use the same
9957
10097
  # Service Directory region.
9958
10098
  # Corresponds to the JSON property `serviceDirectoryRegion`
9959
10099
  # @return [String]
@@ -10088,7 +10228,7 @@ module Google
10088
10228
 
10089
10229
  # Specifies how a port is selected for health checking. Can be one of the
10090
10230
  # following values: USE_FIXED_PORT: Specifies a port number explicitly using the
10091
- # port field in the health check. Supported by backend services for pass-through
10231
+ # port field in the health check. Supported by backend services for passthrough
10092
10232
  # load balancers and backend services for proxy load balancers. Not supported by
10093
10233
  # target pools. The health check supports all backends supported by the backend
10094
10234
  # service provided the backend can be health checked. For example, GCE_VM_IP
@@ -10096,13 +10236,13 @@ module Google
10096
10236
  # group backends. USE_NAMED_PORT: Not supported. USE_SERVING_PORT: Provides an
10097
10237
  # indirect method of specifying the health check port by referring to the
10098
10238
  # backend service. Only supported by backend services for proxy load balancers.
10099
- # Not supported by target pools. Not supported by backend services for pass-
10100
- # through load balancers. Supports all backends that can be health checked; for
10101
- # example, GCE_VM_IP_PORT network endpoint groups and instance group backends.
10102
- # For GCE_VM_IP_PORT network endpoint group backends, the health check uses the
10103
- # port number specified for each endpoint in the network endpoint group. For
10104
- # instance group backends, the health check uses the port number determined by
10105
- # looking up the backend service's named port in the instance group's list of
10239
+ # Not supported by target pools. Not supported by backend services for
10240
+ # passthrough load balancers. Supports all backends that can be health checked;
10241
+ # for example, GCE_VM_IP_PORT network endpoint groups and instance group
10242
+ # backends. For GCE_VM_IP_PORT network endpoint group backends, the health check
10243
+ # uses the port number specified for each endpoint in the network endpoint group.
10244
+ # For instance group backends, the health check uses the port number determined
10245
+ # by looking up the backend service's named port in the instance group's list of
10106
10246
  # named ports.
10107
10247
  # Corresponds to the JSON property `portSpecification`
10108
10248
  # @return [String]
@@ -10451,8 +10591,8 @@ module Google
10451
10591
  # The ID of a supported feature. To add multiple values, use commas to separate
10452
10592
  # values. Set to one or more of the following values: - VIRTIO_SCSI_MULTIQUEUE -
10453
10593
  # WINDOWS - MULTI_IP_SUBNET - UEFI_COMPATIBLE - GVNIC - SEV_CAPABLE -
10454
- # SUSPEND_RESUME_COMPATIBLE - SEV_LIVE_MIGRATABLE - SEV_SNP_CAPABLE For more
10455
- # information, see Enabling guest operating system features.
10594
+ # SUSPEND_RESUME_COMPATIBLE - SEV_LIVE_MIGRATABLE - SEV_SNP_CAPABLE - IDPF For
10595
+ # more information, see Enabling guest operating system features.
10456
10596
  # Corresponds to the JSON property `type`
10457
10597
  # @return [String]
10458
10598
  attr_accessor :type
@@ -10493,7 +10633,7 @@ module Google
10493
10633
 
10494
10634
  # Specifies how a port is selected for health checking. Can be one of the
10495
10635
  # following values: USE_FIXED_PORT: Specifies a port number explicitly using the
10496
- # port field in the health check. Supported by backend services for pass-through
10636
+ # port field in the health check. Supported by backend services for passthrough
10497
10637
  # load balancers and backend services for proxy load balancers. Not supported by
10498
10638
  # target pools. The health check supports all backends supported by the backend
10499
10639
  # service provided the backend can be health checked. For example, GCE_VM_IP
@@ -10501,13 +10641,13 @@ module Google
10501
10641
  # group backends. USE_NAMED_PORT: Not supported. USE_SERVING_PORT: Provides an
10502
10642
  # indirect method of specifying the health check port by referring to the
10503
10643
  # backend service. Only supported by backend services for proxy load balancers.
10504
- # Not supported by target pools. Not supported by backend services for pass-
10505
- # through load balancers. Supports all backends that can be health checked; for
10506
- # example, GCE_VM_IP_PORT network endpoint groups and instance group backends.
10507
- # For GCE_VM_IP_PORT network endpoint group backends, the health check uses the
10508
- # port number specified for each endpoint in the network endpoint group. For
10509
- # instance group backends, the health check uses the port number determined by
10510
- # looking up the backend service's named port in the instance group's list of
10644
+ # Not supported by target pools. Not supported by backend services for
10645
+ # passthrough load balancers. Supports all backends that can be health checked;
10646
+ # for example, GCE_VM_IP_PORT network endpoint groups and instance group
10647
+ # backends. For GCE_VM_IP_PORT network endpoint group backends, the health check
10648
+ # uses the port number specified for each endpoint in the network endpoint group.
10649
+ # For instance group backends, the health check uses the port number determined
10650
+ # by looking up the backend service's named port in the instance group's list of
10511
10651
  # named ports.
10512
10652
  # Corresponds to the JSON property `portSpecification`
10513
10653
  # @return [String]
@@ -10575,7 +10715,7 @@ module Google
10575
10715
 
10576
10716
  # Specifies how a port is selected for health checking. Can be one of the
10577
10717
  # following values: USE_FIXED_PORT: Specifies a port number explicitly using the
10578
- # port field in the health check. Supported by backend services for pass-through
10718
+ # port field in the health check. Supported by backend services for passthrough
10579
10719
  # load balancers and backend services for proxy load balancers. Also supported
10580
10720
  # in legacy HTTP health checks for target pools. The health check supports all
10581
10721
  # backends supported by the backend service provided the backend can be health
@@ -10657,7 +10797,7 @@ module Google
10657
10797
 
10658
10798
  # Specifies how a port is selected for health checking. Can be one of the
10659
10799
  # following values: USE_FIXED_PORT: Specifies a port number explicitly using the
10660
- # port field in the health check. Supported by backend services for pass-through
10800
+ # port field in the health check. Supported by backend services for passthrough
10661
10801
  # load balancers and backend services for proxy load balancers. Not supported by
10662
10802
  # target pools. The health check supports all backends supported by the backend
10663
10803
  # service provided the backend can be health checked. For example, GCE_VM_IP
@@ -10665,13 +10805,13 @@ module Google
10665
10805
  # group backends. USE_NAMED_PORT: Not supported. USE_SERVING_PORT: Provides an
10666
10806
  # indirect method of specifying the health check port by referring to the
10667
10807
  # backend service. Only supported by backend services for proxy load balancers.
10668
- # Not supported by target pools. Not supported by backend services for pass-
10669
- # through load balancers. Supports all backends that can be health checked; for
10670
- # example, GCE_VM_IP_PORT network endpoint groups and instance group backends.
10671
- # For GCE_VM_IP_PORT network endpoint group backends, the health check uses the
10672
- # port number specified for each endpoint in the network endpoint group. For
10673
- # instance group backends, the health check uses the port number determined by
10674
- # looking up the backend service's named port in the instance group's list of
10808
+ # Not supported by target pools. Not supported by backend services for
10809
+ # passthrough load balancers. Supports all backends that can be health checked;
10810
+ # for example, GCE_VM_IP_PORT network endpoint groups and instance group
10811
+ # backends. For GCE_VM_IP_PORT network endpoint group backends, the health check
10812
+ # uses the port number specified for each endpoint in the network endpoint group.
10813
+ # For instance group backends, the health check uses the port number determined
10814
+ # by looking up the backend service's named port in the instance group's list of
10675
10815
  # named ports.
10676
10816
  # Corresponds to the JSON property `portSpecification`
10677
10817
  # @return [String]
@@ -10717,18 +10857,13 @@ module Google
10717
10857
  # resources: * [Regional](/compute/docs/reference/rest/v1/regionHealthChecks) * [
10718
10858
  # Global](/compute/docs/reference/rest/v1/healthChecks) These health check
10719
10859
  # resources can be used for load balancing and for autohealing VMs in a managed
10720
- # instance group (MIG). **Load balancing** The following load balancer can use
10721
- # either regional or global health check: * Internal TCP/UDP load balancer The
10722
- # following load balancers require regional health check: * Internal HTTP(S)
10723
- # load balancer * Backend service-based network load balancer Traffic Director
10724
- # and the following load balancers require global health check: * External HTTP(
10725
- # S) load balancer * TCP proxy load balancer * SSL proxy load balancer The
10726
- # following load balancer require [legacy HTTP health checks](/compute/docs/
10727
- # reference/rest/v1/httpHealthChecks): * Target pool-based network load balancer
10728
- # **Autohealing in MIGs** The health checks that you use for autohealing VMs in
10729
- # a MIG can be either regional or global. For more information, see Set up an
10730
- # application health check and autohealing. For more information, see Health
10731
- # checks overview.
10860
+ # instance group (MIG). **Load balancing** Health check requirements vary
10861
+ # depending on the type of load balancer. For details about the type of health
10862
+ # check supported for each load balancer and corresponding backend type, see
10863
+ # Health checks overview: Load balancer guide. **Autohealing in MIGs** The
10864
+ # health checks that you use for autohealing VMs in a MIG can be either regional
10865
+ # or global. For more information, see Set up an application health check and
10866
+ # autohealing. For more information, see Health checks overview.
10732
10867
  class HealthCheck
10733
10868
  include Google::Apis::Core::Hashable
10734
10869
 
@@ -12914,6 +13049,13 @@ module Google
12914
13049
  # @return [Fixnum]
12915
13050
  attr_accessor :disk_size_gb
12916
13051
 
13052
+ # Whether this image is created from a confidential compute mode disk. [Output
13053
+ # Only]: This field is not set by user, but from source disk.
13054
+ # Corresponds to the JSON property `enableConfidentialCompute`
13055
+ # @return [Boolean]
13056
+ attr_accessor :enable_confidential_compute
13057
+ alias_method :enable_confidential_compute?, :enable_confidential_compute
13058
+
12917
13059
  # The name of the image family to which this image belongs. The image family
12918
13060
  # name can be from a publicly managed image family provided by Compute Engine,
12919
13061
  # or from a custom image family you create. For example, centos-stream-9 is a
@@ -12997,6 +13139,12 @@ module Google
12997
13139
  # @return [Google::Apis::ComputeV1::Image::RawDisk]
12998
13140
  attr_accessor :raw_disk
12999
13141
 
13142
+ # Output only. Reserved for future use.
13143
+ # Corresponds to the JSON property `satisfiesPzi`
13144
+ # @return [Boolean]
13145
+ attr_accessor :satisfies_pzi
13146
+ alias_method :satisfies_pzi?, :satisfies_pzi
13147
+
13000
13148
  # [Output Only] Reserved for future use.
13001
13149
  # Corresponds to the JSON property `satisfiesPzs`
13002
13150
  # @return [Boolean]
@@ -13115,6 +13263,7 @@ module Google
13115
13263
  @deprecated = args[:deprecated] if args.key?(:deprecated)
13116
13264
  @description = args[:description] if args.key?(:description)
13117
13265
  @disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb)
13266
+ @enable_confidential_compute = args[:enable_confidential_compute] if args.key?(:enable_confidential_compute)
13118
13267
  @family = args[:family] if args.key?(:family)
13119
13268
  @guest_os_features = args[:guest_os_features] if args.key?(:guest_os_features)
13120
13269
  @id = args[:id] if args.key?(:id)
@@ -13126,6 +13275,7 @@ module Google
13126
13275
  @licenses = args[:licenses] if args.key?(:licenses)
13127
13276
  @name = args[:name] if args.key?(:name)
13128
13277
  @raw_disk = args[:raw_disk] if args.key?(:raw_disk)
13278
+ @satisfies_pzi = args[:satisfies_pzi] if args.key?(:satisfies_pzi)
13129
13279
  @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
13130
13280
  @self_link = args[:self_link] if args.key?(:self_link)
13131
13281
  @shielded_instance_initial_state = args[:shielded_instance_initial_state] if args.key?(:shielded_instance_initial_state)
@@ -13580,6 +13730,12 @@ module Google
13580
13730
  # @return [Google::Apis::ComputeV1::ResourceStatus]
13581
13731
  attr_accessor :resource_status
13582
13732
 
13733
+ # [Output Only] Reserved for future use.
13734
+ # Corresponds to the JSON property `satisfiesPzi`
13735
+ # @return [Boolean]
13736
+ attr_accessor :satisfies_pzi
13737
+ alias_method :satisfies_pzi?, :satisfies_pzi
13738
+
13583
13739
  # [Output Only] Reserved for future use.
13584
13740
  # Corresponds to the JSON property `satisfiesPzs`
13585
13741
  # @return [Boolean]
@@ -13697,6 +13853,7 @@ module Google
13697
13853
  @reservation_affinity = args[:reservation_affinity] if args.key?(:reservation_affinity)
13698
13854
  @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
13699
13855
  @resource_status = args[:resource_status] if args.key?(:resource_status)
13856
+ @satisfies_pzi = args[:satisfies_pzi] if args.key?(:satisfies_pzi)
13700
13857
  @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
13701
13858
  @scheduling = args[:scheduling] if args.key?(:scheduling)
13702
13859
  @self_link = args[:self_link] if args.key?(:self_link)
@@ -20439,6 +20596,12 @@ module Google
20439
20596
  # @return [String]
20440
20597
  attr_accessor :name
20441
20598
 
20599
+ # Output only. Reserved for future use.
20600
+ # Corresponds to the JSON property `satisfiesPzi`
20601
+ # @return [Boolean]
20602
+ attr_accessor :satisfies_pzi
20603
+ alias_method :satisfies_pzi?, :satisfies_pzi
20604
+
20442
20605
  # [Output Only] Reserved for future use.
20443
20606
  # Corresponds to the JSON property `satisfiesPzs`
20444
20607
  # @return [Boolean]
@@ -20508,6 +20671,7 @@ module Google
20508
20671
  @kind = args[:kind] if args.key?(:kind)
20509
20672
  @machine_image_encryption_key = args[:machine_image_encryption_key] if args.key?(:machine_image_encryption_key)
20510
20673
  @name = args[:name] if args.key?(:name)
20674
+ @satisfies_pzi = args[:satisfies_pzi] if args.key?(:satisfies_pzi)
20511
20675
  @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
20512
20676
  @saved_disks = args[:saved_disks] if args.key?(:saved_disks)
20513
20677
  @self_link = args[:self_link] if args.key?(:self_link)
@@ -26086,7 +26250,8 @@ module Google
26086
26250
  # operations, use the `globalOperations` resource. - For regional operations,
26087
26251
  # use the `regionOperations` resource. - For zonal operations, use the `
26088
26252
  # zoneOperations` resource. For more information, read Global, Regional, and
26089
- # Zonal Resources.
26253
+ # Zonal Resources. Note that completed Operation resources have a limited
26254
+ # retention period.
26090
26255
  class Operation
26091
26256
  include Google::Apis::Core::Hashable
26092
26257
 
@@ -27196,15 +27361,17 @@ module Google
27196
27361
 
27197
27362
  # Protocols that apply as filter on mirrored traffic. If no protocols are
27198
27363
  # specified, all traffic that matches the specified CIDR ranges is mirrored. If
27199
- # neither cidrRanges nor IPProtocols is specified, all traffic is mirrored.
27364
+ # neither cidrRanges nor IPProtocols is specified, all IPv4 traffic is mirrored.
27200
27365
  # Corresponds to the JSON property `IPProtocols`
27201
27366
  # @return [Array<String>]
27202
27367
  attr_accessor :ip_protocols
27203
27368
 
27204
- # IP CIDR ranges that apply as filter on the source (ingress) or destination (
27205
- # egress) IP in the IP header. Only IPv4 is supported. If no ranges are
27206
- # specified, all traffic that matches the specified IPProtocols is mirrored. If
27207
- # neither cidrRanges nor IPProtocols is specified, all traffic is mirrored.
27369
+ # One or more IPv4 or IPv6 CIDR ranges that apply as filter on the source (
27370
+ # ingress) or destination (egress) IP in the IP header. If no ranges are
27371
+ # specified, all IPv4 traffic that matches the specified IPProtocols is mirrored.
27372
+ # If neither cidrRanges nor IPProtocols is specified, all IPv4 traffic is
27373
+ # mirrored. To mirror all IPv4 and IPv6 traffic, use "0.0.0.0/0,::/0". Note:
27374
+ # Support for IPv6 traffic is in preview.
27208
27375
  # Corresponds to the JSON property `cidrRanges`
27209
27376
  # @return [Array<String>]
27210
27377
  attr_accessor :cidr_ranges
@@ -30831,6 +30998,13 @@ module Google
30831
30998
  class Reservation
30832
30999
  include Google::Apis::Core::Hashable
30833
31000
 
31001
+ # This reservation type is specified by total resource amounts (e.g. total count
31002
+ # of CPUs) and can account for multiple instance SKUs. In other words, one can
31003
+ # create instances of varying shapes against this reservation.
31004
+ # Corresponds to the JSON property `aggregateReservation`
31005
+ # @return [Google::Apis::ComputeV1::AllocationAggregateReservation]
31006
+ attr_accessor :aggregate_reservation
31007
+
30834
31008
  # [Output Only] Full or partial URL to a parent commitment. This field displays
30835
31009
  # for reservations that are tied to a commitment.
30836
31010
  # Corresponds to the JSON property `commitment`
@@ -30930,6 +31104,7 @@ module Google
30930
31104
 
30931
31105
  # Update properties of this object
30932
31106
  def update!(**args)
31107
+ @aggregate_reservation = args[:aggregate_reservation] if args.key?(:aggregate_reservation)
30933
31108
  @commitment = args[:commitment] if args.key?(:commitment)
30934
31109
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
30935
31110
  @description = args[:description] if args.key?(:description)
@@ -34306,7 +34481,7 @@ module Google
34306
34481
 
34307
34482
  # Specifies how a port is selected for health checking. Can be one of the
34308
34483
  # following values: USE_FIXED_PORT: Specifies a port number explicitly using the
34309
- # port field in the health check. Supported by backend services for pass-through
34484
+ # port field in the health check. Supported by backend services for passthrough
34310
34485
  # load balancers and backend services for proxy load balancers. Not supported by
34311
34486
  # target pools. The health check supports all backends supported by the backend
34312
34487
  # service provided the backend can be health checked. For example, GCE_VM_IP
@@ -34314,13 +34489,13 @@ module Google
34314
34489
  # group backends. USE_NAMED_PORT: Not supported. USE_SERVING_PORT: Provides an
34315
34490
  # indirect method of specifying the health check port by referring to the
34316
34491
  # backend service. Only supported by backend services for proxy load balancers.
34317
- # Not supported by target pools. Not supported by backend services for pass-
34318
- # through load balancers. Supports all backends that can be health checked; for
34319
- # example, GCE_VM_IP_PORT network endpoint groups and instance group backends.
34320
- # For GCE_VM_IP_PORT network endpoint group backends, the health check uses the
34321
- # port number specified for each endpoint in the network endpoint group. For
34322
- # instance group backends, the health check uses the port number determined by
34323
- # looking up the backend service's named port in the instance group's list of
34492
+ # Not supported by target pools. Not supported by backend services for
34493
+ # passthrough load balancers. Supports all backends that can be health checked;
34494
+ # for example, GCE_VM_IP_PORT network endpoint groups and instance group
34495
+ # backends. For GCE_VM_IP_PORT network endpoint group backends, the health check
34496
+ # uses the port number specified for each endpoint in the network endpoint group.
34497
+ # For instance group backends, the health check uses the port number determined
34498
+ # by looking up the backend service's named port in the instance group's list of
34324
34499
  # named ports.
34325
34500
  # Corresponds to the JSON property `portSpecification`
34326
34501
  # @return [String]
@@ -35654,6 +35829,12 @@ module Google
35654
35829
  # @return [Google::Apis::ComputeV1::Expr]
35655
35830
  attr_accessor :expr
35656
35831
 
35832
+ # The configuration options available when specifying a user defined CEVAL
35833
+ # expression (i.e., 'expr').
35834
+ # Corresponds to the JSON property `exprOptions`
35835
+ # @return [Google::Apis::ComputeV1::SecurityPolicyRuleMatcherExprOptions]
35836
+ attr_accessor :expr_options
35837
+
35657
35838
  # Preconfigured versioned expression. If this field is specified, config must
35658
35839
  # also be specified. Available preconfigured expressions along with their
35659
35840
  # requirements are: SRC_IPS_V1 - must specify the corresponding src_ip_range
@@ -35670,6 +35851,7 @@ module Google
35670
35851
  def update!(**args)
35671
35852
  @config = args[:config] if args.key?(:config)
35672
35853
  @expr = args[:expr] if args.key?(:expr)
35854
+ @expr_options = args[:expr_options] if args.key?(:expr_options)
35673
35855
  @versioned_expr = args[:versioned_expr] if args.key?(:versioned_expr)
35674
35856
  end
35675
35857
  end
@@ -35693,6 +35875,55 @@ module Google
35693
35875
  end
35694
35876
  end
35695
35877
 
35878
+ #
35879
+ class SecurityPolicyRuleMatcherExprOptions
35880
+ include Google::Apis::Core::Hashable
35881
+
35882
+ # reCAPTCHA configuration options to be applied for the rule. If the rule does
35883
+ # not evaluate reCAPTCHA tokens, this field has no effect.
35884
+ # Corresponds to the JSON property `recaptchaOptions`
35885
+ # @return [Google::Apis::ComputeV1::SecurityPolicyRuleMatcherExprOptionsRecaptchaOptions]
35886
+ attr_accessor :recaptcha_options
35887
+
35888
+ def initialize(**args)
35889
+ update!(**args)
35890
+ end
35891
+
35892
+ # Update properties of this object
35893
+ def update!(**args)
35894
+ @recaptcha_options = args[:recaptcha_options] if args.key?(:recaptcha_options)
35895
+ end
35896
+ end
35897
+
35898
+ #
35899
+ class SecurityPolicyRuleMatcherExprOptionsRecaptchaOptions
35900
+ include Google::Apis::Core::Hashable
35901
+
35902
+ # A list of site keys to be used during the validation of reCAPTCHA action-
35903
+ # tokens. The provided site keys need to be created from reCAPTCHA API under the
35904
+ # same project where the security policy is created.
35905
+ # Corresponds to the JSON property `actionTokenSiteKeys`
35906
+ # @return [Array<String>]
35907
+ attr_accessor :action_token_site_keys
35908
+
35909
+ # A list of site keys to be used during the validation of reCAPTCHA session-
35910
+ # tokens. The provided site keys need to be created from reCAPTCHA API under the
35911
+ # same project where the security policy is created.
35912
+ # Corresponds to the JSON property `sessionTokenSiteKeys`
35913
+ # @return [Array<String>]
35914
+ attr_accessor :session_token_site_keys
35915
+
35916
+ def initialize(**args)
35917
+ update!(**args)
35918
+ end
35919
+
35920
+ # Update properties of this object
35921
+ def update!(**args)
35922
+ @action_token_site_keys = args[:action_token_site_keys] if args.key?(:action_token_site_keys)
35923
+ @session_token_site_keys = args[:session_token_site_keys] if args.key?(:session_token_site_keys)
35924
+ end
35925
+ end
35926
+
35696
35927
  # Represents a match condition that incoming network traffic is evaluated
35697
35928
  # against.
35698
35929
  class SecurityPolicyRuleNetworkMatcher
@@ -35933,7 +36164,13 @@ module Google
35933
36164
  # is truncated to the first 128 bytes. - SNI: Server name indication in the TLS
35934
36165
  # session of the HTTPS request. The key value is truncated to the first 128
35935
36166
  # bytes. The key type defaults to ALL on a HTTP session. - REGION_CODE: The
35936
- # country/region from which the request originates.
36167
+ # country/region from which the request originates. - TLS_JA3_FINGERPRINT: JA3
36168
+ # TLS/SSL fingerprint if the client connects using HTTPS, HTTP/2 or HTTP/3. If
36169
+ # not available, the key type defaults to ALL. - USER_IP: The IP address of the
36170
+ # originating client, which is resolved based on "userIpRequestHeaders"
36171
+ # configured with the security policy. If there is no "userIpRequestHeaders"
36172
+ # configuration or an IP address cannot be resolved from it, the key type
36173
+ # defaults to IP.
35937
36174
  # Corresponds to the JSON property `enforceOnKey`
35938
36175
  # @return [String]
35939
36176
  attr_accessor :enforce_on_key
@@ -36022,7 +36259,13 @@ module Google
36022
36259
  # is truncated to the first 128 bytes. - SNI: Server name indication in the TLS
36023
36260
  # session of the HTTPS request. The key value is truncated to the first 128
36024
36261
  # bytes. The key type defaults to ALL on a HTTP session. - REGION_CODE: The
36025
- # country/region from which the request originates.
36262
+ # country/region from which the request originates. - TLS_JA3_FINGERPRINT: JA3
36263
+ # TLS/SSL fingerprint if the client connects using HTTPS, HTTP/2 or HTTP/3. If
36264
+ # not available, the key type defaults to ALL. - USER_IP: The IP address of the
36265
+ # originating client, which is resolved based on "userIpRequestHeaders"
36266
+ # configured with the security policy. If there is no "userIpRequestHeaders"
36267
+ # configuration or an IP address cannot be resolved from it, the key type
36268
+ # defaults to IP.
36026
36269
  # Corresponds to the JSON property `enforceOnKeyType`
36027
36270
  # @return [String]
36028
36271
  attr_accessor :enforce_on_key_type
@@ -37156,6 +37399,13 @@ module Google
37156
37399
  # @return [Fixnum]
37157
37400
  attr_accessor :download_bytes
37158
37401
 
37402
+ # Whether this snapshot is created from a confidential compute mode disk. [
37403
+ # Output Only]: This field is not set by user, but from source disk.
37404
+ # Corresponds to the JSON property `enableConfidentialCompute`
37405
+ # @return [Boolean]
37406
+ attr_accessor :enable_confidential_compute
37407
+ alias_method :enable_confidential_compute?, :enable_confidential_compute
37408
+
37159
37409
  # [Output Only] A list of features to enable on the guest operating system.
37160
37410
  # Applicable only for bootable images. Read Enabling guest operating system
37161
37411
  # features to see a list of available options.
@@ -37222,6 +37472,12 @@ module Google
37222
37472
  # @return [String]
37223
37473
  attr_accessor :name
37224
37474
 
37475
+ # Output only. Reserved for future use.
37476
+ # Corresponds to the JSON property `satisfiesPzi`
37477
+ # @return [Boolean]
37478
+ attr_accessor :satisfies_pzi
37479
+ alias_method :satisfies_pzi?, :satisfies_pzi
37480
+
37225
37481
  # [Output Only] Reserved for future use.
37226
37482
  # Corresponds to the JSON property `satisfiesPzs`
37227
37483
  # @return [Boolean]
@@ -37323,6 +37579,7 @@ module Google
37323
37579
  @description = args[:description] if args.key?(:description)
37324
37580
  @disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb)
37325
37581
  @download_bytes = args[:download_bytes] if args.key?(:download_bytes)
37582
+ @enable_confidential_compute = args[:enable_confidential_compute] if args.key?(:enable_confidential_compute)
37326
37583
  @guest_os_features = args[:guest_os_features] if args.key?(:guest_os_features)
37327
37584
  @id = args[:id] if args.key?(:id)
37328
37585
  @kind = args[:kind] if args.key?(:kind)
@@ -37332,6 +37589,7 @@ module Google
37332
37589
  @licenses = args[:licenses] if args.key?(:licenses)
37333
37590
  @location_hint = args[:location_hint] if args.key?(:location_hint)
37334
37591
  @name = args[:name] if args.key?(:name)
37592
+ @satisfies_pzi = args[:satisfies_pzi] if args.key?(:satisfies_pzi)
37335
37593
  @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
37336
37594
  @self_link = args[:self_link] if args.key?(:self_link)
37337
37595
  @snapshot_encryption_key = args[:snapshot_encryption_key] if args.key?(:snapshot_encryption_key)
@@ -38578,9 +38836,10 @@ module Google
38578
38836
  end
38579
38837
  end
38580
38838
 
38581
- # Represents an SSL Policy resource. Use SSL policies to control the SSL
38582
- # features, such as versions and cipher suites, offered by an HTTPS or SSL Proxy
38583
- # load balancer. For more information, read SSL Policy Concepts.
38839
+ # Represents an SSL Policy resource. Use SSL policies to control SSL features,
38840
+ # such as versions and cipher suites, that are offered by Application Load
38841
+ # Balancers and proxy Network Load Balancers. For more information, read SSL
38842
+ # policies overview.
38584
38843
  class SslPolicy
38585
38844
  include Google::Apis::Core::Hashable
38586
38845
 
@@ -39043,18 +39302,15 @@ module Google
39043
39302
  attr_accessor :private_ipv6_google_access
39044
39303
 
39045
39304
  # The purpose of the resource. This field can be either PRIVATE,
39046
- # REGIONAL_MANAGED_PROXY, PRIVATE_SERVICE_CONNECT, or
39047
- # INTERNAL_HTTPS_LOAD_BALANCER. PRIVATE is the default purpose for user-created
39048
- # subnets or subnets that are automatically created in auto mode networks. A
39049
- # subnet with purpose set to REGIONAL_MANAGED_PROXY is a user-created subnetwork
39050
- # that is reserved for regional Envoy-based load balancers. A subnet with
39051
- # purpose set to PRIVATE_SERVICE_CONNECT is used to publish services using
39052
- # Private Service Connect. A subnet with purpose set to
39053
- # INTERNAL_HTTPS_LOAD_BALANCER is a proxy-only subnet that can be used only by
39054
- # regional internal HTTP(S) load balancers. Note that REGIONAL_MANAGED_PROXY is
39055
- # the preferred setting for all regional Envoy load balancers. If unspecified,
39056
- # the subnet purpose defaults to PRIVATE. The enableFlowLogs field isn't
39057
- # supported if the subnet purpose field is set to REGIONAL_MANAGED_PROXY.
39305
+ # GLOBAL_MANAGED_PROXY, REGIONAL_MANAGED_PROXY, PRIVATE_SERVICE_CONNECT, or
39306
+ # PRIVATE is the default purpose for user-created subnets or subnets that are
39307
+ # automatically created in auto mode networks. Subnets with purpose set to
39308
+ # GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY are user-created subnetworks
39309
+ # that are reserved for Envoy-based load balancers. A subnet with purpose set to
39310
+ # PRIVATE_SERVICE_CONNECT is used to publish services using Private Service
39311
+ # Connect. If unspecified, the subnet purpose defaults to PRIVATE. The
39312
+ # enableFlowLogs field isn't supported if the subnet purpose field is set to
39313
+ # GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY.
39058
39314
  # Corresponds to the JSON property `purpose`
39059
39315
  # @return [String]
39060
39316
  attr_accessor :purpose
@@ -39065,11 +39321,17 @@ module Google
39065
39321
  # @return [String]
39066
39322
  attr_accessor :region
39067
39323
 
39068
- # The role of subnetwork. Currently, this field is only used when purpose =
39069
- # REGIONAL_MANAGED_PROXY. The value can be set to ACTIVE or BACKUP. An ACTIVE
39070
- # subnetwork is one that is currently being used for Envoy-based load balancers
39071
- # in a region. A BACKUP subnetwork is one that is ready to be promoted to ACTIVE
39072
- # or is currently draining. This field can be updated with a patch request.
39324
+ # The URL of the reserved internal range.
39325
+ # Corresponds to the JSON property `reservedInternalRange`
39326
+ # @return [String]
39327
+ attr_accessor :reserved_internal_range
39328
+
39329
+ # The role of subnetwork. Currently, this field is only used when purpose is set
39330
+ # to GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY. The value can be set to
39331
+ # ACTIVE or BACKUP. An ACTIVE subnetwork is one that is currently being used for
39332
+ # Envoy-based load balancers in a region. A BACKUP subnetwork is one that is
39333
+ # ready to be promoted to ACTIVE or is currently draining. This field can be
39334
+ # updated with a patch request.
39073
39335
  # Corresponds to the JSON property `role`
39074
39336
  # @return [String]
39075
39337
  attr_accessor :role
@@ -39130,6 +39392,7 @@ module Google
39130
39392
  @private_ipv6_google_access = args[:private_ipv6_google_access] if args.key?(:private_ipv6_google_access)
39131
39393
  @purpose = args[:purpose] if args.key?(:purpose)
39132
39394
  @region = args[:region] if args.key?(:region)
39395
+ @reserved_internal_range = args[:reserved_internal_range] if args.key?(:reserved_internal_range)
39133
39396
  @role = args[:role] if args.key?(:role)
39134
39397
  @secondary_ip_ranges = args[:secondary_ip_ranges] if args.key?(:secondary_ip_ranges)
39135
39398
  @self_link = args[:self_link] if args.key?(:self_link)
@@ -39466,6 +39729,11 @@ module Google
39466
39729
  # @return [String]
39467
39730
  attr_accessor :range_name
39468
39731
 
39732
+ # The URL of the reserved internal range.
39733
+ # Corresponds to the JSON property `reservedInternalRange`
39734
+ # @return [String]
39735
+ attr_accessor :reserved_internal_range
39736
+
39469
39737
  def initialize(**args)
39470
39738
  update!(**args)
39471
39739
  end
@@ -39474,6 +39742,7 @@ module Google
39474
39742
  def update!(**args)
39475
39743
  @ip_cidr_range = args[:ip_cidr_range] if args.key?(:ip_cidr_range)
39476
39744
  @range_name = args[:range_name] if args.key?(:range_name)
39745
+ @reserved_internal_range = args[:reserved_internal_range] if args.key?(:reserved_internal_range)
39477
39746
  end
39478
39747
  end
39479
39748
 
@@ -39646,7 +39915,7 @@ module Google
39646
39915
 
39647
39916
  # Specifies how a port is selected for health checking. Can be one of the
39648
39917
  # following values: USE_FIXED_PORT: Specifies a port number explicitly using the
39649
- # port field in the health check. Supported by backend services for pass-through
39918
+ # port field in the health check. Supported by backend services for passthrough
39650
39919
  # load balancers and backend services for proxy load balancers. Not supported by
39651
39920
  # target pools. The health check supports all backends supported by the backend
39652
39921
  # service provided the backend can be health checked. For example, GCE_VM_IP
@@ -39654,13 +39923,13 @@ module Google
39654
39923
  # group backends. USE_NAMED_PORT: Not supported. USE_SERVING_PORT: Provides an
39655
39924
  # indirect method of specifying the health check port by referring to the
39656
39925
  # backend service. Only supported by backend services for proxy load balancers.
39657
- # Not supported by target pools. Not supported by backend services for pass-
39658
- # through load balancers. Supports all backends that can be health checked; for
39659
- # example, GCE_VM_IP_PORT network endpoint groups and instance group backends.
39660
- # For GCE_VM_IP_PORT network endpoint group backends, the health check uses the
39661
- # port number specified for each endpoint in the network endpoint group. For
39662
- # instance group backends, the health check uses the port number determined by
39663
- # looking up the backend service's named port in the instance group's list of
39926
+ # Not supported by target pools. Not supported by backend services for
39927
+ # passthrough load balancers. Supports all backends that can be health checked;
39928
+ # for example, GCE_VM_IP_PORT network endpoint groups and instance group
39929
+ # backends. For GCE_VM_IP_PORT network endpoint group backends, the health check
39930
+ # uses the port number specified for each endpoint in the network endpoint group.
39931
+ # For instance group backends, the health check uses the port number determined
39932
+ # by looking up the backend service's named port in the instance group's list of
39664
39933
  # named ports.
39665
39934
  # Corresponds to the JSON property `portSpecification`
39666
39935
  # @return [String]
@@ -41346,10 +41615,10 @@ module Google
41346
41615
  end
41347
41616
  end
41348
41617
 
41349
- # Represents a Target Pool resource. Target pools are used for network TCP/UDP
41350
- # load balancing. A target pool references member instances, an associated
41351
- # legacy HttpHealthCheck resource, and, optionally, a backup target pool. For
41352
- # more information, read Using target pools.
41618
+ # Represents a Target Pool resource. Target pools are used with external
41619
+ # passthrough Network Load Balancers. A target pool references member instances,
41620
+ # an associated legacy HttpHealthCheck resource, and, optionally, a backup
41621
+ # target pool. For more information, read Using target pools.
41353
41622
  class TargetPool
41354
41623
  include Google::Apis::Core::Hashable
41355
41624
 
@@ -42019,9 +42288,9 @@ module Google
42019
42288
  end
42020
42289
 
42021
42290
  # Represents a Target SSL Proxy resource. A target SSL proxy is a component of a
42022
- # SSL Proxy load balancer. Global forwarding rules reference a target SSL proxy,
42023
- # and the target proxy then references an external backend service. For more
42024
- # information, read Using Target Proxies.
42291
+ # Proxy Network Load Balancer. The forwarding rule references the target SSL
42292
+ # proxy, and the target proxy then references a backend service. For more
42293
+ # information, read Proxy Network Load Balancer overview.
42025
42294
  class TargetSslProxy
42026
42295
  include Google::Apis::Core::Hashable
42027
42296
 
@@ -42366,9 +42635,9 @@ module Google
42366
42635
  end
42367
42636
 
42368
42637
  # Represents a Target TCP Proxy resource. A target TCP proxy is a component of a
42369
- # TCP Proxy load balancer. Global forwarding rules reference target TCP proxy,
42370
- # and the target proxy then references an external backend service. For more
42371
- # information, read TCP Proxy Load Balancing overview.
42638
+ # Proxy Network Load Balancer. The forwarding rule references the target TCP
42639
+ # proxy, and the target proxy then references a backend service. For more
42640
+ # information, read Proxy Network Load Balancer overview.
42372
42641
  class TargetTcpProxy
42373
42642
  include Google::Apis::Core::Hashable
42374
42643
 
@@ -44134,27 +44403,25 @@ module Google
44134
44403
  attr_accessor :network
44135
44404
 
44136
44405
  # The purpose of the resource. This field can be either PRIVATE,
44137
- # REGIONAL_MANAGED_PROXY, PRIVATE_SERVICE_CONNECT, or
44138
- # INTERNAL_HTTPS_LOAD_BALANCER. PRIVATE is the default purpose for user-created
44139
- # subnets or subnets that are automatically created in auto mode networks. A
44140
- # subnet with purpose set to REGIONAL_MANAGED_PROXY is a user-created subnetwork
44141
- # that is reserved for regional Envoy-based load balancers. A subnet with
44142
- # purpose set to PRIVATE_SERVICE_CONNECT is used to publish services using
44143
- # Private Service Connect. A subnet with purpose set to
44144
- # INTERNAL_HTTPS_LOAD_BALANCER is a proxy-only subnet that can be used only by
44145
- # regional internal HTTP(S) load balancers. Note that REGIONAL_MANAGED_PROXY is
44146
- # the preferred setting for all regional Envoy load balancers. If unspecified,
44147
- # the subnet purpose defaults to PRIVATE. The enableFlowLogs field isn't
44148
- # supported if the subnet purpose field is set to REGIONAL_MANAGED_PROXY.
44406
+ # GLOBAL_MANAGED_PROXY, REGIONAL_MANAGED_PROXY, PRIVATE_SERVICE_CONNECT, or
44407
+ # PRIVATE is the default purpose for user-created subnets or subnets that are
44408
+ # automatically created in auto mode networks. Subnets with purpose set to
44409
+ # GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY are user-created subnetworks
44410
+ # that are reserved for Envoy-based load balancers. A subnet with purpose set to
44411
+ # PRIVATE_SERVICE_CONNECT is used to publish services using Private Service
44412
+ # Connect. If unspecified, the subnet purpose defaults to PRIVATE. The
44413
+ # enableFlowLogs field isn't supported if the subnet purpose field is set to
44414
+ # GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY.
44149
44415
  # Corresponds to the JSON property `purpose`
44150
44416
  # @return [String]
44151
44417
  attr_accessor :purpose
44152
44418
 
44153
- # The role of subnetwork. Currently, this field is only used when purpose =
44154
- # REGIONAL_MANAGED_PROXY. The value can be set to ACTIVE or BACKUP. An ACTIVE
44155
- # subnetwork is one that is currently being used for Envoy-based load balancers
44156
- # in a region. A BACKUP subnetwork is one that is ready to be promoted to ACTIVE
44157
- # or is currently draining. This field can be updated with a patch request.
44419
+ # The role of subnetwork. Currently, this field is only used when purpose is set
44420
+ # to GLOBAL_MANAGED_PROXY or REGIONAL_MANAGED_PROXY. The value can be set to
44421
+ # ACTIVE or BACKUP. An ACTIVE subnetwork is one that is currently being used for
44422
+ # Envoy-based load balancers in a region. A BACKUP subnetwork is one that is
44423
+ # ready to be promoted to ACTIVE or is currently draining. This field can be
44424
+ # updated with a patch request.
44158
44425
  # Corresponds to the JSON property `role`
44159
44426
  # @return [String]
44160
44427
  attr_accessor :role