google-apis-compute_alpha 0.85.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.
@@ -1171,6 +1171,12 @@ module Google
1171
1171
  attr_accessor :enable_uefi_networking
1172
1172
  alias_method :enable_uefi_networking?, :enable_uefi_networking
1173
1173
 
1174
+ # Whether to enable the watchdog timer.
1175
+ # Corresponds to the JSON property `enableWatchdogTimer`
1176
+ # @return [Boolean]
1177
+ attr_accessor :enable_watchdog_timer
1178
+ alias_method :enable_watchdog_timer?, :enable_watchdog_timer
1179
+
1174
1180
  # The number of vNUMA nodes.
1175
1181
  # Corresponds to the JSON property `numaNodeCount`
1176
1182
  # @return [Fixnum]
@@ -1204,6 +1210,7 @@ module Google
1204
1210
  def update!(**args)
1205
1211
  @enable_nested_virtualization = args[:enable_nested_virtualization] if args.key?(:enable_nested_virtualization)
1206
1212
  @enable_uefi_networking = args[:enable_uefi_networking] if args.key?(:enable_uefi_networking)
1213
+ @enable_watchdog_timer = args[:enable_watchdog_timer] if args.key?(:enable_watchdog_timer)
1207
1214
  @numa_node_count = args[:numa_node_count] if args.key?(:numa_node_count)
1208
1215
  @performance_monitoring_unit = args[:performance_monitoring_unit] if args.key?(:performance_monitoring_unit)
1209
1216
  @threads_per_core = args[:threads_per_core] if args.key?(:threads_per_core)
@@ -3576,13 +3583,13 @@ module Google
3576
3583
  class BackendService
3577
3584
  include Google::Apis::Core::Hashable
3578
3585
 
3579
- # Lifetime of cookies in seconds. This setting is applicable to external and
3580
- # internal HTTP(S) load balancers and Traffic Director and requires
3581
- # GENERATED_COOKIE or HTTP_COOKIE session affinity. If set to 0, the cookie is
3582
- # non-persistent and lasts only until the end of the browser session (or
3583
- # equivalent). The maximum allowed value is two weeks (1,209,600). Not supported
3584
- # when the backend service is referenced by a URL map that is bound to target
3585
- # gRPC proxy that has validateForProxyless field set to true.
3586
+ # Lifetime of cookies in seconds. This setting is applicable to Application Load
3587
+ # Balancers and Traffic Director and requires GENERATED_COOKIE or HTTP_COOKIE
3588
+ # session affinity. If set to 0, the cookie is non-persistent and lasts only
3589
+ # until the end of the browser session (or equivalent). The maximum allowed
3590
+ # value is two weeks (1,209,600). Not supported when the backend service is
3591
+ # referenced by a URL map that is bound to target gRPC proxy that has
3592
+ # validateForProxyless field set to true.
3586
3593
  # Corresponds to the JSON property `affinityCookieTtlSec`
3587
3594
  # @return [Fixnum]
3588
3595
  attr_accessor :affinity_cookie_ttl_sec
@@ -3653,23 +3660,23 @@ module Google
3653
3660
  # @return [String]
3654
3661
  attr_accessor :edge_security_policy
3655
3662
 
3656
- # If true, enables Cloud CDN for the backend service of an external HTTP(S) load
3657
- # balancer.
3663
+ # If true, enables Cloud CDN for the backend service of a global external
3664
+ # Application Load Balancer.
3658
3665
  # Corresponds to the JSON property `enableCDN`
3659
3666
  # @return [Boolean]
3660
3667
  attr_accessor :enable_cdn
3661
3668
  alias_method :enable_cdn?, :enable_cdn
3662
3669
 
3663
- # For load balancers that have configurable failover: [Internal TCP/UDP Load
3664
- # Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-
3665
- # overview) and [external TCP/UDP Load Balancing](https://cloud.google.com/load-
3666
- # balancing/docs/network/networklb-failover-overview). On failover or failback,
3667
- # this field indicates whether connection draining will be honored. Google Cloud
3668
- # has a fixed connection draining timeout of 10 minutes. A setting of true
3669
- # terminates existing TCP connections to the active pool during failover and
3670
- # failback, immediately draining traffic. A setting of false allows existing TCP
3671
- # connections to persist, even on VMs no longer in the active pool, for up to
3672
- # the duration of the connection draining timeout (10 minutes).
3670
+ # For load balancers that have configurable failover: [Internal passthrough
3671
+ # Network Load Balancers](https://cloud.google.com/load-balancing/docs/internal/
3672
+ # failover-overview) and [external passthrough Network Load Balancers](https://
3673
+ # cloud.google.com/load-balancing/docs/network/networklb-failover-overview). On
3674
+ # failover or failback, this field indicates whether connection draining will be
3675
+ # honored. Google Cloud has a fixed connection draining timeout of 10 minutes. A
3676
+ # setting of true terminates existing TCP connections to the active pool during
3677
+ # failover and failback, immediately draining traffic. A setting of false allows
3678
+ # existing TCP connections to persist, even on VMs no longer in the active pool,
3679
+ # for up to the duration of the connection draining timeout (10 minutes).
3673
3680
  # Corresponds to the JSON property `failoverPolicy`
3674
3681
  # @return [Google::Apis::ComputeAlpha::BackendServiceFailoverPolicy]
3675
3682
  attr_accessor :failover_policy
@@ -3685,6 +3692,11 @@ module Google
3685
3692
  # @return [String]
3686
3693
  attr_accessor :fingerprint
3687
3694
 
3695
+ # Configuring haPolicy is not supported.
3696
+ # Corresponds to the JSON property `haPolicy`
3697
+ # @return [Google::Apis::ComputeAlpha::BackendServiceHaPolicy]
3698
+ attr_accessor :ha_policy
3699
+
3688
3700
  # The list of URLs to the healthChecks, httpHealthChecks (legacy), or
3689
3701
  # httpsHealthChecks (legacy) resource for health checking this backend service.
3690
3702
  # Not all backend services support legacy health checks. See Load balancer guide.
@@ -3718,12 +3730,13 @@ module Google
3718
3730
  # traffic to the backends of the backend service (Instance Group, Managed
3719
3731
  # Instance Group, Network Endpoint Group), regardless of traffic from the client
3720
3732
  # to the proxy. Only IPv6 health checks are used to check the health of the
3721
- # backends. This field is applicable to either: - Advanced Global External HTTPS
3722
- # Load Balancing (load balancing scheme EXTERNAL_MANAGED), - Regional External
3723
- # HTTPS Load Balancing, - Internal TCP Proxy (load balancing scheme
3724
- # INTERNAL_MANAGED), - Regional Internal HTTPS Load Balancing (load balancing
3725
- # scheme INTERNAL_MANAGED), - Traffic Director with Envoy proxies and proxyless
3726
- # gRPC (load balancing scheme INTERNAL_SELF_MANAGED).
3733
+ # backends. This field is applicable to either: - Advanced global external
3734
+ # Application Load Balancer (load balancing scheme EXTERNAL_MANAGED), - Regional
3735
+ # external Application Load Balancer, - Internal proxy Network Load Balancer (
3736
+ # load balancing scheme INTERNAL_MANAGED), - Regional internal Application Load
3737
+ # Balancer (load balancing scheme INTERNAL_MANAGED), - Traffic Director with
3738
+ # Envoy proxies and proxyless gRPC (load balancing scheme INTERNAL_SELF_MANAGED).
3739
+ #
3727
3740
  # Corresponds to the JSON property `ipAddressSelectionPolicy`
3728
3741
  # @return [String]
3729
3742
  attr_accessor :ip_address_selection_policy
@@ -3823,8 +3836,8 @@ module Google
3823
3836
  attr_accessor :outlier_detection
3824
3837
 
3825
3838
  # Deprecated in favor of portName. The TCP port to connect on the backend. The
3826
- # default value is 80. For Internal TCP/UDP Load Balancing and Network Load
3827
- # Balancing, omit port.
3839
+ # default value is 80. For internal passthrough Network Load Balancers and
3840
+ # external passthrough Network Load Balancers, omit port.
3828
3841
  # Corresponds to the JSON property `port`
3829
3842
  # @return [Fixnum]
3830
3843
  attr_accessor :port
@@ -3833,8 +3846,8 @@ module Google
3833
3846
  # communication to the backend VMs in that group. The named port must be [
3834
3847
  # defined on each backend instance group](https://cloud.google.com/load-
3835
3848
  # balancing/docs/backend-service#named_ports). This parameter has no meaning if
3836
- # the backends are NEGs. For Internal TCP/UDP Load Balancing and Network Load
3837
- # Balancing, omit port_name.
3849
+ # the backends are NEGs. For internal passthrough Network Load Balancers and
3850
+ # external passthrough Network Load Balancers, omit port_name.
3838
3851
  # Corresponds to the JSON property `portName`
3839
3852
  # @return [String]
3840
3853
  attr_accessor :port_name
@@ -3958,6 +3971,7 @@ module Google
3958
3971
  @enable_cdn = args[:enable_cdn] if args.key?(:enable_cdn)
3959
3972
  @failover_policy = args[:failover_policy] if args.key?(:failover_policy)
3960
3973
  @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
3974
+ @ha_policy = args[:ha_policy] if args.key?(:ha_policy)
3961
3975
  @health_checks = args[:health_checks] if args.key?(:health_checks)
3962
3976
  @iap = args[:iap] if args.key?(:iap)
3963
3977
  @id = args[:id] if args.key?(:id)
@@ -4343,20 +4357,20 @@ module Google
4343
4357
  # @return [String]
4344
4358
  attr_accessor :connection_persistence_on_unhealthy_backends
4345
4359
 
4346
- # Enable Strong Session Affinity for Network Load Balancing. This option is not
4347
- # available publicly.
4360
+ # Enable Strong Session Affinity for external passthrough Network Load Balancers.
4361
+ # This option is not available publicly.
4348
4362
  # Corresponds to the JSON property `enableStrongAffinity`
4349
4363
  # @return [Boolean]
4350
4364
  attr_accessor :enable_strong_affinity
4351
4365
  alias_method :enable_strong_affinity?, :enable_strong_affinity
4352
4366
 
4353
4367
  # Specifies how long to keep a Connection Tracking entry while there is no
4354
- # matching traffic (in seconds). For Internal TCP/UDP Load Balancing: - The
4355
- # minimum (default) is 10 minutes and the maximum is 16 hours. - It can be set
4356
- # only if Connection Tracking is less than 5-tuple (i.e. Session Affinity is
4357
- # CLIENT_IP_NO_DESTINATION, CLIENT_IP or CLIENT_IP_PROTO, and Tracking Mode is
4358
- # PER_SESSION). For Network Load Balancer the default is 60 seconds. This option
4359
- # is not available publicly.
4368
+ # matching traffic (in seconds). For internal passthrough Network Load Balancers:
4369
+ # - The minimum (default) is 10 minutes and the maximum is 16 hours. - It can
4370
+ # be set only if Connection Tracking is less than 5-tuple (i.e. Session Affinity
4371
+ # is CLIENT_IP_NO_DESTINATION, CLIENT_IP or CLIENT_IP_PROTO, and Tracking Mode
4372
+ # is PER_SESSION). For external passthrough Network Load Balancers the default
4373
+ # is 60 seconds. This option is not available publicly.
4360
4374
  # Corresponds to the JSON property `idleTimeoutSec`
4361
4375
  # @return [Fixnum]
4362
4376
  attr_accessor :idle_timeout_sec
@@ -4387,16 +4401,16 @@ module Google
4387
4401
  end
4388
4402
  end
4389
4403
 
4390
- # For load balancers that have configurable failover: [Internal TCP/UDP Load
4391
- # Balancing](https://cloud.google.com/load-balancing/docs/internal/failover-
4392
- # overview) and [external TCP/UDP Load Balancing](https://cloud.google.com/load-
4393
- # balancing/docs/network/networklb-failover-overview). On failover or failback,
4394
- # this field indicates whether connection draining will be honored. Google Cloud
4395
- # has a fixed connection draining timeout of 10 minutes. A setting of true
4396
- # terminates existing TCP connections to the active pool during failover and
4397
- # failback, immediately draining traffic. A setting of false allows existing TCP
4398
- # connections to persist, even on VMs no longer in the active pool, for up to
4399
- # the duration of the connection draining timeout (10 minutes).
4404
+ # For load balancers that have configurable failover: [Internal passthrough
4405
+ # Network Load Balancers](https://cloud.google.com/load-balancing/docs/internal/
4406
+ # failover-overview) and [external passthrough Network Load Balancers](https://
4407
+ # cloud.google.com/load-balancing/docs/network/networklb-failover-overview). On
4408
+ # failover or failback, this field indicates whether connection draining will be
4409
+ # honored. Google Cloud has a fixed connection draining timeout of 10 minutes. A
4410
+ # setting of true terminates existing TCP connections to the active pool during
4411
+ # failover and failback, immediately draining traffic. A setting of false allows
4412
+ # existing TCP connections to persist, even on VMs no longer in the active pool,
4413
+ # for up to the duration of the connection draining timeout (10 minutes).
4400
4414
  class BackendServiceFailoverPolicy
4401
4415
  include Google::Apis::Core::Hashable
4402
4416
 
@@ -4410,10 +4424,10 @@ module Google
4410
4424
  # and all backup backend VMs are unhealthy.If set to false, connections are
4411
4425
  # distributed among all primary VMs when all primary and all backup backend VMs
4412
4426
  # are unhealthy. For load balancers that have configurable failover: [Internal
4413
- # TCP/UDP Load Balancing](https://cloud.google.com/load-balancing/docs/internal/
4414
- # failover-overview) and [external TCP/UDP Load Balancing](https://cloud.google.
4415
- # com/load-balancing/docs/network/networklb-failover-overview). The default is
4416
- # false.
4427
+ # passthrough Network Load Balancers](https://cloud.google.com/load-balancing/
4428
+ # docs/internal/failover-overview) and [external passthrough Network Load
4429
+ # Balancers](https://cloud.google.com/load-balancing/docs/network/networklb-
4430
+ # failover-overview). The default is false.
4417
4431
  # Corresponds to the JSON property `dropTrafficIfUnhealthy`
4418
4432
  # @return [Boolean]
4419
4433
  attr_accessor :drop_traffic_if_unhealthy
@@ -4476,6 +4490,75 @@ module Google
4476
4490
  end
4477
4491
  end
4478
4492
 
4493
+ #
4494
+ class BackendServiceHaPolicy
4495
+ include Google::Apis::Core::Hashable
4496
+
4497
+ # Enabling fastIPMove is not supported.
4498
+ # Corresponds to the JSON property `fastIPMove`
4499
+ # @return [String]
4500
+ attr_accessor :fast_ip_move
4501
+
4502
+ # Setting a leader is not supported.
4503
+ # Corresponds to the JSON property `leader`
4504
+ # @return [Google::Apis::ComputeAlpha::BackendServiceHaPolicyLeader]
4505
+ attr_accessor :leader
4506
+
4507
+ def initialize(**args)
4508
+ update!(**args)
4509
+ end
4510
+
4511
+ # Update properties of this object
4512
+ def update!(**args)
4513
+ @fast_ip_move = args[:fast_ip_move] if args.key?(:fast_ip_move)
4514
+ @leader = args[:leader] if args.key?(:leader)
4515
+ end
4516
+ end
4517
+
4518
+ #
4519
+ class BackendServiceHaPolicyLeader
4520
+ include Google::Apis::Core::Hashable
4521
+
4522
+ # Setting backendGroup is not supported.
4523
+ # Corresponds to the JSON property `backendGroup`
4524
+ # @return [String]
4525
+ attr_accessor :backend_group
4526
+
4527
+ # Setting a network endpoint as leader is not supported.
4528
+ # Corresponds to the JSON property `networkEndpoint`
4529
+ # @return [Google::Apis::ComputeAlpha::BackendServiceHaPolicyLeaderNetworkEndpoint]
4530
+ attr_accessor :network_endpoint
4531
+
4532
+ def initialize(**args)
4533
+ update!(**args)
4534
+ end
4535
+
4536
+ # Update properties of this object
4537
+ def update!(**args)
4538
+ @backend_group = args[:backend_group] if args.key?(:backend_group)
4539
+ @network_endpoint = args[:network_endpoint] if args.key?(:network_endpoint)
4540
+ end
4541
+ end
4542
+
4543
+ #
4544
+ class BackendServiceHaPolicyLeaderNetworkEndpoint
4545
+ include Google::Apis::Core::Hashable
4546
+
4547
+ # Specifying the instance name of a leader is not supported.
4548
+ # Corresponds to the JSON property `instance`
4549
+ # @return [String]
4550
+ attr_accessor :instance
4551
+
4552
+ def initialize(**args)
4553
+ update!(**args)
4554
+ end
4555
+
4556
+ # Update properties of this object
4557
+ def update!(**args)
4558
+ @instance = args[:instance] if args.key?(:instance)
4559
+ end
4560
+ end
4561
+
4479
4562
  # Identity-Aware Proxy
4480
4563
  class BackendServiceIap
4481
4564
  include Google::Apis::Core::Hashable
@@ -7275,6 +7358,12 @@ module Google
7275
7358
  # @return [Google::Apis::ComputeAlpha::DiskResourceStatus]
7276
7359
  attr_accessor :resource_status
7277
7360
 
7361
+ # Output only. Reserved for future use.
7362
+ # Corresponds to the JSON property `satisfiesPzi`
7363
+ # @return [Boolean]
7364
+ attr_accessor :satisfies_pzi
7365
+ alias_method :satisfies_pzi?, :satisfies_pzi
7366
+
7278
7367
  # [Output Only] Reserved for future use.
7279
7368
  # Corresponds to the JSON property `satisfiesPzs`
7280
7369
  # @return [Boolean]
@@ -7502,6 +7591,7 @@ module Google
7502
7591
  @replica_zones = args[:replica_zones] if args.key?(:replica_zones)
7503
7592
  @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
7504
7593
  @resource_status = args[:resource_status] if args.key?(:resource_status)
7594
+ @satisfies_pzi = args[:satisfies_pzi] if args.key?(:satisfies_pzi)
7505
7595
  @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
7506
7596
  @self_link = args[:self_link] if args.key?(:self_link)
7507
7597
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
@@ -10424,10 +10514,10 @@ module Google
10424
10514
  # google.com/compute/docs/reference/rest/alpha/globalForwardingRules) * [
10425
10515
  # Regional](https://cloud.google.com/compute/docs/reference/rest/alpha/
10426
10516
  # forwardingRules) A forwarding rule and its corresponding IP address represent
10427
- # the frontend configuration of a Google Cloud Platform load balancer.
10428
- # Forwarding rules can also reference target instances and Cloud VPN Classic
10429
- # gateways (targetVpnGateway). For more information, read Forwarding rule
10430
- # concepts and Using protocol forwarding.
10517
+ # the frontend configuration of a Google Cloud load balancer. Forwarding rules
10518
+ # can also reference target instances and Cloud VPN Classic gateways (
10519
+ # targetVpnGateway). For more information, read Forwarding rule concepts and
10520
+ # Using protocol forwarding.
10431
10521
  class ForwardingRule
10432
10522
  include Google::Apis::Core::Hashable
10433
10523
 
@@ -10483,11 +10573,12 @@ module Google
10483
10573
 
10484
10574
  # This field is used along with the backend_service field for internal load
10485
10575
  # balancing or with the target field for internal TargetInstance. If set to true,
10486
- # clients can access the Internal TCP/UDP Load Balancer, Internal HTTP(S) and
10487
- # TCP Proxy Load Balancer from all regions. If false, only allows access from
10488
- # the local region the load balancer is located at. Note that for
10489
- # INTERNAL_MANAGED forwarding rules, this field cannot be changed after the
10490
- # forwarding rule is created.
10576
+ # clients can access the internal passthrough Network Load Balancers, the
10577
+ # regional internal Application Load Balancer, and the regional internal proxy
10578
+ # Network Load Balancer from all regions. If false, only allows access from the
10579
+ # local region the load balancer is located at. Note that for INTERNAL_MANAGED
10580
+ # forwarding rules, this field cannot be changed after the forwarding rule is
10581
+ # created.
10491
10582
  # Corresponds to the JSON property `allowGlobalAccess`
10492
10583
  # @return [Boolean]
10493
10584
  attr_accessor :allow_global_access
@@ -10511,16 +10602,16 @@ module Google
10511
10602
  alias_method :allow_psc_packet_injection?, :allow_psc_packet_injection
10512
10603
 
10513
10604
  # Identifies the backend service to which the forwarding rule sends traffic.
10514
- # Required for Internal TCP/UDP Load Balancing and Network Load Balancing; must
10515
- # be omitted for all other load balancer types.
10605
+ # Required for internal and external passthrough Network Load Balancers; must be
10606
+ # omitted for all other load balancer types.
10516
10607
  # Corresponds to the JSON property `backendService`
10517
10608
  # @return [String]
10518
10609
  attr_accessor :backend_service
10519
10610
 
10520
- # [Output Only] The URL for the corresponding base Forwarding Rule. By base
10521
- # Forwarding Rule, we mean the Forwarding Rule that has the same IP address,
10522
- # protocol, and port settings with the current Forwarding Rule, but without
10523
- # sourceIPRanges specified. Always empty if the current Forwarding Rule does not
10611
+ # [Output Only] The URL for the corresponding base forwarding rule. By base
10612
+ # forwarding rule, we mean the forwarding rule that has the same IP address,
10613
+ # protocol, and port settings with the current forwarding rule, but without
10614
+ # sourceIPRanges specified. Always empty if the current forwarding rule does not
10524
10615
  # have sourceIPRanges specified.
10525
10616
  # Corresponds to the JSON property `baseForwardingRule`
10526
10617
  # @return [String]
@@ -10582,7 +10673,7 @@ module Google
10582
10673
  alias_method :is_mirroring_collector?, :is_mirroring_collector
10583
10674
 
10584
10675
  # [Output Only] Type of the resource. Always compute#forwardingRule for
10585
- # Forwarding Rule resources.
10676
+ # forwarding rule resources.
10586
10677
  # Corresponds to the JSON property `kind`
10587
10678
  # @return [String]
10588
10679
  attr_accessor :kind
@@ -10644,13 +10735,13 @@ module Google
10644
10735
  # @return [String]
10645
10736
  attr_accessor :name
10646
10737
 
10647
- # This field is not used for global external load balancing. For Internal TCP/
10648
- # UDP Load Balancing, this field identifies the network that the load balanced
10649
- # IP should belong to for this Forwarding Rule. If the subnetwork is specified,
10650
- # the network of the subnetwork will be used. If neither subnetwork nor this
10651
- # field is specified, the default network will be used. For Private Service
10652
- # Connect forwarding rules that forward traffic to Google APIs, a network must
10653
- # be provided.
10738
+ # This field is not used for global external load balancing. For internal
10739
+ # passthrough Network Load Balancers, this field identifies the network that the
10740
+ # load balanced IP should belong to for this forwarding rule. If the subnetwork
10741
+ # is specified, the network of the subnetwork will be used. If neither
10742
+ # subnetwork nor this field is specified, the default network will be used. For
10743
+ # Private Service Connect forwarding rules that forward traffic to Google APIs,
10744
+ # a network must be provided.
10654
10745
  # Corresponds to the JSON property `network`
10655
10746
  # @return [String]
10656
10747
  attr_accessor :network
@@ -10709,7 +10800,7 @@ module Google
10709
10800
  # @return [Array<String>]
10710
10801
  attr_accessor :ports
10711
10802
 
10712
- # [Output Only] The PSC connection id of the PSC Forwarding Rule.
10803
+ # [Output Only] The PSC connection id of the PSC forwarding rule.
10713
10804
  # Corresponds to the JSON property `pscConnectionId`
10714
10805
  # @return [Fixnum]
10715
10806
  attr_accessor :psc_connection_id
@@ -10743,7 +10834,7 @@ module Google
10743
10834
  # @return [Array<Google::Apis::ComputeAlpha::ForwardingRuleServiceDirectoryRegistration>]
10744
10835
  attr_accessor :service_directory_registrations
10745
10836
 
10746
- # An optional prefix to the service name for this Forwarding Rule. If specified,
10837
+ # An optional prefix to the service name for this forwarding rule. If specified,
10747
10838
  # the prefix is the first label of the fully qualified service name. The label
10748
10839
  # must be 1-63 characters long, and comply with RFC1035. Specifically, the label
10749
10840
  # must be 1-63 characters long and match the regular expression `[a-z]([-a-z0-9]*
@@ -10755,16 +10846,16 @@ module Google
10755
10846
  # @return [String]
10756
10847
  attr_accessor :service_label
10757
10848
 
10758
- # [Output Only] The internal fully qualified service name for this Forwarding
10759
- # Rule. This field is only used for internal load balancing.
10849
+ # [Output Only] The internal fully qualified service name for this forwarding
10850
+ # rule. This field is only used for internal load balancing.
10760
10851
  # Corresponds to the JSON property `serviceName`
10761
10852
  # @return [String]
10762
10853
  attr_accessor :service_name
10763
10854
 
10764
- # If not empty, this Forwarding Rule will only forward the traffic when the
10855
+ # If not empty, this forwarding rule will only forward the traffic when the
10765
10856
  # source IP address matches one of the IP addresses or CIDR ranges set here.
10766
- # Note that a Forwarding Rule can only have up to 64 source IP ranges, and this
10767
- # field can only be used with a regional Forwarding Rule whose scheme is
10857
+ # Note that a forwarding rule can only have up to 64 source IP ranges, and this
10858
+ # field can only be used with a regional forwarding rule whose scheme is
10768
10859
  # EXTERNAL. Each source_ip_range entry should be either an IP address (for
10769
10860
  # example, 1.2.3.4) or a CIDR range (for example, 1.2.3.0/24).
10770
10861
  # Corresponds to the JSON property `sourceIpRanges`
@@ -10772,10 +10863,11 @@ module Google
10772
10863
  attr_accessor :source_ip_ranges
10773
10864
 
10774
10865
  # This field identifies the subnetwork that the load balanced IP should belong
10775
- # to for this Forwarding Rule, used in internal load balancing and network load
10776
- # balancing with IPv6. If the network specified is in auto subnet mode, this
10777
- # field is optional. However, a subnetwork must be specified if the network is
10778
- # in custom subnet mode or when creating external forwarding rule with IPv6.
10866
+ # to for this forwarding rule, used with internal load balancers and external
10867
+ # passthrough Network Load Balancers with IPv6. If the network specified is in
10868
+ # auto subnet mode, this field is optional. However, a subnetwork must be
10869
+ # specified if the network is in custom subnet mode or when creating external
10870
+ # forwarding rule with IPv6.
10779
10871
  # Corresponds to the JSON property `subnetwork`
10780
10872
  # @return [String]
10781
10873
  attr_accessor :subnetwork
@@ -11102,9 +11194,9 @@ module Google
11102
11194
  end
11103
11195
  end
11104
11196
 
11105
- # Describes the auto-registration of the Forwarding Rule to Service Directory.
11197
+ # Describes the auto-registration of the forwarding rule to Service Directory.
11106
11198
  # The region and project of the Service Directory resource generated from this
11107
- # registration will be the same as this Forwarding Rule.
11199
+ # registration will be the same as this forwarding rule.
11108
11200
  class ForwardingRuleServiceDirectoryRegistration
11109
11201
  include Google::Apis::Core::Hashable
11110
11202
 
@@ -11120,7 +11212,7 @@ module Google
11120
11212
 
11121
11213
  # [Optional] Service Directory region to register this global forwarding rule
11122
11214
  # under. Default to "us-central1". Only used for PSC for Google APIs. All PSC
11123
- # for Google APIs Forwarding Rules on the same network should use the same
11215
+ # for Google APIs forwarding rules on the same network should use the same
11124
11216
  # Service Directory region.
11125
11217
  # Corresponds to the JSON property `serviceDirectoryRegion`
11126
11218
  # @return [String]
@@ -11233,9 +11325,9 @@ module Google
11233
11325
  class FutureReservation
11234
11326
  include Google::Apis::Core::Hashable
11235
11327
 
11236
- # Future timestamp when the FR auto-created reservations will be deleted by GCE.
11237
- # Format of this field must be a valid href="https://www.ietf.org/rfc/rfc3339.
11238
- # txt">RFC3339 value.
11328
+ # Future timestamp when the FR auto-created reservations will be deleted by
11329
+ # Compute Engine. Format of this field must be a valid href="https://www.ietf.
11330
+ # org/rfc/rfc3339.txt">RFC3339 value.
11239
11331
  # Corresponds to the JSON property `autoCreatedReservationsDeleteTime`
11240
11332
  # @return [String]
11241
11333
  attr_accessor :auto_created_reservations_delete_time
@@ -11974,7 +12066,7 @@ module Google
11974
12066
 
11975
12067
  # Specifies how a port is selected for health checking. Can be one of the
11976
12068
  # following values: USE_FIXED_PORT: Specifies a port number explicitly using the
11977
- # port field in the health check. Supported by backend services for pass-through
12069
+ # port field in the health check. Supported by backend services for passthrough
11978
12070
  # load balancers and backend services for proxy load balancers. Not supported by
11979
12071
  # target pools. The health check supports all backends supported by the backend
11980
12072
  # service provided the backend can be health checked. For example, GCE_VM_IP
@@ -11982,13 +12074,13 @@ module Google
11982
12074
  # group backends. USE_NAMED_PORT: Not supported. USE_SERVING_PORT: Provides an
11983
12075
  # indirect method of specifying the health check port by referring to the
11984
12076
  # backend service. Only supported by backend services for proxy load balancers.
11985
- # Not supported by target pools. Not supported by backend services for pass-
11986
- # through load balancers. Supports all backends that can be health checked; for
11987
- # example, GCE_VM_IP_PORT network endpoint groups and instance group backends.
11988
- # For GCE_VM_IP_PORT network endpoint group backends, the health check uses the
11989
- # port number specified for each endpoint in the network endpoint group. For
11990
- # instance group backends, the health check uses the port number determined by
11991
- # looking up the backend service's named port in the instance group's list of
12077
+ # Not supported by target pools. Not supported by backend services for
12078
+ # passthrough load balancers. Supports all backends that can be health checked;
12079
+ # for example, GCE_VM_IP_PORT network endpoint groups and instance group
12080
+ # backends. For GCE_VM_IP_PORT network endpoint group backends, the health check
12081
+ # uses the port number specified for each endpoint in the network endpoint group.
12082
+ # For instance group backends, the health check uses the port number determined
12083
+ # by looking up the backend service's named port in the instance group's list of
11992
12084
  # named ports.
11993
12085
  # Corresponds to the JSON property `portSpecification`
11994
12086
  # @return [String]
@@ -12432,7 +12524,7 @@ module Google
12432
12524
 
12433
12525
  # Specifies how a port is selected for health checking. Can be one of the
12434
12526
  # following values: USE_FIXED_PORT: Specifies a port number explicitly using the
12435
- # port field in the health check. Supported by backend services for pass-through
12527
+ # port field in the health check. Supported by backend services for passthrough
12436
12528
  # load balancers and backend services for proxy load balancers. Not supported by
12437
12529
  # target pools. The health check supports all backends supported by the backend
12438
12530
  # service provided the backend can be health checked. For example, GCE_VM_IP
@@ -12440,13 +12532,13 @@ module Google
12440
12532
  # group backends. USE_NAMED_PORT: Not supported. USE_SERVING_PORT: Provides an
12441
12533
  # indirect method of specifying the health check port by referring to the
12442
12534
  # backend service. Only supported by backend services for proxy load balancers.
12443
- # Not supported by target pools. Not supported by backend services for pass-
12444
- # through load balancers. Supports all backends that can be health checked; for
12445
- # example, GCE_VM_IP_PORT network endpoint groups and instance group backends.
12446
- # For GCE_VM_IP_PORT network endpoint group backends, the health check uses the
12447
- # port number specified for each endpoint in the network endpoint group. For
12448
- # instance group backends, the health check uses the port number determined by
12449
- # looking up the backend service's named port in the instance group's list of
12535
+ # Not supported by target pools. Not supported by backend services for
12536
+ # passthrough load balancers. Supports all backends that can be health checked;
12537
+ # for example, GCE_VM_IP_PORT network endpoint groups and instance group
12538
+ # backends. For GCE_VM_IP_PORT network endpoint group backends, the health check
12539
+ # uses the port number specified for each endpoint in the network endpoint group.
12540
+ # For instance group backends, the health check uses the port number determined
12541
+ # by looking up the backend service's named port in the instance group's list of
12450
12542
  # named ports.
12451
12543
  # Corresponds to the JSON property `portSpecification`
12452
12544
  # @return [String]
@@ -12520,7 +12612,7 @@ module Google
12520
12612
 
12521
12613
  # Specifies how a port is selected for health checking. Can be one of the
12522
12614
  # following values: USE_FIXED_PORT: Specifies a port number explicitly using the
12523
- # port field in the health check. Supported by backend services for pass-through
12615
+ # port field in the health check. Supported by backend services for passthrough
12524
12616
  # load balancers and backend services for proxy load balancers. Also supported
12525
12617
  # in legacy HTTP health checks for target pools. The health check supports all
12526
12618
  # backends supported by the backend service provided the backend can be health
@@ -12608,7 +12700,7 @@ module Google
12608
12700
 
12609
12701
  # Specifies how a port is selected for health checking. Can be one of the
12610
12702
  # following values: USE_FIXED_PORT: Specifies a port number explicitly using the
12611
- # port field in the health check. Supported by backend services for pass-through
12703
+ # port field in the health check. Supported by backend services for passthrough
12612
12704
  # load balancers and backend services for proxy load balancers. Not supported by
12613
12705
  # target pools. The health check supports all backends supported by the backend
12614
12706
  # service provided the backend can be health checked. For example, GCE_VM_IP
@@ -12616,13 +12708,13 @@ module Google
12616
12708
  # group backends. USE_NAMED_PORT: Not supported. USE_SERVING_PORT: Provides an
12617
12709
  # indirect method of specifying the health check port by referring to the
12618
12710
  # backend service. Only supported by backend services for proxy load balancers.
12619
- # Not supported by target pools. Not supported by backend services for pass-
12620
- # through load balancers. Supports all backends that can be health checked; for
12621
- # example, GCE_VM_IP_PORT network endpoint groups and instance group backends.
12622
- # For GCE_VM_IP_PORT network endpoint group backends, the health check uses the
12623
- # port number specified for each endpoint in the network endpoint group. For
12624
- # instance group backends, the health check uses the port number determined by
12625
- # looking up the backend service's named port in the instance group's list of
12711
+ # Not supported by target pools. Not supported by backend services for
12712
+ # passthrough load balancers. Supports all backends that can be health checked;
12713
+ # for example, GCE_VM_IP_PORT network endpoint groups and instance group
12714
+ # backends. For GCE_VM_IP_PORT network endpoint group backends, the health check
12715
+ # uses the port number specified for each endpoint in the network endpoint group.
12716
+ # For instance group backends, the health check uses the port number determined
12717
+ # by looking up the backend service's named port in the instance group's list of
12626
12718
  # named ports.
12627
12719
  # Corresponds to the JSON property `portSpecification`
12628
12720
  # @return [String]
@@ -12674,18 +12766,13 @@ module Google
12674
12766
  # resources: * [Regional](/compute/docs/reference/rest/alpha/regionHealthChecks)
12675
12767
  # * [Global](/compute/docs/reference/rest/alpha/healthChecks) These health check
12676
12768
  # resources can be used for load balancing and for autohealing VMs in a managed
12677
- # instance group (MIG). **Load balancing** The following load balancer can use
12678
- # either regional or global health check: * Internal TCP/UDP load balancer The
12679
- # following load balancers require regional health check: * Internal HTTP(S)
12680
- # load balancer * Backend service-based network load balancer Traffic Director
12681
- # and the following load balancers require global health check: * External HTTP(
12682
- # S) load balancer * TCP proxy load balancer * SSL proxy load balancer The
12683
- # following load balancer require [legacy HTTP health checks](/compute/docs/
12684
- # reference/rest/v1/httpHealthChecks): * Target pool-based network load balancer
12685
- # **Autohealing in MIGs** The health checks that you use for autohealing VMs in
12686
- # a MIG can be either regional or global. For more information, see Set up an
12687
- # application health check and autohealing. For more information, see Health
12688
- # checks overview.
12769
+ # instance group (MIG). **Load balancing** Health check requirements vary
12770
+ # depending on the type of load balancer. For details about the type of health
12771
+ # check supported for each load balancer and corresponding backend type, see
12772
+ # Health checks overview: Load balancer guide. **Autohealing in MIGs** The
12773
+ # health checks that you use for autohealing VMs in a MIG can be either regional
12774
+ # or global. For more information, see Set up an application health check and
12775
+ # autohealing. For more information, see Health checks overview.
12689
12776
  class HealthCheck
12690
12777
  include Google::Apis::Core::Hashable
12691
12778
 
@@ -15327,6 +15414,12 @@ module Google
15327
15414
  # @return [Google::Apis::ComputeAlpha::RolloutPolicy]
15328
15415
  attr_accessor :rollout_override
15329
15416
 
15417
+ # Output only. Reserved for future use.
15418
+ # Corresponds to the JSON property `satisfiesPzi`
15419
+ # @return [Boolean]
15420
+ attr_accessor :satisfies_pzi
15421
+ alias_method :satisfies_pzi?, :satisfies_pzi
15422
+
15330
15423
  # [Output Only] Reserved for future use.
15331
15424
  # Corresponds to the JSON property `satisfiesPzs`
15332
15425
  # @return [Boolean]
@@ -15473,6 +15566,7 @@ module Google
15473
15566
  @name = args[:name] if args.key?(:name)
15474
15567
  @raw_disk = args[:raw_disk] if args.key?(:raw_disk)
15475
15568
  @rollout_override = args[:rollout_override] if args.key?(:rollout_override)
15569
+ @satisfies_pzi = args[:satisfies_pzi] if args.key?(:satisfies_pzi)
15476
15570
  @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
15477
15571
  @self_link = args[:self_link] if args.key?(:self_link)
15478
15572
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
@@ -15952,6 +16046,12 @@ module Google
15952
16046
  # @return [Google::Apis::ComputeAlpha::ResourceStatus]
15953
16047
  attr_accessor :resource_status
15954
16048
 
16049
+ # [Output Only] Reserved for future use.
16050
+ # Corresponds to the JSON property `satisfiesPzi`
16051
+ # @return [Boolean]
16052
+ attr_accessor :satisfies_pzi
16053
+ alias_method :satisfies_pzi?, :satisfies_pzi
16054
+
15955
16055
  # [Output Only] Reserved for future use.
15956
16056
  # Corresponds to the JSON property `satisfiesPzs`
15957
16057
  # @return [Boolean]
@@ -16106,6 +16206,7 @@ module Google
16106
16206
  @reservation_affinity = args[:reservation_affinity] if args.key?(:reservation_affinity)
16107
16207
  @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
16108
16208
  @resource_status = args[:resource_status] if args.key?(:resource_status)
16209
+ @satisfies_pzi = args[:satisfies_pzi] if args.key?(:satisfies_pzi)
16109
16210
  @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
16110
16211
  @scheduling = args[:scheduling] if args.key?(:scheduling)
16111
16212
  @secure_tags = args[:secure_tags] if args.key?(:secure_tags)
@@ -16802,6 +16903,11 @@ module Google
16802
16903
  # @return [Array<Google::Apis::ComputeAlpha::NamedPort>]
16803
16904
  attr_accessor :named_ports
16804
16905
 
16906
+ # Input only additional params for instance group manager creation.
16907
+ # Corresponds to the JSON property `params`
16908
+ # @return [Google::Apis::ComputeAlpha::InstanceGroupManagerParams]
16909
+ attr_accessor :params
16910
+
16805
16911
  # [Output Only] The URL of the region where the managed instance group resides (
16806
16912
  # for regional resources).
16807
16913
  # Corresponds to the JSON property `region`
@@ -16923,6 +17029,7 @@ module Google
16923
17029
  @list_managed_instances_results = args[:list_managed_instances_results] if args.key?(:list_managed_instances_results)
16924
17030
  @name = args[:name] if args.key?(:name)
16925
17031
  @named_ports = args[:named_ports] if args.key?(:named_ports)
17032
+ @params = args[:params] if args.key?(:params)
16926
17033
  @region = args[:region] if args.key?(:region)
16927
17034
  @self_link = args[:self_link] if args.key?(:self_link)
16928
17035
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
@@ -17524,6 +17631,28 @@ module Google
17524
17631
  end
17525
17632
  end
17526
17633
 
17634
+ # Input only additional params for instance group manager creation.
17635
+ class InstanceGroupManagerParams
17636
+ include Google::Apis::Core::Hashable
17637
+
17638
+ # Resource manager tags to be bound to the instance group manager. Tag keys and
17639
+ # values have the same definition as resource manager tags. Keys must be in the
17640
+ # format `tagKeys/123`, and values are in the format `tagValues/456`. The field
17641
+ # is allowed for INSERT only.
17642
+ # Corresponds to the JSON property `resourceManagerTags`
17643
+ # @return [Hash<String,String>]
17644
+ attr_accessor :resource_manager_tags
17645
+
17646
+ def initialize(**args)
17647
+ update!(**args)
17648
+ end
17649
+
17650
+ # Update properties of this object
17651
+ def update!(**args)
17652
+ @resource_manager_tags = args[:resource_manager_tags] if args.key?(:resource_manager_tags)
17653
+ end
17654
+ end
17655
+
17527
17656
  # InstanceGroupManagerResizeRequest represents a request to create a number of
17528
17657
  # VMs: either immediately or by queuing the request for the specified time. This
17529
17658
  # resize request is nested under InstanceGroupManager and the VMs created by
@@ -17895,7 +18024,8 @@ module Google
17895
18024
  # @return [Fixnum]
17896
18025
  attr_accessor :initial_delay_sec
17897
18026
 
17898
- # Defines behaviour of using instances from standby pool to resize MIG.
18027
+ # Defines how a MIG resumes or starts VMs from a standby pool when the group
18028
+ # scales out. The default mode is `MANUAL`.
17899
18029
  # Corresponds to the JSON property `mode`
17900
18030
  # @return [String]
17901
18031
  attr_accessor :mode
@@ -20364,6 +20494,25 @@ module Google
20364
20494
  end
20365
20495
  end
20366
20496
 
20497
+ #
20498
+ class InstancesAddNetworkInterfaceRequest
20499
+ include Google::Apis::Core::Hashable
20500
+
20501
+ # A network interface resource attached to an instance.
20502
+ # Corresponds to the JSON property `network_interface`
20503
+ # @return [Google::Apis::ComputeAlpha::NetworkInterface]
20504
+ attr_accessor :network_interface
20505
+
20506
+ def initialize(**args)
20507
+ update!(**args)
20508
+ end
20509
+
20510
+ # Update properties of this object
20511
+ def update!(**args)
20512
+ @network_interface = args[:network_interface] if args.key?(:network_interface)
20513
+ end
20514
+ end
20515
+
20367
20516
  #
20368
20517
  class InstancesAddResourcePoliciesRequest
20369
20518
  include Google::Apis::Core::Hashable
@@ -20929,6 +21078,12 @@ module Google
20929
21078
  # @return [Google::Apis::ComputeAlpha::InstantSnapshotResourceStatus]
20930
21079
  attr_accessor :resource_status
20931
21080
 
21081
+ # Output only. Reserved for future use.
21082
+ # Corresponds to the JSON property `satisfiesPzi`
21083
+ # @return [Boolean]
21084
+ attr_accessor :satisfies_pzi
21085
+ alias_method :satisfies_pzi?, :satisfies_pzi
21086
+
20932
21087
  # [Output Only] Reserved for future use.
20933
21088
  # Corresponds to the JSON property `satisfiesPzs`
20934
21089
  # @return [Boolean]
@@ -20995,6 +21150,7 @@ module Google
20995
21150
  @name = args[:name] if args.key?(:name)
20996
21151
  @region = args[:region] if args.key?(:region)
20997
21152
  @resource_status = args[:resource_status] if args.key?(:resource_status)
21153
+ @satisfies_pzi = args[:satisfies_pzi] if args.key?(:satisfies_pzi)
20998
21154
  @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
20999
21155
  @self_link = args[:self_link] if args.key?(:self_link)
21000
21156
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
@@ -24955,6 +25111,12 @@ module Google
24955
25111
  # @return [String]
24956
25112
  attr_accessor :name
24957
25113
 
25114
+ # Output only. Reserved for future use.
25115
+ # Corresponds to the JSON property `satisfiesPzi`
25116
+ # @return [Boolean]
25117
+ attr_accessor :satisfies_pzi
25118
+ alias_method :satisfies_pzi?, :satisfies_pzi
25119
+
24958
25120
  # [Output Only] Reserved for future use.
24959
25121
  # Corresponds to the JSON property `satisfiesPzs`
24960
25122
  # @return [Boolean]
@@ -25029,6 +25191,7 @@ module Google
25029
25191
  @kind = args[:kind] if args.key?(:kind)
25030
25192
  @machine_image_encryption_key = args[:machine_image_encryption_key] if args.key?(:machine_image_encryption_key)
25031
25193
  @name = args[:name] if args.key?(:name)
25194
+ @satisfies_pzi = args[:satisfies_pzi] if args.key?(:satisfies_pzi)
25032
25195
  @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
25033
25196
  @saved_disks = args[:saved_disks] if args.key?(:saved_disks)
25034
25197
  @self_link = args[:self_link] if args.key?(:self_link)
@@ -41047,6 +41210,13 @@ module Google
41047
41210
  # @return [Google::Apis::ComputeAlpha::BfdStatus]
41048
41211
  attr_accessor :bfd_status
41049
41212
 
41213
+ # Enable IPv4 traffic over BGP Peer. It is enabled by default if the
41214
+ # peerIpAddress is version 4.
41215
+ # Corresponds to the JSON property `enableIpv4`
41216
+ # @return [Boolean]
41217
+ attr_accessor :enable_ipv4
41218
+ alias_method :enable_ipv4?, :enable_ipv4
41219
+
41050
41220
  # Enable IPv6 traffic over BGP Peer. If not specified, it is disabled by default.
41051
41221
  # Corresponds to the JSON property `enableIpv6`
41052
41222
  # @return [Boolean]
@@ -41058,6 +41228,11 @@ module Google
41058
41228
  # @return [String]
41059
41229
  attr_accessor :ip_address
41060
41230
 
41231
+ # IPv4 address of the local BGP interface.
41232
+ # Corresponds to the JSON property `ipv4NexthopAddress`
41233
+ # @return [String]
41234
+ attr_accessor :ipv4_nexthop_address
41235
+
41061
41236
  # IPv6 address of the local BGP interface.
41062
41237
  # Corresponds to the JSON property `ipv6NexthopAddress`
41063
41238
  # @return [String]
@@ -41089,6 +41264,11 @@ module Google
41089
41264
  # @return [String]
41090
41265
  attr_accessor :peer_ip_address
41091
41266
 
41267
+ # IPv4 address of the remote BGP interface.
41268
+ # Corresponds to the JSON property `peerIpv4NexthopAddress`
41269
+ # @return [String]
41270
+ attr_accessor :peer_ipv4_nexthop_address
41271
+
41092
41272
  # IPv6 address of the remote BGP interface.
41093
41273
  # Corresponds to the JSON property `peerIpv6NexthopAddress`
41094
41274
  # @return [String]
@@ -41136,14 +41316,17 @@ module Google
41136
41316
  def update!(**args)
41137
41317
  @advertised_routes = args[:advertised_routes] if args.key?(:advertised_routes)
41138
41318
  @bfd_status = args[:bfd_status] if args.key?(:bfd_status)
41319
+ @enable_ipv4 = args[:enable_ipv4] if args.key?(:enable_ipv4)
41139
41320
  @enable_ipv6 = args[:enable_ipv6] if args.key?(:enable_ipv6)
41140
41321
  @ip_address = args[:ip_address] if args.key?(:ip_address)
41322
+ @ipv4_nexthop_address = args[:ipv4_nexthop_address] if args.key?(:ipv4_nexthop_address)
41141
41323
  @ipv6_nexthop_address = args[:ipv6_nexthop_address] if args.key?(:ipv6_nexthop_address)
41142
41324
  @linked_vpn_tunnel = args[:linked_vpn_tunnel] if args.key?(:linked_vpn_tunnel)
41143
41325
  @md5_auth_enabled = args[:md5_auth_enabled] if args.key?(:md5_auth_enabled)
41144
41326
  @name = args[:name] if args.key?(:name)
41145
41327
  @num_learned_routes = args[:num_learned_routes] if args.key?(:num_learned_routes)
41146
41328
  @peer_ip_address = args[:peer_ip_address] if args.key?(:peer_ip_address)
41329
+ @peer_ipv4_nexthop_address = args[:peer_ipv4_nexthop_address] if args.key?(:peer_ipv4_nexthop_address)
41147
41330
  @peer_ipv6_nexthop_address = args[:peer_ipv6_nexthop_address] if args.key?(:peer_ipv6_nexthop_address)
41148
41331
  @router_appliance_instance = args[:router_appliance_instance] if args.key?(:router_appliance_instance)
41149
41332
  @state = args[:state] if args.key?(:state)
@@ -41767,7 +41950,7 @@ module Google
41767
41950
 
41768
41951
  # Specifies how a port is selected for health checking. Can be one of the
41769
41952
  # following values: USE_FIXED_PORT: Specifies a port number explicitly using the
41770
- # port field in the health check. Supported by backend services for pass-through
41953
+ # port field in the health check. Supported by backend services for passthrough
41771
41954
  # load balancers and backend services for proxy load balancers. Not supported by
41772
41955
  # target pools. The health check supports all backends supported by the backend
41773
41956
  # service provided the backend can be health checked. For example, GCE_VM_IP
@@ -41775,13 +41958,13 @@ module Google
41775
41958
  # group backends. USE_NAMED_PORT: Not supported. USE_SERVING_PORT: Provides an
41776
41959
  # indirect method of specifying the health check port by referring to the
41777
41960
  # backend service. Only supported by backend services for proxy load balancers.
41778
- # Not supported by target pools. Not supported by backend services for pass-
41779
- # through load balancers. Supports all backends that can be health checked; for
41780
- # example, GCE_VM_IP_PORT network endpoint groups and instance group backends.
41781
- # For GCE_VM_IP_PORT network endpoint group backends, the health check uses the
41782
- # port number specified for each endpoint in the network endpoint group. For
41783
- # instance group backends, the health check uses the port number determined by
41784
- # looking up the backend service's named port in the instance group's list of
41961
+ # Not supported by target pools. Not supported by backend services for
41962
+ # passthrough load balancers. Supports all backends that can be health checked;
41963
+ # for example, GCE_VM_IP_PORT network endpoint groups and instance group
41964
+ # backends. For GCE_VM_IP_PORT network endpoint group backends, the health check
41965
+ # uses the port number specified for each endpoint in the network endpoint group.
41966
+ # For instance group backends, the health check uses the port number determined
41967
+ # by looking up the backend service's named port in the instance group's list of
41785
41968
  # named ports.
41786
41969
  # Corresponds to the JSON property `portSpecification`
41787
41970
  # @return [String]
@@ -42893,12 +43076,33 @@ module Google
42893
43076
  # @return [Float]
42894
43077
  attr_accessor :auto_deploy_load_threshold
42895
43078
 
43079
+ #
43080
+ # Corresponds to the JSON property `detectionAbsoluteQps`
43081
+ # @return [Float]
43082
+ attr_accessor :detection_absolute_qps
43083
+
43084
+ #
43085
+ # Corresponds to the JSON property `detectionLoadThreshold`
43086
+ # @return [Float]
43087
+ attr_accessor :detection_load_threshold
43088
+
43089
+ #
43090
+ # Corresponds to the JSON property `detectionRelativeToBaselineQps`
43091
+ # @return [Float]
43092
+ attr_accessor :detection_relative_to_baseline_qps
43093
+
42896
43094
  # The name must be 1-63 characters long, and comply with RFC1035. The name must
42897
43095
  # be unique within the security policy.
42898
43096
  # Corresponds to the JSON property `name`
42899
43097
  # @return [String]
42900
43098
  attr_accessor :name
42901
43099
 
43100
+ # Configuration options for enabling Adaptive Protection to operate on specified
43101
+ # granular traffic units.
43102
+ # Corresponds to the JSON property `trafficGranularityConfigs`
43103
+ # @return [Array<Google::Apis::ComputeAlpha::SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigThresholdConfigTrafficGranularityConfig>]
43104
+ attr_accessor :traffic_granularity_configs
43105
+
42902
43106
  def initialize(**args)
42903
43107
  update!(**args)
42904
43108
  end
@@ -42909,7 +43113,46 @@ module Google
42909
43113
  @auto_deploy_expiration_sec = args[:auto_deploy_expiration_sec] if args.key?(:auto_deploy_expiration_sec)
42910
43114
  @auto_deploy_impacted_baseline_threshold = args[:auto_deploy_impacted_baseline_threshold] if args.key?(:auto_deploy_impacted_baseline_threshold)
42911
43115
  @auto_deploy_load_threshold = args[:auto_deploy_load_threshold] if args.key?(:auto_deploy_load_threshold)
43116
+ @detection_absolute_qps = args[:detection_absolute_qps] if args.key?(:detection_absolute_qps)
43117
+ @detection_load_threshold = args[:detection_load_threshold] if args.key?(:detection_load_threshold)
43118
+ @detection_relative_to_baseline_qps = args[:detection_relative_to_baseline_qps] if args.key?(:detection_relative_to_baseline_qps)
42912
43119
  @name = args[:name] if args.key?(:name)
43120
+ @traffic_granularity_configs = args[:traffic_granularity_configs] if args.key?(:traffic_granularity_configs)
43121
+ end
43122
+ end
43123
+
43124
+ # Configurations to specifc granular traffic units processed by Adaptive
43125
+ # Protection.
43126
+ class SecurityPolicyAdaptiveProtectionConfigLayer7DdosDefenseConfigThresholdConfigTrafficGranularityConfig
43127
+ include Google::Apis::Core::Hashable
43128
+
43129
+ # If enabled, traffic matching each unique value for the specified type
43130
+ # constitutes a separate traffic unit. It can only be set to true if `value` is
43131
+ # empty.
43132
+ # Corresponds to the JSON property `enableEachUniqueValue`
43133
+ # @return [Boolean]
43134
+ attr_accessor :enable_each_unique_value
43135
+ alias_method :enable_each_unique_value?, :enable_each_unique_value
43136
+
43137
+ # Type of this configuration.
43138
+ # Corresponds to the JSON property `type`
43139
+ # @return [String]
43140
+ attr_accessor :type
43141
+
43142
+ # Requests that match this value constitute a granular traffic unit.
43143
+ # Corresponds to the JSON property `value`
43144
+ # @return [String]
43145
+ attr_accessor :value
43146
+
43147
+ def initialize(**args)
43148
+ update!(**args)
43149
+ end
43150
+
43151
+ # Update properties of this object
43152
+ def update!(**args)
43153
+ @enable_each_unique_value = args[:enable_each_unique_value] if args.key?(:enable_each_unique_value)
43154
+ @type = args[:type] if args.key?(:type)
43155
+ @value = args[:value] if args.key?(:value)
42913
43156
  end
42914
43157
  end
42915
43158
 
@@ -43882,7 +44125,13 @@ module Google
43882
44125
  # is truncated to the first 128 bytes. - SNI: Server name indication in the TLS
43883
44126
  # session of the HTTPS request. The key value is truncated to the first 128
43884
44127
  # bytes. The key type defaults to ALL on a HTTP session. - REGION_CODE: The
43885
- # country/region from which the request originates.
44128
+ # country/region from which the request originates. - TLS_JA3_FINGERPRINT: JA3
44129
+ # TLS/SSL fingerprint if the client connects using HTTPS, HTTP/2 or HTTP/3. If
44130
+ # not available, the key type defaults to ALL. - USER_IP: The IP address of the
44131
+ # originating client, which is resolved based on "userIpRequestHeaders"
44132
+ # configured with the security policy. If there is no "userIpRequestHeaders"
44133
+ # configuration or an IP address cannot be resolved from it, the key type
44134
+ # defaults to IP.
43886
44135
  # Corresponds to the JSON property `enforceOnKey`
43887
44136
  # @return [String]
43888
44137
  attr_accessor :enforce_on_key
@@ -43977,7 +44226,13 @@ module Google
43977
44226
  # is truncated to the first 128 bytes. - SNI: Server name indication in the TLS
43978
44227
  # session of the HTTPS request. The key value is truncated to the first 128
43979
44228
  # bytes. The key type defaults to ALL on a HTTP session. - REGION_CODE: The
43980
- # country/region from which the request originates.
44229
+ # country/region from which the request originates. - TLS_JA3_FINGERPRINT: JA3
44230
+ # TLS/SSL fingerprint if the client connects using HTTPS, HTTP/2 or HTTP/3. If
44231
+ # not available, the key type defaults to ALL. - USER_IP: The IP address of the
44232
+ # originating client, which is resolved based on "userIpRequestHeaders"
44233
+ # configured with the security policy. If there is no "userIpRequestHeaders"
44234
+ # configuration or an IP address cannot be resolved from it, the key type
44235
+ # defaults to IP.
43981
44236
  # Corresponds to the JSON property `enforceOnKeyType`
43982
44237
  # @return [String]
43983
44238
  attr_accessor :enforce_on_key_type
@@ -45542,6 +45797,12 @@ module Google
45542
45797
  # @return [String]
45543
45798
  attr_accessor :region
45544
45799
 
45800
+ # Output only. Reserved for future use.
45801
+ # Corresponds to the JSON property `satisfiesPzi`
45802
+ # @return [Boolean]
45803
+ attr_accessor :satisfies_pzi
45804
+ alias_method :satisfies_pzi?, :satisfies_pzi
45805
+
45545
45806
  # [Output Only] Reserved for future use.
45546
45807
  # Corresponds to the JSON property `satisfiesPzs`
45547
45808
  # @return [Boolean]
@@ -45691,6 +45952,7 @@ module Google
45691
45952
  @max_retention_days = args[:max_retention_days] if args.key?(:max_retention_days)
45692
45953
  @name = args[:name] if args.key?(:name)
45693
45954
  @region = args[:region] if args.key?(:region)
45955
+ @satisfies_pzi = args[:satisfies_pzi] if args.key?(:satisfies_pzi)
45694
45956
  @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
45695
45957
  @self_link = args[:self_link] if args.key?(:self_link)
45696
45958
  @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
@@ -47175,9 +47437,10 @@ module Google
47175
47437
  end
47176
47438
  end
47177
47439
 
47178
- # Represents an SSL Policy resource. Use SSL policies to control the SSL
47179
- # features, such as versions and cipher suites, offered by an HTTPS or SSL Proxy
47180
- # load balancer. For more information, read SSL Policy Concepts.
47440
+ # Represents an SSL Policy resource. Use SSL policies to control SSL features,
47441
+ # such as versions and cipher suites, that are offered by Application Load
47442
+ # Balancers and proxy Network Load Balancers. For more information, read SSL
47443
+ # policies overview.
47181
47444
  class SslPolicy
47182
47445
  include Google::Apis::Core::Hashable
47183
47446
 
@@ -49597,7 +49860,7 @@ module Google
49597
49860
 
49598
49861
  # Specifies how a port is selected for health checking. Can be one of the
49599
49862
  # following values: USE_FIXED_PORT: Specifies a port number explicitly using the
49600
- # port field in the health check. Supported by backend services for pass-through
49863
+ # port field in the health check. Supported by backend services for passthrough
49601
49864
  # load balancers and backend services for proxy load balancers. Not supported by
49602
49865
  # target pools. The health check supports all backends supported by the backend
49603
49866
  # service provided the backend can be health checked. For example, GCE_VM_IP
@@ -49605,13 +49868,13 @@ module Google
49605
49868
  # group backends. USE_NAMED_PORT: Not supported. USE_SERVING_PORT: Provides an
49606
49869
  # indirect method of specifying the health check port by referring to the
49607
49870
  # backend service. Only supported by backend services for proxy load balancers.
49608
- # Not supported by target pools. Not supported by backend services for pass-
49609
- # through load balancers. Supports all backends that can be health checked; for
49610
- # example, GCE_VM_IP_PORT network endpoint groups and instance group backends.
49611
- # For GCE_VM_IP_PORT network endpoint group backends, the health check uses the
49612
- # port number specified for each endpoint in the network endpoint group. For
49613
- # instance group backends, the health check uses the port number determined by
49614
- # looking up the backend service's named port in the instance group's list of
49871
+ # Not supported by target pools. Not supported by backend services for
49872
+ # passthrough load balancers. Supports all backends that can be health checked;
49873
+ # for example, GCE_VM_IP_PORT network endpoint groups and instance group
49874
+ # backends. For GCE_VM_IP_PORT network endpoint group backends, the health check
49875
+ # uses the port number specified for each endpoint in the network endpoint group.
49876
+ # For instance group backends, the health check uses the port number determined
49877
+ # by looking up the backend service's named port in the instance group's list of
49615
49878
  # named ports.
49616
49879
  # Corresponds to the JSON property `portSpecification`
49617
49880
  # @return [String]
@@ -51429,10 +51692,10 @@ module Google
51429
51692
  end
51430
51693
  end
51431
51694
 
51432
- # Represents a Target Pool resource. Target pools are used for network TCP/UDP
51433
- # load balancing. A target pool references member instances, an associated
51434
- # legacy HttpHealthCheck resource, and, optionally, a backup target pool. For
51435
- # more information, read Using target pools.
51695
+ # Represents a Target Pool resource. Target pools are used with external
51696
+ # passthrough Network Load Balancers. A target pool references member instances,
51697
+ # an associated legacy HttpHealthCheck resource, and, optionally, a backup
51698
+ # target pool. For more information, read Using target pools.
51436
51699
  class TargetPool
51437
51700
  include Google::Apis::Core::Hashable
51438
51701
 
@@ -52108,9 +52371,9 @@ module Google
52108
52371
  end
52109
52372
 
52110
52373
  # Represents a Target SSL Proxy resource. A target SSL proxy is a component of a
52111
- # SSL Proxy load balancer. Global forwarding rules reference a target SSL proxy,
52112
- # and the target proxy then references an external backend service. For more
52113
- # information, read Using Target Proxies.
52374
+ # Proxy Network Load Balancer. The forwarding rule references the target SSL
52375
+ # proxy, and the target proxy then references a backend service. For more
52376
+ # information, read Proxy Network Load Balancer overview.
52114
52377
  class TargetSslProxy
52115
52378
  include Google::Apis::Core::Hashable
52116
52379
 
@@ -52455,9 +52718,9 @@ module Google
52455
52718
  end
52456
52719
 
52457
52720
  # Represents a Target TCP Proxy resource. A target TCP proxy is a component of a
52458
- # TCP Proxy load balancer. Global forwarding rules reference target TCP proxy,
52459
- # and the target proxy then references an external backend service. For more
52460
- # information, read TCP Proxy Load Balancing overview.
52721
+ # Proxy Network Load Balancer. The forwarding rule references the target TCP
52722
+ # proxy, and the target proxy then references a backend service. For more
52723
+ # information, read Proxy Network Load Balancer overview.
52461
52724
  class TargetTcpProxy
52462
52725
  include Google::Apis::Core::Hashable
52463
52726