google-apis-compute_beta 0.26.0 → 0.27.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.
@@ -3403,9 +3403,13 @@ module Google
3403
3403
  # @return [Google::Apis::ComputeBeta::Subsetting]
3404
3404
  attr_accessor :subsetting
3405
3405
 
3406
- # Not supported when the backend service is referenced by a URL map that is
3407
- # bound to target gRPC proxy that has validateForProxyless field set to true.
3408
- # Instead, use maxStreamDuration.
3406
+ # The backend service timeout has a different meaning depending on the type of
3407
+ # load balancer. For more information see, Backend service settings The default
3408
+ # is 30 seconds. The full range of timeout values allowed is 1 - 2,147,483,647
3409
+ # seconds. This value can be overridden in the PathMatcher configuration of the
3410
+ # UrlMap that references this backend service. Not supported when the backend
3411
+ # service is referenced by a URL map that is bound to target gRPC proxy that has
3412
+ # validateForProxyless field set to true. Instead, use maxStreamDuration.
3409
3413
  # Corresponds to the JSON property `timeoutSec`
3410
3414
  # @return [Fixnum]
3411
3415
  attr_accessor :timeout_sec
@@ -4778,14 +4782,18 @@ module Google
4778
4782
  # @return [Google::Apis::ComputeBeta::Duration]
4779
4783
  attr_accessor :connect_timeout
4780
4784
 
4781
- # Not supported when the backend service is referenced by a URL map that is
4782
- # bound to target gRPC proxy that has validateForProxyless field set to true.
4785
+ # The maximum number of connections to the backend service. If not specified,
4786
+ # there is no limit. Not supported when the backend service is referenced by a
4787
+ # URL map that is bound to target gRPC proxy that has validateForProxyless field
4788
+ # set to true.
4783
4789
  # Corresponds to the JSON property `maxConnections`
4784
4790
  # @return [Fixnum]
4785
4791
  attr_accessor :max_connections
4786
4792
 
4787
- # Not supported when the backend service is referenced by a URL map that is
4788
- # bound to target gRPC proxy that has validateForProxyless field set to true.
4793
+ # The maximum number of pending requests allowed to the backend service. If not
4794
+ # specified, there is no limit. Not supported when the backend service is
4795
+ # referenced by a URL map that is bound to target gRPC proxy that has
4796
+ # validateForProxyless field set to true.
4789
4797
  # Corresponds to the JSON property `maxPendingRequests`
4790
4798
  # @return [Fixnum]
4791
4799
  attr_accessor :max_pending_requests
@@ -4796,14 +4804,20 @@ module Google
4796
4804
  # @return [Fixnum]
4797
4805
  attr_accessor :max_requests
4798
4806
 
4799
- # Not supported when the backend service is referenced by a URL map that is
4800
- # bound to target gRPC proxy that has validateForProxyless field set to true.
4807
+ # Maximum requests for a single connection to the backend service. This
4808
+ # parameter is respected by both the HTTP/1.1 and HTTP/2 implementations. If not
4809
+ # specified, there is no limit. Setting this parameter to 1 will effectively
4810
+ # disable keep alive. Not supported when the backend service is referenced by a
4811
+ # URL map that is bound to target gRPC proxy that has validateForProxyless field
4812
+ # set to true.
4801
4813
  # Corresponds to the JSON property `maxRequestsPerConnection`
4802
4814
  # @return [Fixnum]
4803
4815
  attr_accessor :max_requests_per_connection
4804
4816
 
4805
- # Not supported when the backend service is referenced by a URL map that is
4806
- # bound to target gRPC proxy that has validateForProxyless field set to true.
4817
+ # The maximum number of parallel retries allowed to the backend cluster. If not
4818
+ # specified, the default is 1. Not supported when the backend service is
4819
+ # referenced by a URL map that is bound to target gRPC proxy that has
4820
+ # validateForProxyless field set to true.
4807
4821
  # Corresponds to the JSON property `maxRetries`
4808
4822
  # @return [Fixnum]
4809
4823
  attr_accessor :max_retries
@@ -8061,6 +8075,14 @@ module Google
8061
8075
  # @return [String]
8062
8076
  attr_accessor :parent
8063
8077
 
8078
+ # [Output Only] URL of the region where the regional firewall policy resides.
8079
+ # This field is not applicable to global firewall policies. You must specify
8080
+ # this field as part of the HTTP request URL. It is not settable as a field in
8081
+ # the request body.
8082
+ # Corresponds to the JSON property `region`
8083
+ # @return [String]
8084
+ attr_accessor :region
8085
+
8064
8086
  # [Output Only] Total count of all firewall policy rule tuples. A firewall
8065
8087
  # policy can not exceed a set number of tuples.
8066
8088
  # Corresponds to the JSON property `ruleTupleCount`
@@ -8112,6 +8134,7 @@ module Google
8112
8134
  @kind = args[:kind] if args.key?(:kind)
8113
8135
  @name = args[:name] if args.key?(:name)
8114
8136
  @parent = args[:parent] if args.key?(:parent)
8137
+ @region = args[:region] if args.key?(:region)
8115
8138
  @rule_tuple_count = args[:rule_tuple_count] if args.key?(:rule_tuple_count)
8116
8139
  @rules = args[:rules] if args.key?(:rules)
8117
8140
  @self_link = args[:self_link] if args.key?(:self_link)
@@ -8347,6 +8370,18 @@ module Google
8347
8370
  # @return [Array<String>]
8348
8371
  attr_accessor :target_resources
8349
8372
 
8373
+ # A list of secure tags that controls which instances the firewall rule applies
8374
+ # to. If targetSecureTag are specified, then the firewall rule applies only to
8375
+ # instances in the VPC network that have one of those EFFECTIVE secure tags, if
8376
+ # all the target_secure_tag are in INEFFECTIVE state, then this rule will be
8377
+ # ignored. targetSecureTag may not be set at the same time as
8378
+ # targetServiceAccounts. If neither targetServiceAccounts nor targetSecureTag
8379
+ # are specified, the firewall rule applies to all instances on the specified
8380
+ # network. Maximum number of target label tags allowed is 256.
8381
+ # Corresponds to the JSON property `targetSecureTags`
8382
+ # @return [Array<Google::Apis::ComputeBeta::FirewallPolicyRuleSecureTag>]
8383
+ attr_accessor :target_secure_tags
8384
+
8350
8385
  # A list of service accounts indicating the sets of instances that are applied
8351
8386
  # with this rule.
8352
8387
  # Corresponds to the JSON property `targetServiceAccounts`
@@ -8369,6 +8404,7 @@ module Google
8369
8404
  @priority = args[:priority] if args.key?(:priority)
8370
8405
  @rule_tuple_count = args[:rule_tuple_count] if args.key?(:rule_tuple_count)
8371
8406
  @target_resources = args[:target_resources] if args.key?(:target_resources)
8407
+ @target_secure_tags = args[:target_secure_tags] if args.key?(:target_secure_tags)
8372
8408
  @target_service_accounts = args[:target_service_accounts] if args.key?(:target_service_accounts)
8373
8409
  end
8374
8410
  end
@@ -8394,6 +8430,14 @@ module Google
8394
8430
  # @return [Array<String>]
8395
8431
  attr_accessor :src_ip_ranges
8396
8432
 
8433
+ # List of secure tag values, which should be matched at the source of the
8434
+ # traffic. For INGRESS rule, if all the srcSecureTag are INEFFECTIVE, and there
8435
+ # is no srcIpRange, this rule will be ignored. Maximum number of source tag
8436
+ # values allowed is 256.
8437
+ # Corresponds to the JSON property `srcSecureTags`
8438
+ # @return [Array<Google::Apis::ComputeBeta::FirewallPolicyRuleSecureTag>]
8439
+ attr_accessor :src_secure_tags
8440
+
8397
8441
  def initialize(**args)
8398
8442
  update!(**args)
8399
8443
  end
@@ -8403,6 +8447,7 @@ module Google
8403
8447
  @dest_ip_ranges = args[:dest_ip_ranges] if args.key?(:dest_ip_ranges)
8404
8448
  @layer4_configs = args[:layer4_configs] if args.key?(:layer4_configs)
8405
8449
  @src_ip_ranges = args[:src_ip_ranges] if args.key?(:src_ip_ranges)
8450
+ @src_secure_tags = args[:src_secure_tags] if args.key?(:src_secure_tags)
8406
8451
  end
8407
8452
  end
8408
8453
 
@@ -8437,6 +8482,32 @@ module Google
8437
8482
  end
8438
8483
  end
8439
8484
 
8485
+ #
8486
+ class FirewallPolicyRuleSecureTag
8487
+ include Google::Apis::Core::Hashable
8488
+
8489
+ # Name of the secure tag, created with TagManager's TagValue API.
8490
+ # Corresponds to the JSON property `name`
8491
+ # @return [String]
8492
+ attr_accessor :name
8493
+
8494
+ # [Output Only] State of the secure tag, either `EFFECTIVE` or `INEFFECTIVE`. A
8495
+ # secure tag is `INEFFECTIVE` when it is deleted or its network is deleted.
8496
+ # Corresponds to the JSON property `state`
8497
+ # @return [String]
8498
+ attr_accessor :state
8499
+
8500
+ def initialize(**args)
8501
+ update!(**args)
8502
+ end
8503
+
8504
+ # Update properties of this object
8505
+ def update!(**args)
8506
+ @name = args[:name] if args.key?(:name)
8507
+ @state = args[:state] if args.key?(:state)
8508
+ end
8509
+ end
8510
+
8440
8511
  # Encapsulates numeric value that can be either absolute or relative.
8441
8512
  class FixedOrPercent
8442
8513
  include Google::Apis::Core::Hashable
@@ -9545,8 +9616,8 @@ module Google
9545
9616
  # The ID of a supported feature. To add multiple values, use commas to separate
9546
9617
  # values. Set to one or more of the following values: - VIRTIO_SCSI_MULTIQUEUE -
9547
9618
  # WINDOWS - MULTI_IP_SUBNET - UEFI_COMPATIBLE - SECURE_BOOT - GVNIC -
9548
- # SEV_CAPABLE - SUSPEND_RESUME_COMPATIBLE For more information, see Enabling
9549
- # guest operating system features.
9619
+ # SEV_CAPABLE - SUSPEND_RESUME_COMPATIBLE - SEV_SNP_CAPABLE For more information,
9620
+ # see Enabling guest operating system features.
9550
9621
  # Corresponds to the JSON property `type`
9551
9622
  # @return [String]
9552
9623
  attr_accessor :type
@@ -12917,6 +12988,68 @@ module Google
12917
12988
  end
12918
12989
  end
12919
12990
 
12991
+ #
12992
+ class InstanceConsumptionData
12993
+ include Google::Apis::Core::Hashable
12994
+
12995
+ # Resources consumed by the instance.
12996
+ # Corresponds to the JSON property `consumptionInfo`
12997
+ # @return [Google::Apis::ComputeBeta::InstanceConsumptionInfo]
12998
+ attr_accessor :consumption_info
12999
+
13000
+ # Server-defined URL for the instance.
13001
+ # Corresponds to the JSON property `instance`
13002
+ # @return [String]
13003
+ attr_accessor :instance
13004
+
13005
+ def initialize(**args)
13006
+ update!(**args)
13007
+ end
13008
+
13009
+ # Update properties of this object
13010
+ def update!(**args)
13011
+ @consumption_info = args[:consumption_info] if args.key?(:consumption_info)
13012
+ @instance = args[:instance] if args.key?(:instance)
13013
+ end
13014
+ end
13015
+
13016
+ #
13017
+ class InstanceConsumptionInfo
13018
+ include Google::Apis::Core::Hashable
13019
+
13020
+ # The number of virtual CPUs that are available to the instance.
13021
+ # Corresponds to the JSON property `guestCpus`
13022
+ # @return [Fixnum]
13023
+ attr_accessor :guest_cpus
13024
+
13025
+ # The amount of local SSD storage available to the instance, defined in GiB.
13026
+ # Corresponds to the JSON property `localSsdGb`
13027
+ # @return [Fixnum]
13028
+ attr_accessor :local_ssd_gb
13029
+
13030
+ # The amount of physical memory available to the instance, defined in MiB.
13031
+ # Corresponds to the JSON property `memoryMb`
13032
+ # @return [Fixnum]
13033
+ attr_accessor :memory_mb
13034
+
13035
+ # The minimal guaranteed number of virtual CPUs that are reserved.
13036
+ # Corresponds to the JSON property `minNodeCpus`
13037
+ # @return [Fixnum]
13038
+ attr_accessor :min_node_cpus
13039
+
13040
+ def initialize(**args)
13041
+ update!(**args)
13042
+ end
13043
+
13044
+ # Update properties of this object
13045
+ def update!(**args)
13046
+ @guest_cpus = args[:guest_cpus] if args.key?(:guest_cpus)
13047
+ @local_ssd_gb = args[:local_ssd_gb] if args.key?(:local_ssd_gb)
13048
+ @memory_mb = args[:memory_mb] if args.key?(:memory_mb)
13049
+ @min_node_cpus = args[:min_node_cpus] if args.key?(:min_node_cpus)
13050
+ end
13051
+ end
13052
+
12920
13053
  # Represents an Instance Group resource. Instance Groups can be used to
12921
13054
  # configure a target for load balancing. Instance groups can either be managed
12922
13055
  # or unmanaged. To create managed instance groups, use the instanceGroupManager
@@ -12968,8 +13101,8 @@ module Google
12968
13101
  # Assigns a name to a port number. For example: `name: "http", port: 80` This
12969
13102
  # allows the system to reference ports by the assigned name instead of a port
12970
13103
  # number. Named ports can also contain multiple ports. For example: [`name: "
12971
- # http", port: 80`,`name: "http", port: 8080`] Named ports apply to all
12972
- # instances in this instance group.
13104
+ # app1", port: 8080`, `name: "app1", port: 8081`, `name: "app2", port: 8082`]
13105
+ # Named ports apply to all instances in this instance group.
12973
13106
  # Corresponds to the JSON property `namedPorts`
12974
13107
  # @return [Array<Google::Apis::ComputeBeta::NamedPort>]
12975
13108
  attr_accessor :named_ports
@@ -15867,7 +16000,8 @@ module Google
15867
16000
  # @return [String]
15868
16001
  attr_accessor :short_name
15869
16002
 
15870
- # [Output Only] The type of the firewall policy.
16003
+ # [Output Only] The type of the firewall policy. Can be one of HIERARCHY,
16004
+ # NETWORK, NETWORK_REGIONAL.
15871
16005
  # Corresponds to the JSON property `type`
15872
16006
  # @return [String]
15873
16007
  attr_accessor :type
@@ -16486,13 +16620,7 @@ module Google
16486
16620
  # @return [String]
16487
16621
  attr_accessor :bandwidth
16488
16622
 
16489
- # Up to 16 candidate prefixes that control the allocation of
16490
- # cloudRouterIpv6Address and customerRouterIpv6Address for this attachment. Each
16491
- # prefix must be in the Global Unique Address (GUA) space. It is highly
16492
- # recommended that it be in a range owned by the requestor. A GUA in a range
16493
- # owned by Google will cause the request to fail. Google will select an
16494
- # available prefix from the supplied candidates or fail the request. If not
16495
- # supplied, a /125 from a Google-owned GUA block will be selected.
16623
+ # This field is not available.
16496
16624
  # Corresponds to the JSON property `candidateIpv6Subnets`
16497
16625
  # @return [Array<String>]
16498
16626
  attr_accessor :candidate_ipv6_subnets
@@ -16520,10 +16648,7 @@ module Google
16520
16648
  # @return [String]
16521
16649
  attr_accessor :cloud_router_ipv6_address
16522
16650
 
16523
- # If supplied, the interface id (index within the subnet) to be used for the
16524
- # cloud router address. The id must be in the range of 1 to 6. If a subnet mask
16525
- # is supplied, it must be /125, and the subnet should either be 0 or match the
16526
- # selected subnet.
16651
+ # This field is not available.
16527
16652
  # Corresponds to the JSON property `cloudRouterIpv6InterfaceId`
16528
16653
  # @return [String]
16529
16654
  attr_accessor :cloud_router_ipv6_interface_id
@@ -16545,18 +16670,14 @@ module Google
16545
16670
  # @return [String]
16546
16671
  attr_accessor :customer_router_ipv6_address
16547
16672
 
16548
- # If supplied, the interface id (index within the subnet) to be used for the
16549
- # customer router address. The id must be in the range of 1 to 6. If a subnet
16550
- # mask is supplied, it must be /125, and the subnet should either be 0 or match
16551
- # the selected subnet.
16673
+ # This field is not available.
16552
16674
  # Corresponds to the JSON property `customerRouterIpv6InterfaceId`
16553
16675
  # @return [String]
16554
16676
  attr_accessor :customer_router_ipv6_interface_id
16555
16677
 
16556
- # [Output only for types PARTNER and DEDICATED. Not present for PARTNER_PROVIDER.
16557
- # ] Dataplane version for this InterconnectAttachment. This field is only
16558
- # present for Dataplane version 2 and higher. Absence of this field in the API
16559
- # output indicates that the Dataplane is version 1.
16678
+ # [Output Only] Dataplane version for this InterconnectAttachment. This field is
16679
+ # only present for Dataplane version 2 and higher. Absence of this field in the
16680
+ # API output indicates that the Dataplane is version 1.
16560
16681
  # Corresponds to the JSON property `dataplaneVersion`
16561
16682
  # @return [Fixnum]
16562
16683
  attr_accessor :dataplane_version
@@ -18503,8 +18624,7 @@ module Google
18503
18624
  attr_accessor :description
18504
18625
 
18505
18626
  # [Input Only] Whether to attempt an application consistent machine image by
18506
- # informing the OS to prepare for the snapshot process. Currently only supported
18507
- # on Windows instances using the Volume Shadow Copy Service (VSS).
18627
+ # informing the OS to prepare for the snapshot process.
18508
18628
  # Corresponds to the JSON property `guestFlush`
18509
18629
  # @return [Boolean]
18510
18630
  attr_accessor :guest_flush
@@ -19626,6 +19746,13 @@ module Google
19626
19746
  # @return [String]
19627
19747
  attr_accessor :description
19628
19748
 
19749
+ # Enable ULA internal ipv6 on this network. Enabling this feature will assign a /
19750
+ # 48 from google defined ULA prefix fd20::/20. .
19751
+ # Corresponds to the JSON property `enableUlaInternalIpv6`
19752
+ # @return [Boolean]
19753
+ attr_accessor :enable_ula_internal_ipv6
19754
+ alias_method :enable_ula_internal_ipv6?, :enable_ula_internal_ipv6
19755
+
19629
19756
  # [Output Only] The gateway address for default routing out of the network,
19630
19757
  # selected by GCP.
19631
19758
  # Corresponds to the JSON property `gatewayIPv4`
@@ -19638,6 +19765,16 @@ module Google
19638
19765
  # @return [Fixnum]
19639
19766
  attr_accessor :id
19640
19767
 
19768
+ # When enabling ula internal ipv6, caller optionally can specify the /48 range
19769
+ # they want from the google defined ULA prefix fd20::/20. The input must be a
19770
+ # valid /48 ULA IPv6 address and must be within the fd20::/20. Operation will
19771
+ # fail if the speficied /48 is already in used by another resource. If the field
19772
+ # is not speficied, then a /48 range will be randomly allocated from fd20::/20
19773
+ # and returned via this field. .
19774
+ # Corresponds to the JSON property `internalIpv6Range`
19775
+ # @return [String]
19776
+ attr_accessor :internal_ipv6_range
19777
+
19641
19778
  # [Output Only] Type of the resource. Always compute#network for networks.
19642
19779
  # Corresponds to the JSON property `kind`
19643
19780
  # @return [String]
@@ -19659,6 +19796,13 @@ module Google
19659
19796
  # @return [String]
19660
19797
  attr_accessor :name
19661
19798
 
19799
+ # The network firewall policy enforcement order. Can be either
19800
+ # AFTER_CLASSIC_FIREWALL or BEFORE_CLASSIC_FIREWALL. Defaults to
19801
+ # AFTER_CLASSIC_FIREWALL if the field is not specified.
19802
+ # Corresponds to the JSON property `networkFirewallPolicyEnforcementOrder`
19803
+ # @return [String]
19804
+ attr_accessor :network_firewall_policy_enforcement_order
19805
+
19662
19806
  # [Output Only] A list of network peerings for the resource.
19663
19807
  # Corresponds to the JSON property `peerings`
19664
19808
  # @return [Array<Google::Apis::ComputeBeta::NetworkPeering>]
@@ -19676,6 +19820,11 @@ module Google
19676
19820
  # @return [String]
19677
19821
  attr_accessor :self_link
19678
19822
 
19823
+ # [Output Only] Server-defined URL for this resource with the resource id.
19824
+ # Corresponds to the JSON property `selfLinkWithId`
19825
+ # @return [String]
19826
+ attr_accessor :self_link_with_id
19827
+
19679
19828
  # [Output Only] Server-defined fully-qualified URLs for all subnetworks in this
19680
19829
  # VPC network.
19681
19830
  # Corresponds to the JSON property `subnetworks`
@@ -19692,14 +19841,18 @@ module Google
19692
19841
  @auto_create_subnetworks = args[:auto_create_subnetworks] if args.key?(:auto_create_subnetworks)
19693
19842
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
19694
19843
  @description = args[:description] if args.key?(:description)
19844
+ @enable_ula_internal_ipv6 = args[:enable_ula_internal_ipv6] if args.key?(:enable_ula_internal_ipv6)
19695
19845
  @gateway_i_pv4 = args[:gateway_i_pv4] if args.key?(:gateway_i_pv4)
19696
19846
  @id = args[:id] if args.key?(:id)
19847
+ @internal_ipv6_range = args[:internal_ipv6_range] if args.key?(:internal_ipv6_range)
19697
19848
  @kind = args[:kind] if args.key?(:kind)
19698
19849
  @mtu = args[:mtu] if args.key?(:mtu)
19699
19850
  @name = args[:name] if args.key?(:name)
19851
+ @network_firewall_policy_enforcement_order = args[:network_firewall_policy_enforcement_order] if args.key?(:network_firewall_policy_enforcement_order)
19700
19852
  @peerings = args[:peerings] if args.key?(:peerings)
19701
19853
  @routing_config = args[:routing_config] if args.key?(:routing_config)
19702
19854
  @self_link = args[:self_link] if args.key?(:self_link)
19855
+ @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
19703
19856
  @subnetworks = args[:subnetworks] if args.key?(:subnetworks)
19704
19857
  end
19705
19858
  end
@@ -19844,8 +19997,8 @@ module Google
19844
19997
  attr_accessor :network
19845
19998
 
19846
19999
  # Type of network endpoints in this network endpoint group. Can be one of
19847
- # GCE_VM_IP_PORT, NON_GCP_PRIVATE_IP_PORT, INTERNET_FQDN_PORT, INTERNET_IP_PORT,
19848
- # SERVERLESS, PRIVATE_SERVICE_CONNECT.
20000
+ # GCE_VM_IP, GCE_VM_IP_PORT, NON_GCP_PRIVATE_IP_PORT, INTERNET_FQDN_PORT,
20001
+ # INTERNET_IP_PORT, SERVERLESS, PRIVATE_SERVICE_CONNECT.
19849
20002
  # Corresponds to the JSON property `networkEndpointType`
19850
20003
  # @return [String]
19851
20004
  attr_accessor :network_endpoint_type
@@ -20140,13 +20293,13 @@ module Google
20140
20293
  # @return [String]
20141
20294
  attr_accessor :tag
20142
20295
 
20143
- # A template to parse service and tag fields from a request URL. URL mask allows
20144
- # for routing to multiple Run services without having to create multiple network
20145
- # endpoint groups and backend services. For example, request URLs "foo1.domain.
20146
- # com/bar1" and "foo1.domain.com/bar2" can be backed by the same Serverless
20147
- # Network Endpoint Group (NEG) with URL mask ".domain.com/". The URL mask will
20148
- # parse them to ` service="bar1", tag="foo1" ` and ` service="bar2", tag="foo2" `
20149
- # respectively.
20296
+ # A template to parse <service> and <tag> fields from a request URL. URL mask
20297
+ # allows for routing to multiple Run services without having to create multiple
20298
+ # network endpoint groups and backend services. For example, request URLs "foo1.
20299
+ # domain.com/bar1" and "foo1.domain.com/bar2" can be backed by the same
20300
+ # Serverless Network Endpoint Group (NEG) with URL mask "<tag>.domain.com/<
20301
+ # service>". The URL mask will parse them to ` service="bar1", tag="foo1" ` and `
20302
+ # service="bar2", tag="foo2" ` respectively.
20150
20303
  # Corresponds to the JSON property `urlMask`
20151
20304
  # @return [String]
20152
20305
  attr_accessor :url_mask
@@ -20718,6 +20871,11 @@ module Google
20718
20871
  # @return [String]
20719
20872
  attr_accessor :fingerprint
20720
20873
 
20874
+ # The prefix length of the primary internal IPv6 range.
20875
+ # Corresponds to the JSON property `internalIpv6PrefixLength`
20876
+ # @return [Fixnum]
20877
+ attr_accessor :internal_ipv6_prefix_length
20878
+
20721
20879
  # An array of IPv6 access configurations for this interface. Currently, only one
20722
20880
  # IPv6 access config, DIRECT_IPV6, is supported. If there is no ipv6AccessConfig
20723
20881
  # specified, then this instance will have no external IPv6 Internet access.
@@ -20809,6 +20967,7 @@ module Google
20809
20967
  @access_configs = args[:access_configs] if args.key?(:access_configs)
20810
20968
  @alias_ip_ranges = args[:alias_ip_ranges] if args.key?(:alias_ip_ranges)
20811
20969
  @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
20970
+ @internal_ipv6_prefix_length = args[:internal_ipv6_prefix_length] if args.key?(:internal_ipv6_prefix_length)
20812
20971
  @ipv6_access_configs = args[:ipv6_access_configs] if args.key?(:ipv6_access_configs)
20813
20972
  @ipv6_access_type = args[:ipv6_access_type] if args.key?(:ipv6_access_type)
20814
20973
  @ipv6_address = args[:ipv6_address] if args.key?(:ipv6_address)
@@ -21365,6 +21524,11 @@ module Google
21365
21524
  # @return [String]
21366
21525
  attr_accessor :self_link
21367
21526
 
21527
+ # The share setting for reservations and sole tenancy node groups.
21528
+ # Corresponds to the JSON property `shareSettings`
21529
+ # @return [Google::Apis::ComputeBeta::ShareSettings]
21530
+ attr_accessor :share_settings
21531
+
21368
21532
  # [Output Only] The total number of nodes in the node group.
21369
21533
  # Corresponds to the JSON property `size`
21370
21534
  # @return [Fixnum]
@@ -21399,6 +21563,7 @@ module Google
21399
21563
  @name = args[:name] if args.key?(:name)
21400
21564
  @node_template = args[:node_template] if args.key?(:node_template)
21401
21565
  @self_link = args[:self_link] if args.key?(:self_link)
21566
+ @share_settings = args[:share_settings] if args.key?(:share_settings)
21402
21567
  @size = args[:size] if args.key?(:size)
21403
21568
  @status = args[:status] if args.key?(:status)
21404
21569
  @zone = args[:zone] if args.key?(:zone)
@@ -21720,6 +21885,11 @@ module Google
21720
21885
  # @return [Array<Google::Apis::ComputeBeta::AcceleratorConfig>]
21721
21886
  attr_accessor :accelerators
21722
21887
 
21888
+ # Node resources that are reserved by all instances.
21889
+ # Corresponds to the JSON property `consumedResources`
21890
+ # @return [Google::Apis::ComputeBeta::InstanceConsumptionInfo]
21891
+ attr_accessor :consumed_resources
21892
+
21723
21893
  # CPU overcommit.
21724
21894
  # Corresponds to the JSON property `cpuOvercommitType`
21725
21895
  # @return [String]
@@ -21730,6 +21900,11 @@ module Google
21730
21900
  # @return [Array<Google::Apis::ComputeBeta::LocalDisk>]
21731
21901
  attr_accessor :disks
21732
21902
 
21903
+ # Instance data that shows consumed resources on the node.
21904
+ # Corresponds to the JSON property `instanceConsumptionData`
21905
+ # @return [Array<Google::Apis::ComputeBeta::InstanceConsumptionData>]
21906
+ attr_accessor :instance_consumption_data
21907
+
21733
21908
  # Instances scheduled on this node.
21734
21909
  # Corresponds to the JSON property `instances`
21735
21910
  # @return [Array<String>]
@@ -21766,6 +21941,11 @@ module Google
21766
21941
  # @return [String]
21767
21942
  attr_accessor :status
21768
21943
 
21944
+ # Total amount of available resources on the node.
21945
+ # Corresponds to the JSON property `totalResources`
21946
+ # @return [Google::Apis::ComputeBeta::InstanceConsumptionInfo]
21947
+ attr_accessor :total_resources
21948
+
21769
21949
  def initialize(**args)
21770
21950
  update!(**args)
21771
21951
  end
@@ -21773,8 +21953,10 @@ module Google
21773
21953
  # Update properties of this object
21774
21954
  def update!(**args)
21775
21955
  @accelerators = args[:accelerators] if args.key?(:accelerators)
21956
+ @consumed_resources = args[:consumed_resources] if args.key?(:consumed_resources)
21776
21957
  @cpu_overcommit_type = args[:cpu_overcommit_type] if args.key?(:cpu_overcommit_type)
21777
21958
  @disks = args[:disks] if args.key?(:disks)
21959
+ @instance_consumption_data = args[:instance_consumption_data] if args.key?(:instance_consumption_data)
21778
21960
  @instances = args[:instances] if args.key?(:instances)
21779
21961
  @name = args[:name] if args.key?(:name)
21780
21962
  @node_type = args[:node_type] if args.key?(:node_type)
@@ -21782,6 +21964,7 @@ module Google
21782
21964
  @server_binding = args[:server_binding] if args.key?(:server_binding)
21783
21965
  @server_id = args[:server_id] if args.key?(:server_id)
21784
21966
  @status = args[:status] if args.key?(:status)
21967
+ @total_resources = args[:total_resources] if args.key?(:total_resources)
21785
21968
  end
21786
21969
  end
21787
21970
 
@@ -27584,6 +27767,69 @@ module Google
27584
27767
  end
27585
27768
  end
27586
27769
 
27770
+ #
27771
+ class RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponse
27772
+ include Google::Apis::Core::Hashable
27773
+
27774
+ # Effective firewalls from firewall policy.
27775
+ # Corresponds to the JSON property `firewallPolicys`
27776
+ # @return [Array<Google::Apis::ComputeBeta::RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponseEffectiveFirewallPolicy>]
27777
+ attr_accessor :firewall_policys
27778
+
27779
+ # Effective firewalls on the network.
27780
+ # Corresponds to the JSON property `firewalls`
27781
+ # @return [Array<Google::Apis::ComputeBeta::Firewall>]
27782
+ attr_accessor :firewalls
27783
+
27784
+ def initialize(**args)
27785
+ update!(**args)
27786
+ end
27787
+
27788
+ # Update properties of this object
27789
+ def update!(**args)
27790
+ @firewall_policys = args[:firewall_policys] if args.key?(:firewall_policys)
27791
+ @firewalls = args[:firewalls] if args.key?(:firewalls)
27792
+ end
27793
+ end
27794
+
27795
+ #
27796
+ class RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponseEffectiveFirewallPolicy
27797
+ include Google::Apis::Core::Hashable
27798
+
27799
+ # [Output Only] The display name of the firewall policy.
27800
+ # Corresponds to the JSON property `displayName`
27801
+ # @return [String]
27802
+ attr_accessor :display_name
27803
+
27804
+ # [Output Only] The name of the firewall policy.
27805
+ # Corresponds to the JSON property `name`
27806
+ # @return [String]
27807
+ attr_accessor :name
27808
+
27809
+ # The rules that apply to the network.
27810
+ # Corresponds to the JSON property `rules`
27811
+ # @return [Array<Google::Apis::ComputeBeta::FirewallPolicyRule>]
27812
+ attr_accessor :rules
27813
+
27814
+ # [Output Only] The type of the firewall policy. Can be one of HIERARCHY,
27815
+ # NETWORK, NETWORK_REGIONAL.
27816
+ # Corresponds to the JSON property `type`
27817
+ # @return [String]
27818
+ attr_accessor :type
27819
+
27820
+ def initialize(**args)
27821
+ update!(**args)
27822
+ end
27823
+
27824
+ # Update properties of this object
27825
+ def update!(**args)
27826
+ @display_name = args[:display_name] if args.key?(:display_name)
27827
+ @name = args[:name] if args.key?(:name)
27828
+ @rules = args[:rules] if args.key?(:rules)
27829
+ @type = args[:type] if args.key?(:type)
27830
+ end
27831
+ end
27832
+
27587
27833
  #
27588
27834
  class RegionSetLabelsRequest
27589
27835
  include Google::Apis::Core::Hashable
@@ -28631,8 +28877,8 @@ module Google
28631
28877
  class ResourcePolicyDailyCycle
28632
28878
  include Google::Apis::Core::Hashable
28633
28879
 
28634
- # Defines a schedule with units measured in months. The value determines how
28635
- # many months pass between the start of each cycle.
28880
+ # Defines a schedule with units measured in days. The value determines how many
28881
+ # days pass between the start of each cycle.
28636
28882
  # Corresponds to the JSON property `daysInCycle`
28637
28883
  # @return [Fixnum]
28638
28884
  attr_accessor :days_in_cycle
@@ -30052,7 +30298,7 @@ module Google
30052
30298
  # Cloud Router will initiate the BFD session for this BGP peer. If set to
30053
30299
  # PASSIVE, the Cloud Router will wait for the peer router to initiate the BFD
30054
30300
  # session for this BGP peer. If set to DISABLED, BFD is disabled for this BGP
30055
- # peer. The default is PASSIVE.
30301
+ # peer. The default is DISABLED.
30056
30302
  # Corresponds to the JSON property `sessionInitializationMode`
30057
30303
  # @return [String]
30058
30304
  attr_accessor :session_initialization_mode
@@ -30665,7 +30911,8 @@ module Google
30665
30911
  # @return [String]
30666
30912
  attr_accessor :router_appliance_instance
30667
30913
 
30668
- # BGP state as specified in RFC1771.
30914
+ # The state of the BGP session. For a list of possible values for this field,
30915
+ # see BGP session states.
30669
30916
  # Corresponds to the JSON property `state`
30670
30917
  # @return [String]
30671
30918
  attr_accessor :state
@@ -31604,13 +31851,17 @@ module Google
31604
31851
  # @return [String]
31605
31852
  attr_accessor :self_link_with_id
31606
31853
 
31607
- # The type indicates the intended use of the security policy. CLOUD_ARMOR -
31854
+ # The type indicates the intended use of the security policy. - CLOUD_ARMOR:
31608
31855
  # Cloud Armor backend security policies can be configured to filter incoming
31609
31856
  # HTTP requests targeting backend services. They filter requests before they hit
31610
- # the origin servers. CLOUD_ARMOR_EDGE - Cloud Armor edge security policies can
31857
+ # the origin servers. - CLOUD_ARMOR_EDGE: Cloud Armor edge security policies can
31611
31858
  # be configured to filter incoming HTTP requests targeting backend services (
31612
31859
  # including Cloud CDN-enabled) as well as backend buckets (Cloud Storage). They
31613
- # filter requests before the request is served from Google's cache.
31860
+ # filter requests before the request is served from Google's cache. -
31861
+ # CLOUD_ARMOR_INTERNAL_SERVICE: Cloud Armor internal service policies can be
31862
+ # configured to filter HTTP requests targeting services managed by Traffic
31863
+ # Director in a service mesh. They filter requests before the request is served
31864
+ # from the application. This field can be set only at resource creation time.
31614
31865
  # Corresponds to the JSON property `type`
31615
31866
  # @return [String]
31616
31867
  attr_accessor :type
@@ -32236,10 +32487,11 @@ module Google
32236
32487
  # present in the request, the key type defaults to ALL. - XFF_IP: The first IP
32237
32488
  # address (i.e. the originating client IP address) specified in the list of IPs
32238
32489
  # under X-Forwarded-For HTTP header. If no such header is present or the value
32239
- # is not a valid IP, the key type defaults to ALL. - HTTP_COOKIE: The value of
32240
- # the HTTP cookie whose name is configured under "enforce_on_key_name". The key
32241
- # value is truncated to the first 128 bytes of the cookie value. If no such
32242
- # cookie is present in the request, the key type defaults to ALL.
32490
+ # is not a valid IP, the key defaults to the source IP address of the request i.
32491
+ # e. key type IP. - HTTP_COOKIE: The value of the HTTP cookie whose name is
32492
+ # configured under "enforce_on_key_name". The key value is truncated to the
32493
+ # first 128 bytes of the cookie value. If no such cookie is present in the
32494
+ # request, the key type defaults to ALL.
32243
32495
  # Corresponds to the JSON property `enforceOnKey`
32244
32496
  # @return [String]
32245
32497
  attr_accessor :enforce_on_key
@@ -32253,9 +32505,9 @@ module Google
32253
32505
 
32254
32506
  # Action to take for requests that are above the configured rate limit threshold,
32255
32507
  # to either deny with a specified HTTP response code, or redirect to a
32256
- # different endpoint. Valid options are "deny()" where valid values for status
32257
- # are 403, 404, 429, and 502, and "redirect" where the redirect parameters come
32258
- # from exceed_redirect_options below.
32508
+ # different endpoint. Valid options are "deny(status)", where valid values for
32509
+ # status are 403, 404, 429, and 502, and "redirect" where the redirect
32510
+ # parameters come from exceedRedirectOptions below.
32259
32511
  # Corresponds to the JSON property `exceedAction`
32260
32512
  # @return [String]
32261
32513
  attr_accessor :exceed_action
@@ -33376,8 +33628,7 @@ module Google
33376
33628
  attr_accessor :download_bytes
33377
33629
 
33378
33630
  # [Input Only] Whether to attempt an application consistent snapshot by
33379
- # informing the OS to prepare for the snapshot process. Currently only supported
33380
- # on Windows instances using the Volume Shadow Copy Service (VSS).
33631
+ # informing the OS to prepare for the snapshot process.
33381
33632
  # Corresponds to the JSON property `guestFlush`
33382
33633
  # @return [Boolean]
33383
33634
  attr_accessor :guest_flush
@@ -34856,6 +35107,13 @@ module Google
34856
35107
  # @return [Fixnum]
34857
35108
  attr_accessor :id
34858
35109
 
35110
+ # [Output Only] The range of internal IPv6 addresses that are owned by this
35111
+ # subnetwork. Note this is for general VM to VM communication, not to be
35112
+ # confused with the ipv6_cidr_range field.
35113
+ # Corresponds to the JSON property `internalIpv6Prefix`
35114
+ # @return [String]
35115
+ attr_accessor :internal_ipv6_prefix
35116
+
34859
35117
  # The range of internal addresses that are owned by this subnetwork. Provide
34860
35118
  # this property when you create the subnetwork. For example, 10.0.0.0/8 or 100.
34861
35119
  # 64.0.0/10. Ranges must be unique and non-overlapping within a network. Only
@@ -34963,9 +35221,10 @@ module Google
34963
35221
  # @return [String]
34964
35222
  attr_accessor :self_link
34965
35223
 
34966
- # The stack type for this subnet to identify whether the IPv6 feature is enabled
34967
- # or not. If not specified IPV4_ONLY will be used. This field can be both set at
34968
- # resource creation time and updated using patch.
35224
+ # The stack type for the subnet. If set to IPV4_ONLY, new VMs in the subnet are
35225
+ # assigned IPv4 addresses only. If set to IPV4_IPV6, new VMs in the subnet can
35226
+ # be assigned both IPv4 and IPv6 addresses. If not specified, IPV4_ONLY is used.
35227
+ # This field can be both set at resource creation time and updated using patch.
34969
35228
  # Corresponds to the JSON property `stackType`
34970
35229
  # @return [String]
34971
35230
  attr_accessor :stack_type
@@ -34994,6 +35253,7 @@ module Google
34994
35253
  @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
34995
35254
  @gateway_address = args[:gateway_address] if args.key?(:gateway_address)
34996
35255
  @id = args[:id] if args.key?(:id)
35256
+ @internal_ipv6_prefix = args[:internal_ipv6_prefix] if args.key?(:internal_ipv6_prefix)
34997
35257
  @ip_cidr_range = args[:ip_cidr_range] if args.key?(:ip_cidr_range)
34998
35258
  @ipv6_access_type = args[:ipv6_access_type] if args.key?(:ipv6_access_type)
34999
35259
  @ipv6_cidr_range = args[:ipv6_cidr_range] if args.key?(:ipv6_cidr_range)
@@ -35276,8 +35536,9 @@ module Google
35276
35536
  attr_accessor :enable
35277
35537
  alias_method :enable?, :enable
35278
35538
 
35279
- # Can only be specified if VPC flow logs for this subnetwork is enabled. Export
35280
- # filter used to define which VPC flow logs should be logged.
35539
+ # Can only be specified if VPC flow logs for this subnetwork is enabled. The
35540
+ # filter expression is used to define which VPC flow logs should be exported to
35541
+ # Cloud Logging.
35281
35542
  # Corresponds to the JSON property `filterExpr`
35282
35543
  # @return [String]
35283
35544
  attr_accessor :filter_expr