google-apis-compute_v1 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.
@@ -3269,9 +3269,13 @@ module Google
3269
3269
  # @return [Google::Apis::ComputeV1::Subsetting]
3270
3270
  attr_accessor :subsetting
3271
3271
 
3272
- # Not supported when the backend service is referenced by a URL map that is
3273
- # bound to target gRPC proxy that has validateForProxyless field set to true.
3274
- # Instead, use maxStreamDuration.
3272
+ # The backend service timeout has a different meaning depending on the type of
3273
+ # load balancer. For more information see, Backend service settings The default
3274
+ # is 30 seconds. The full range of timeout values allowed is 1 - 2,147,483,647
3275
+ # seconds. This value can be overridden in the PathMatcher configuration of the
3276
+ # UrlMap that references this backend service. Not supported when the backend
3277
+ # service is referenced by a URL map that is bound to target gRPC proxy that has
3278
+ # validateForProxyless field set to true. Instead, use maxStreamDuration.
3275
3279
  # Corresponds to the JSON property `timeoutSec`
3276
3280
  # @return [Fixnum]
3277
3281
  attr_accessor :timeout_sec
@@ -3674,6 +3678,13 @@ module Google
3674
3678
  # @return [String]
3675
3679
  attr_accessor :connection_persistence_on_unhealthy_backends
3676
3680
 
3681
+ # Enable Strong Session Affinity for Network Load Balancing. This option is not
3682
+ # available publicly.
3683
+ # Corresponds to the JSON property `enableStrongAffinity`
3684
+ # @return [Boolean]
3685
+ attr_accessor :enable_strong_affinity
3686
+ alias_method :enable_strong_affinity?, :enable_strong_affinity
3687
+
3677
3688
  # Specifies how long to keep a Connection Tracking entry while there is no
3678
3689
  # matching traffic (in seconds). For Internal TCP/UDP Load Balancing: - The
3679
3690
  # minimum (default) is 10 minutes and the maximum is 16 hours. - It can be set
@@ -3705,6 +3716,7 @@ module Google
3705
3716
  # Update properties of this object
3706
3717
  def update!(**args)
3707
3718
  @connection_persistence_on_unhealthy_backends = args[:connection_persistence_on_unhealthy_backends] if args.key?(:connection_persistence_on_unhealthy_backends)
3719
+ @enable_strong_affinity = args[:enable_strong_affinity] if args.key?(:enable_strong_affinity)
3708
3720
  @idle_timeout_sec = args[:idle_timeout_sec] if args.key?(:idle_timeout_sec)
3709
3721
  @tracking_mode = args[:tracking_mode] if args.key?(:tracking_mode)
3710
3722
  end
@@ -4626,14 +4638,18 @@ module Google
4626
4638
  class CircuitBreakers
4627
4639
  include Google::Apis::Core::Hashable
4628
4640
 
4629
- # Not supported when the backend service is referenced by a URL map that is
4630
- # bound to target gRPC proxy that has validateForProxyless field set to true.
4641
+ # The maximum number of connections to the backend service. If not specified,
4642
+ # there is no limit. Not supported when the backend service is referenced by a
4643
+ # URL map that is bound to target gRPC proxy that has validateForProxyless field
4644
+ # set to true.
4631
4645
  # Corresponds to the JSON property `maxConnections`
4632
4646
  # @return [Fixnum]
4633
4647
  attr_accessor :max_connections
4634
4648
 
4635
- # Not supported when the backend service is referenced by a URL map that is
4636
- # bound to target gRPC proxy that has validateForProxyless field set to true.
4649
+ # The maximum number of pending requests allowed to the backend service. If not
4650
+ # specified, there is no limit. Not supported when the backend service is
4651
+ # referenced by a URL map that is bound to target gRPC proxy that has
4652
+ # validateForProxyless field set to true.
4637
4653
  # Corresponds to the JSON property `maxPendingRequests`
4638
4654
  # @return [Fixnum]
4639
4655
  attr_accessor :max_pending_requests
@@ -4644,14 +4660,20 @@ module Google
4644
4660
  # @return [Fixnum]
4645
4661
  attr_accessor :max_requests
4646
4662
 
4647
- # Not supported when the backend service is referenced by a URL map that is
4648
- # bound to target gRPC proxy that has validateForProxyless field set to true.
4663
+ # Maximum requests for a single connection to the backend service. This
4664
+ # parameter is respected by both the HTTP/1.1 and HTTP/2 implementations. If not
4665
+ # specified, there is no limit. Setting this parameter to 1 will effectively
4666
+ # disable keep alive. Not supported when the backend service is referenced by a
4667
+ # URL map that is bound to target gRPC proxy that has validateForProxyless field
4668
+ # set to true.
4649
4669
  # Corresponds to the JSON property `maxRequestsPerConnection`
4650
4670
  # @return [Fixnum]
4651
4671
  attr_accessor :max_requests_per_connection
4652
4672
 
4653
- # Not supported when the backend service is referenced by a URL map that is
4654
- # bound to target gRPC proxy that has validateForProxyless field set to true.
4673
+ # The maximum number of parallel retries allowed to the backend cluster. If not
4674
+ # specified, the default is 1. Not supported when the backend service is
4675
+ # referenced by a URL map that is bound to target gRPC proxy that has
4676
+ # validateForProxyless field set to true.
4655
4677
  # Corresponds to the JSON property `maxRetries`
4656
4678
  # @return [Fixnum]
4657
4679
  attr_accessor :max_retries
@@ -7837,6 +7859,14 @@ module Google
7837
7859
  # @return [String]
7838
7860
  attr_accessor :parent
7839
7861
 
7862
+ # [Output Only] URL of the region where the regional firewall policy resides.
7863
+ # This field is not applicable to global firewall policies. You must specify
7864
+ # this field as part of the HTTP request URL. It is not settable as a field in
7865
+ # the request body.
7866
+ # Corresponds to the JSON property `region`
7867
+ # @return [String]
7868
+ attr_accessor :region
7869
+
7840
7870
  # [Output Only] Total count of all firewall policy rule tuples. A firewall
7841
7871
  # policy can not exceed a set number of tuples.
7842
7872
  # Corresponds to the JSON property `ruleTupleCount`
@@ -7888,6 +7918,7 @@ module Google
7888
7918
  @kind = args[:kind] if args.key?(:kind)
7889
7919
  @name = args[:name] if args.key?(:name)
7890
7920
  @parent = args[:parent] if args.key?(:parent)
7921
+ @region = args[:region] if args.key?(:region)
7891
7922
  @rule_tuple_count = args[:rule_tuple_count] if args.key?(:rule_tuple_count)
7892
7923
  @rules = args[:rules] if args.key?(:rules)
7893
7924
  @self_link = args[:self_link] if args.key?(:self_link)
@@ -8123,6 +8154,18 @@ module Google
8123
8154
  # @return [Array<String>]
8124
8155
  attr_accessor :target_resources
8125
8156
 
8157
+ # A list of secure tags that controls which instances the firewall rule applies
8158
+ # to. If targetSecureTag are specified, then the firewall rule applies only to
8159
+ # instances in the VPC network that have one of those EFFECTIVE secure tags, if
8160
+ # all the target_secure_tag are in INEFFECTIVE state, then this rule will be
8161
+ # ignored. targetSecureTag may not be set at the same time as
8162
+ # targetServiceAccounts. If neither targetServiceAccounts nor targetSecureTag
8163
+ # are specified, the firewall rule applies to all instances on the specified
8164
+ # network. Maximum number of target label tags allowed is 256.
8165
+ # Corresponds to the JSON property `targetSecureTags`
8166
+ # @return [Array<Google::Apis::ComputeV1::FirewallPolicyRuleSecureTag>]
8167
+ attr_accessor :target_secure_tags
8168
+
8126
8169
  # A list of service accounts indicating the sets of instances that are applied
8127
8170
  # with this rule.
8128
8171
  # Corresponds to the JSON property `targetServiceAccounts`
@@ -8145,6 +8188,7 @@ module Google
8145
8188
  @priority = args[:priority] if args.key?(:priority)
8146
8189
  @rule_tuple_count = args[:rule_tuple_count] if args.key?(:rule_tuple_count)
8147
8190
  @target_resources = args[:target_resources] if args.key?(:target_resources)
8191
+ @target_secure_tags = args[:target_secure_tags] if args.key?(:target_secure_tags)
8148
8192
  @target_service_accounts = args[:target_service_accounts] if args.key?(:target_service_accounts)
8149
8193
  end
8150
8194
  end
@@ -8170,6 +8214,14 @@ module Google
8170
8214
  # @return [Array<String>]
8171
8215
  attr_accessor :src_ip_ranges
8172
8216
 
8217
+ # List of secure tag values, which should be matched at the source of the
8218
+ # traffic. For INGRESS rule, if all the srcSecureTag are INEFFECTIVE, and there
8219
+ # is no srcIpRange, this rule will be ignored. Maximum number of source tag
8220
+ # values allowed is 256.
8221
+ # Corresponds to the JSON property `srcSecureTags`
8222
+ # @return [Array<Google::Apis::ComputeV1::FirewallPolicyRuleSecureTag>]
8223
+ attr_accessor :src_secure_tags
8224
+
8173
8225
  def initialize(**args)
8174
8226
  update!(**args)
8175
8227
  end
@@ -8179,6 +8231,7 @@ module Google
8179
8231
  @dest_ip_ranges = args[:dest_ip_ranges] if args.key?(:dest_ip_ranges)
8180
8232
  @layer4_configs = args[:layer4_configs] if args.key?(:layer4_configs)
8181
8233
  @src_ip_ranges = args[:src_ip_ranges] if args.key?(:src_ip_ranges)
8234
+ @src_secure_tags = args[:src_secure_tags] if args.key?(:src_secure_tags)
8182
8235
  end
8183
8236
  end
8184
8237
 
@@ -8213,6 +8266,32 @@ module Google
8213
8266
  end
8214
8267
  end
8215
8268
 
8269
+ #
8270
+ class FirewallPolicyRuleSecureTag
8271
+ include Google::Apis::Core::Hashable
8272
+
8273
+ # Name of the secure tag, created with TagManager's TagValue API.
8274
+ # Corresponds to the JSON property `name`
8275
+ # @return [String]
8276
+ attr_accessor :name
8277
+
8278
+ # [Output Only] State of the secure tag, either `EFFECTIVE` or `INEFFECTIVE`. A
8279
+ # secure tag is `INEFFECTIVE` when it is deleted or its network is deleted.
8280
+ # Corresponds to the JSON property `state`
8281
+ # @return [String]
8282
+ attr_accessor :state
8283
+
8284
+ def initialize(**args)
8285
+ update!(**args)
8286
+ end
8287
+
8288
+ # Update properties of this object
8289
+ def update!(**args)
8290
+ @name = args[:name] if args.key?(:name)
8291
+ @state = args[:state] if args.key?(:state)
8292
+ end
8293
+ end
8294
+
8216
8295
  # Encapsulates numeric value that can be either absolute or relative.
8217
8296
  class FixedOrPercent
8218
8297
  include Google::Apis::Core::Hashable
@@ -9310,8 +9389,8 @@ module Google
9310
9389
  # The ID of a supported feature. To add multiple values, use commas to separate
9311
9390
  # values. Set to one or more of the following values: - VIRTIO_SCSI_MULTIQUEUE -
9312
9391
  # WINDOWS - MULTI_IP_SUBNET - UEFI_COMPATIBLE - SECURE_BOOT - GVNIC -
9313
- # SEV_CAPABLE - SUSPEND_RESUME_COMPATIBLE For more information, see Enabling
9314
- # guest operating system features.
9392
+ # SEV_CAPABLE - SUSPEND_RESUME_COMPATIBLE - SEV_SNP_CAPABLE For more information,
9393
+ # see Enabling guest operating system features.
9315
9394
  # Corresponds to the JSON property `type`
9316
9395
  # @return [String]
9317
9396
  attr_accessor :type
@@ -12275,6 +12354,11 @@ module Google
12275
12354
  # @return [Google::Apis::ComputeV1::NetworkPerformanceConfig]
12276
12355
  attr_accessor :network_performance_config
12277
12356
 
12357
+ # Additional instance params.
12358
+ # Corresponds to the JSON property `params`
12359
+ # @return [Google::Apis::ComputeV1::InstanceParams]
12360
+ attr_accessor :params
12361
+
12278
12362
  # The private IPv6 google access type for the VM. If not specified, use
12279
12363
  # INHERIT_FROM_SUBNETWORK as default.
12280
12364
  # Corresponds to the JSON property `privateIpv6GoogleAccess`
@@ -12401,6 +12485,7 @@ module Google
12401
12485
  @name = args[:name] if args.key?(:name)
12402
12486
  @network_interfaces = args[:network_interfaces] if args.key?(:network_interfaces)
12403
12487
  @network_performance_config = args[:network_performance_config] if args.key?(:network_performance_config)
12488
+ @params = args[:params] if args.key?(:params)
12404
12489
  @private_ipv6_google_access = args[:private_ipv6_google_access] if args.key?(:private_ipv6_google_access)
12405
12490
  @reservation_affinity = args[:reservation_affinity] if args.key?(:reservation_affinity)
12406
12491
  @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
@@ -12595,8 +12680,8 @@ module Google
12595
12680
  # Assigns a name to a port number. For example: `name: "http", port: 80` This
12596
12681
  # allows the system to reference ports by the assigned name instead of a port
12597
12682
  # number. Named ports can also contain multiple ports. For example: [`name: "
12598
- # http", port: 80`,`name: "http", port: 8080`] Named ports apply to all
12599
- # instances in this instance group.
12683
+ # app1", port: 8080`, `name: "app1", port: 8081`, `name: "app2", port: 8082`]
12684
+ # Named ports apply to all instances in this instance group.
12600
12685
  # Corresponds to the JSON property `namedPorts`
12601
12686
  # @return [Array<Google::Apis::ComputeV1::NamedPort>]
12602
12687
  attr_accessor :named_ports
@@ -14874,6 +14959,28 @@ module Google
14874
14959
  end
14875
14960
  end
14876
14961
 
14962
+ # Additional instance params.
14963
+ class InstanceParams
14964
+ include Google::Apis::Core::Hashable
14965
+
14966
+ # Resource manager tags to be bound to the instance. Tag keys and values have
14967
+ # the same definition as resource manager tags. Keys must be in the format `
14968
+ # tagKeys/`tag_key_id``, and values are in the format `tagValues/456`. The field
14969
+ # is ignored (both PUT & PATCH) when empty.
14970
+ # Corresponds to the JSON property `resourceManagerTags`
14971
+ # @return [Hash<String,String>]
14972
+ attr_accessor :resource_manager_tags
14973
+
14974
+ def initialize(**args)
14975
+ update!(**args)
14976
+ end
14977
+
14978
+ # Update properties of this object
14979
+ def update!(**args)
14980
+ @resource_manager_tags = args[:resource_manager_tags] if args.key?(:resource_manager_tags)
14981
+ end
14982
+ end
14983
+
14877
14984
  #
14878
14985
  class InstanceProperties
14879
14986
  include Google::Apis::Core::Hashable
@@ -15353,7 +15460,8 @@ module Google
15353
15460
  # @return [String]
15354
15461
  attr_accessor :short_name
15355
15462
 
15356
- # [Output Only] The type of the firewall policy.
15463
+ # [Output Only] The type of the firewall policy. Can be one of HIERARCHY,
15464
+ # NETWORK, NETWORK_REGIONAL.
15357
15465
  # Corresponds to the JSON property `type`
15358
15466
  # @return [String]
15359
15467
  attr_accessor :type
@@ -15868,13 +15976,7 @@ module Google
15868
15976
  # @return [String]
15869
15977
  attr_accessor :bandwidth
15870
15978
 
15871
- # Up to 16 candidate prefixes that control the allocation of
15872
- # cloudRouterIpv6Address and customerRouterIpv6Address for this attachment. Each
15873
- # prefix must be in the Global Unique Address (GUA) space. It is highly
15874
- # recommended that it be in a range owned by the requestor. A GUA in a range
15875
- # owned by Google will cause the request to fail. Google will select an
15876
- # available prefix from the supplied candidates or fail the request. If not
15877
- # supplied, a /125 from a Google-owned GUA block will be selected.
15979
+ # This field is not available.
15878
15980
  # Corresponds to the JSON property `candidateIpv6Subnets`
15879
15981
  # @return [Array<String>]
15880
15982
  attr_accessor :candidate_ipv6_subnets
@@ -15902,10 +16004,7 @@ module Google
15902
16004
  # @return [String]
15903
16005
  attr_accessor :cloud_router_ipv6_address
15904
16006
 
15905
- # If supplied, the interface id (index within the subnet) to be used for the
15906
- # cloud router address. The id must be in the range of 1 to 6. If a subnet mask
15907
- # is supplied, it must be /125, and the subnet should either be 0 or match the
15908
- # selected subnet.
16007
+ # This field is not available.
15909
16008
  # Corresponds to the JSON property `cloudRouterIpv6InterfaceId`
15910
16009
  # @return [String]
15911
16010
  attr_accessor :cloud_router_ipv6_interface_id
@@ -15927,18 +16026,14 @@ module Google
15927
16026
  # @return [String]
15928
16027
  attr_accessor :customer_router_ipv6_address
15929
16028
 
15930
- # If supplied, the interface id (index within the subnet) to be used for the
15931
- # customer router address. The id must be in the range of 1 to 6. If a subnet
15932
- # mask is supplied, it must be /125, and the subnet should either be 0 or match
15933
- # the selected subnet.
16029
+ # This field is not available.
15934
16030
  # Corresponds to the JSON property `customerRouterIpv6InterfaceId`
15935
16031
  # @return [String]
15936
16032
  attr_accessor :customer_router_ipv6_interface_id
15937
16033
 
15938
- # [Output only for types PARTNER and DEDICATED. Not present for PARTNER_PROVIDER.
15939
- # ] Dataplane version for this InterconnectAttachment. This field is only
15940
- # present for Dataplane version 2 and higher. Absence of this field in the API
15941
- # output indicates that the Dataplane is version 1.
16034
+ # [Output Only] Dataplane version for this InterconnectAttachment. This field is
16035
+ # only present for Dataplane version 2 and higher. Absence of this field in the
16036
+ # API output indicates that the Dataplane is version 1.
15942
16037
  # Corresponds to the JSON property `dataplaneVersion`
15943
16038
  # @return [Fixnum]
15944
16039
  attr_accessor :dataplane_version
@@ -17858,8 +17953,7 @@ module Google
17858
17953
  attr_accessor :description
17859
17954
 
17860
17955
  # [Input Only] Whether to attempt an application consistent machine image by
17861
- # informing the OS to prepare for the snapshot process. Currently only supported
17862
- # on Windows instances using the Volume Shadow Copy Service (VSS).
17956
+ # informing the OS to prepare for the snapshot process.
17863
17957
  # Corresponds to the JSON property `guestFlush`
17864
17958
  # @return [Boolean]
17865
17959
  attr_accessor :guest_flush
@@ -19013,6 +19107,13 @@ module Google
19013
19107
  # @return [String]
19014
19108
  attr_accessor :description
19015
19109
 
19110
+ # Enable ULA internal ipv6 on this network. Enabling this feature will assign a /
19111
+ # 48 from google defined ULA prefix fd20::/20. .
19112
+ # Corresponds to the JSON property `enableUlaInternalIpv6`
19113
+ # @return [Boolean]
19114
+ attr_accessor :enable_ula_internal_ipv6
19115
+ alias_method :enable_ula_internal_ipv6?, :enable_ula_internal_ipv6
19116
+
19016
19117
  # [Output Only] The gateway address for default routing out of the network,
19017
19118
  # selected by GCP.
19018
19119
  # Corresponds to the JSON property `gatewayIPv4`
@@ -19025,6 +19126,16 @@ module Google
19025
19126
  # @return [Fixnum]
19026
19127
  attr_accessor :id
19027
19128
 
19129
+ # When enabling ula internal ipv6, caller optionally can specify the /48 range
19130
+ # they want from the google defined ULA prefix fd20::/20. The input must be a
19131
+ # valid /48 ULA IPv6 address and must be within the fd20::/20. Operation will
19132
+ # fail if the speficied /48 is already in used by another resource. If the field
19133
+ # is not speficied, then a /48 range will be randomly allocated from fd20::/20
19134
+ # and returned via this field. .
19135
+ # Corresponds to the JSON property `internalIpv6Range`
19136
+ # @return [String]
19137
+ attr_accessor :internal_ipv6_range
19138
+
19028
19139
  # [Output Only] Type of the resource. Always compute#network for networks.
19029
19140
  # Corresponds to the JSON property `kind`
19030
19141
  # @return [String]
@@ -19046,6 +19157,13 @@ module Google
19046
19157
  # @return [String]
19047
19158
  attr_accessor :name
19048
19159
 
19160
+ # The network firewall policy enforcement order. Can be either
19161
+ # AFTER_CLASSIC_FIREWALL or BEFORE_CLASSIC_FIREWALL. Defaults to
19162
+ # AFTER_CLASSIC_FIREWALL if the field is not specified.
19163
+ # Corresponds to the JSON property `networkFirewallPolicyEnforcementOrder`
19164
+ # @return [String]
19165
+ attr_accessor :network_firewall_policy_enforcement_order
19166
+
19049
19167
  # [Output Only] A list of network peerings for the resource.
19050
19168
  # Corresponds to the JSON property `peerings`
19051
19169
  # @return [Array<Google::Apis::ComputeV1::NetworkPeering>]
@@ -19063,6 +19181,11 @@ module Google
19063
19181
  # @return [String]
19064
19182
  attr_accessor :self_link
19065
19183
 
19184
+ # [Output Only] Server-defined URL for this resource with the resource id.
19185
+ # Corresponds to the JSON property `selfLinkWithId`
19186
+ # @return [String]
19187
+ attr_accessor :self_link_with_id
19188
+
19066
19189
  # [Output Only] Server-defined fully-qualified URLs for all subnetworks in this
19067
19190
  # VPC network.
19068
19191
  # Corresponds to the JSON property `subnetworks`
@@ -19079,14 +19202,18 @@ module Google
19079
19202
  @auto_create_subnetworks = args[:auto_create_subnetworks] if args.key?(:auto_create_subnetworks)
19080
19203
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
19081
19204
  @description = args[:description] if args.key?(:description)
19205
+ @enable_ula_internal_ipv6 = args[:enable_ula_internal_ipv6] if args.key?(:enable_ula_internal_ipv6)
19082
19206
  @gateway_i_pv4 = args[:gateway_i_pv4] if args.key?(:gateway_i_pv4)
19083
19207
  @id = args[:id] if args.key?(:id)
19208
+ @internal_ipv6_range = args[:internal_ipv6_range] if args.key?(:internal_ipv6_range)
19084
19209
  @kind = args[:kind] if args.key?(:kind)
19085
19210
  @mtu = args[:mtu] if args.key?(:mtu)
19086
19211
  @name = args[:name] if args.key?(:name)
19212
+ @network_firewall_policy_enforcement_order = args[:network_firewall_policy_enforcement_order] if args.key?(:network_firewall_policy_enforcement_order)
19087
19213
  @peerings = args[:peerings] if args.key?(:peerings)
19088
19214
  @routing_config = args[:routing_config] if args.key?(:routing_config)
19089
19215
  @self_link = args[:self_link] if args.key?(:self_link)
19216
+ @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
19090
19217
  @subnetworks = args[:subnetworks] if args.key?(:subnetworks)
19091
19218
  end
19092
19219
  end
@@ -19226,8 +19353,8 @@ module Google
19226
19353
  attr_accessor :network
19227
19354
 
19228
19355
  # Type of network endpoints in this network endpoint group. Can be one of
19229
- # GCE_VM_IP_PORT, NON_GCP_PRIVATE_IP_PORT, INTERNET_FQDN_PORT, INTERNET_IP_PORT,
19230
- # SERVERLESS, PRIVATE_SERVICE_CONNECT.
19356
+ # GCE_VM_IP, GCE_VM_IP_PORT, NON_GCP_PRIVATE_IP_PORT, INTERNET_FQDN_PORT,
19357
+ # INTERNET_IP_PORT, SERVERLESS, PRIVATE_SERVICE_CONNECT.
19231
19358
  # Corresponds to the JSON property `networkEndpointType`
19232
19359
  # @return [String]
19233
19360
  attr_accessor :network_endpoint_type
@@ -19513,13 +19640,13 @@ module Google
19513
19640
  # @return [String]
19514
19641
  attr_accessor :tag
19515
19642
 
19516
- # A template to parse service and tag fields from a request URL. URL mask allows
19517
- # for routing to multiple Run services without having to create multiple network
19518
- # endpoint groups and backend services. For example, request URLs "foo1.domain.
19519
- # com/bar1" and "foo1.domain.com/bar2" can be backed by the same Serverless
19520
- # Network Endpoint Group (NEG) with URL mask ".domain.com/". The URL mask will
19521
- # parse them to ` service="bar1", tag="foo1" ` and ` service="bar2", tag="foo2" `
19522
- # respectively.
19643
+ # A template to parse <service> and <tag> fields from a request URL. URL mask
19644
+ # allows for routing to multiple Run services without having to create multiple
19645
+ # network endpoint groups and backend services. For example, request URLs "foo1.
19646
+ # domain.com/bar1" and "foo1.domain.com/bar2" can be backed by the same
19647
+ # Serverless Network Endpoint Group (NEG) with URL mask "<tag>.domain.com/<
19648
+ # service>". The URL mask will parse them to ` service="bar1", tag="foo1" ` and `
19649
+ # service="bar2", tag="foo2" ` respectively.
19523
19650
  # Corresponds to the JSON property `urlMask`
19524
19651
  # @return [String]
19525
19652
  attr_accessor :url_mask
@@ -19970,6 +20097,11 @@ module Google
19970
20097
  # @return [String]
19971
20098
  attr_accessor :fingerprint
19972
20099
 
20100
+ # The prefix length of the primary internal IPv6 range.
20101
+ # Corresponds to the JSON property `internalIpv6PrefixLength`
20102
+ # @return [Fixnum]
20103
+ attr_accessor :internal_ipv6_prefix_length
20104
+
19973
20105
  # An array of IPv6 access configurations for this interface. Currently, only one
19974
20106
  # IPv6 access config, DIRECT_IPV6, is supported. If there is no ipv6AccessConfig
19975
20107
  # specified, then this instance will have no external IPv6 Internet access.
@@ -20061,6 +20193,7 @@ module Google
20061
20193
  @access_configs = args[:access_configs] if args.key?(:access_configs)
20062
20194
  @alias_ip_ranges = args[:alias_ip_ranges] if args.key?(:alias_ip_ranges)
20063
20195
  @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
20196
+ @internal_ipv6_prefix_length = args[:internal_ipv6_prefix_length] if args.key?(:internal_ipv6_prefix_length)
20064
20197
  @ipv6_access_configs = args[:ipv6_access_configs] if args.key?(:ipv6_access_configs)
20065
20198
  @ipv6_access_type = args[:ipv6_access_type] if args.key?(:ipv6_access_type)
20066
20199
  @ipv6_address = args[:ipv6_address] if args.key?(:ipv6_address)
@@ -26630,6 +26763,69 @@ module Google
26630
26763
  end
26631
26764
  end
26632
26765
 
26766
+ #
26767
+ class RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponse
26768
+ include Google::Apis::Core::Hashable
26769
+
26770
+ # Effective firewalls from firewall policy.
26771
+ # Corresponds to the JSON property `firewallPolicys`
26772
+ # @return [Array<Google::Apis::ComputeV1::RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponseEffectiveFirewallPolicy>]
26773
+ attr_accessor :firewall_policys
26774
+
26775
+ # Effective firewalls on the network.
26776
+ # Corresponds to the JSON property `firewalls`
26777
+ # @return [Array<Google::Apis::ComputeV1::Firewall>]
26778
+ attr_accessor :firewalls
26779
+
26780
+ def initialize(**args)
26781
+ update!(**args)
26782
+ end
26783
+
26784
+ # Update properties of this object
26785
+ def update!(**args)
26786
+ @firewall_policys = args[:firewall_policys] if args.key?(:firewall_policys)
26787
+ @firewalls = args[:firewalls] if args.key?(:firewalls)
26788
+ end
26789
+ end
26790
+
26791
+ #
26792
+ class RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponseEffectiveFirewallPolicy
26793
+ include Google::Apis::Core::Hashable
26794
+
26795
+ # [Output Only] The display name of the firewall policy.
26796
+ # Corresponds to the JSON property `displayName`
26797
+ # @return [String]
26798
+ attr_accessor :display_name
26799
+
26800
+ # [Output Only] The name of the firewall policy.
26801
+ # Corresponds to the JSON property `name`
26802
+ # @return [String]
26803
+ attr_accessor :name
26804
+
26805
+ # The rules that apply to the network.
26806
+ # Corresponds to the JSON property `rules`
26807
+ # @return [Array<Google::Apis::ComputeV1::FirewallPolicyRule>]
26808
+ attr_accessor :rules
26809
+
26810
+ # [Output Only] The type of the firewall policy. Can be one of HIERARCHY,
26811
+ # NETWORK, NETWORK_REGIONAL.
26812
+ # Corresponds to the JSON property `type`
26813
+ # @return [String]
26814
+ attr_accessor :type
26815
+
26816
+ def initialize(**args)
26817
+ update!(**args)
26818
+ end
26819
+
26820
+ # Update properties of this object
26821
+ def update!(**args)
26822
+ @display_name = args[:display_name] if args.key?(:display_name)
26823
+ @name = args[:name] if args.key?(:name)
26824
+ @rules = args[:rules] if args.key?(:rules)
26825
+ @type = args[:type] if args.key?(:type)
26826
+ end
26827
+ end
26828
+
26633
26829
  #
26634
26830
  class RegionSetLabelsRequest
26635
26831
  include Google::Apis::Core::Hashable
@@ -27677,8 +27873,8 @@ module Google
27677
27873
  class ResourcePolicyDailyCycle
27678
27874
  include Google::Apis::Core::Hashable
27679
27875
 
27680
- # Defines a schedule with units measured in months. The value determines how
27681
- # many months pass between the start of each cycle.
27876
+ # Defines a schedule with units measured in days. The value determines how many
27877
+ # days pass between the start of each cycle.
27682
27878
  # Corresponds to the JSON property `daysInCycle`
27683
27879
  # @return [Fixnum]
27684
27880
  attr_accessor :days_in_cycle
@@ -29061,7 +29257,7 @@ module Google
29061
29257
  # Cloud Router will initiate the BFD session for this BGP peer. If set to
29062
29258
  # PASSIVE, the Cloud Router will wait for the peer router to initiate the BFD
29063
29259
  # session for this BGP peer. If set to DISABLED, BFD is disabled for this BGP
29064
- # peer. The default is PASSIVE.
29260
+ # peer. The default is DISABLED.
29065
29261
  # Corresponds to the JSON property `sessionInitializationMode`
29066
29262
  # @return [String]
29067
29263
  attr_accessor :session_initialization_mode
@@ -29674,7 +29870,8 @@ module Google
29674
29870
  # @return [String]
29675
29871
  attr_accessor :router_appliance_instance
29676
29872
 
29677
- # BGP state as specified in RFC1771.
29873
+ # The state of the BGP session. For a list of possible values for this field,
29874
+ # see BGP session states.
29678
29875
  # Corresponds to the JSON property `state`
29679
29876
  # @return [String]
29680
29877
  attr_accessor :state
@@ -30540,13 +30737,17 @@ module Google
30540
30737
  # @return [String]
30541
30738
  attr_accessor :self_link
30542
30739
 
30543
- # The type indicates the intended use of the security policy. CLOUD_ARMOR -
30740
+ # The type indicates the intended use of the security policy. - CLOUD_ARMOR:
30544
30741
  # Cloud Armor backend security policies can be configured to filter incoming
30545
30742
  # HTTP requests targeting backend services. They filter requests before they hit
30546
- # the origin servers. CLOUD_ARMOR_EDGE - Cloud Armor edge security policies can
30743
+ # the origin servers. - CLOUD_ARMOR_EDGE: Cloud Armor edge security policies can
30547
30744
  # be configured to filter incoming HTTP requests targeting backend services (
30548
30745
  # including Cloud CDN-enabled) as well as backend buckets (Cloud Storage). They
30549
- # filter requests before the request is served from Google's cache.
30746
+ # filter requests before the request is served from Google's cache. -
30747
+ # CLOUD_ARMOR_INTERNAL_SERVICE: Cloud Armor internal service policies can be
30748
+ # configured to filter HTTP requests targeting services managed by Traffic
30749
+ # Director in a service mesh. They filter requests before the request is served
30750
+ # from the application. This field can be set only at resource creation time.
30550
30751
  # Corresponds to the JSON property `type`
30551
30752
  # @return [String]
30552
30753
  attr_accessor :type
@@ -31033,10 +31234,11 @@ module Google
31033
31234
  # present in the request, the key type defaults to ALL. - XFF_IP: The first IP
31034
31235
  # address (i.e. the originating client IP address) specified in the list of IPs
31035
31236
  # under X-Forwarded-For HTTP header. If no such header is present or the value
31036
- # is not a valid IP, the key type defaults to ALL. - HTTP_COOKIE: The value of
31037
- # the HTTP cookie whose name is configured under "enforce_on_key_name". The key
31038
- # value is truncated to the first 128 bytes of the cookie value. If no such
31039
- # cookie is present in the request, the key type defaults to ALL.
31237
+ # is not a valid IP, the key defaults to the source IP address of the request i.
31238
+ # e. key type IP. - HTTP_COOKIE: The value of the HTTP cookie whose name is
31239
+ # configured under "enforce_on_key_name". The key value is truncated to the
31240
+ # first 128 bytes of the cookie value. If no such cookie is present in the
31241
+ # request, the key type defaults to ALL.
31040
31242
  # Corresponds to the JSON property `enforceOnKey`
31041
31243
  # @return [String]
31042
31244
  attr_accessor :enforce_on_key
@@ -31050,9 +31252,9 @@ module Google
31050
31252
 
31051
31253
  # Action to take for requests that are above the configured rate limit threshold,
31052
31254
  # to either deny with a specified HTTP response code, or redirect to a
31053
- # different endpoint. Valid options are "deny()" where valid values for status
31054
- # are 403, 404, 429, and 502, and "redirect" where the redirect parameters come
31055
- # from exceed_redirect_options below.
31255
+ # different endpoint. Valid options are "deny(status)", where valid values for
31256
+ # status are 403, 404, 429, and 502, and "redirect" where the redirect
31257
+ # parameters come from exceedRedirectOptions below.
31056
31258
  # Corresponds to the JSON property `exceedAction`
31057
31259
  # @return [String]
31058
31260
  attr_accessor :exceed_action
@@ -33449,6 +33651,13 @@ module Google
33449
33651
  # @return [Fixnum]
33450
33652
  attr_accessor :id
33451
33653
 
33654
+ # [Output Only] The range of internal IPv6 addresses that are owned by this
33655
+ # subnetwork. Note this is for general VM to VM communication, not to be
33656
+ # confused with the ipv6_cidr_range field.
33657
+ # Corresponds to the JSON property `internalIpv6Prefix`
33658
+ # @return [String]
33659
+ attr_accessor :internal_ipv6_prefix
33660
+
33452
33661
  # The range of internal addresses that are owned by this subnetwork. Provide
33453
33662
  # this property when you create the subnetwork. For example, 10.0.0.0/8 or 100.
33454
33663
  # 64.0.0/10. Ranges must be unique and non-overlapping within a network. Only
@@ -33556,9 +33765,10 @@ module Google
33556
33765
  # @return [String]
33557
33766
  attr_accessor :self_link
33558
33767
 
33559
- # The stack type for this subnet to identify whether the IPv6 feature is enabled
33560
- # or not. If not specified IPV4_ONLY will be used. This field can be both set at
33561
- # resource creation time and updated using patch.
33768
+ # The stack type for the subnet. If set to IPV4_ONLY, new VMs in the subnet are
33769
+ # assigned IPv4 addresses only. If set to IPV4_IPV6, new VMs in the subnet can
33770
+ # be assigned both IPv4 and IPv6 addresses. If not specified, IPV4_ONLY is used.
33771
+ # This field can be both set at resource creation time and updated using patch.
33562
33772
  # Corresponds to the JSON property `stackType`
33563
33773
  # @return [String]
33564
33774
  attr_accessor :stack_type
@@ -33586,6 +33796,7 @@ module Google
33586
33796
  @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
33587
33797
  @gateway_address = args[:gateway_address] if args.key?(:gateway_address)
33588
33798
  @id = args[:id] if args.key?(:id)
33799
+ @internal_ipv6_prefix = args[:internal_ipv6_prefix] if args.key?(:internal_ipv6_prefix)
33589
33800
  @ip_cidr_range = args[:ip_cidr_range] if args.key?(:ip_cidr_range)
33590
33801
  @ipv6_access_type = args[:ipv6_access_type] if args.key?(:ipv6_access_type)
33591
33802
  @ipv6_cidr_range = args[:ipv6_cidr_range] if args.key?(:ipv6_cidr_range)
@@ -33868,8 +34079,9 @@ module Google
33868
34079
  attr_accessor :enable
33869
34080
  alias_method :enable?, :enable
33870
34081
 
33871
- # Can only be specified if VPC flow logs for this subnetwork is enabled. Export
33872
- # filter used to define which VPC flow logs should be logged.
34082
+ # Can only be specified if VPC flow logs for this subnetwork is enabled. The
34083
+ # filter expression is used to define which VPC flow logs should be exported to
34084
+ # Cloud Logging.
33873
34085
  # Corresponds to the JSON property `filterExpr`
33874
34086
  # @return [String]
33875
34087
  attr_accessor :filter_expr
@@ -38038,6 +38250,21 @@ module Google
38038
38250
  class ValidateUrlMapsRequest
38039
38251
  include Google::Apis::Core::Hashable
38040
38252
 
38253
+ # Specifies the load balancer type(s) this validation request is for. Use
38254
+ # EXTERNAL_MANAGED for HTTP/HTTPS External Global Load Balancer with Advanced
38255
+ # Traffic Management. Use EXTERNAL for Classic HTTP/HTTPS External Global Load
38256
+ # Balancer. Other load balancer types are not supported. For more information,
38257
+ # refer to Choosing a load balancer. If unspecified, the load balancing scheme
38258
+ # will be inferred from the backend service resources this URL map references.
38259
+ # If that can not be inferred (for example, this URL map only references backend
38260
+ # buckets, or this Url map is for rewrites and redirects only and doesn't
38261
+ # reference any backends), EXTERNAL will be used as the default type. If
38262
+ # specified, the scheme(s) must not conflict with the load balancing scheme of
38263
+ # the backend service resources this Url map references.
38264
+ # Corresponds to the JSON property `loadBalancingSchemes`
38265
+ # @return [Array<String>]
38266
+ attr_accessor :load_balancing_schemes
38267
+
38041
38268
  # Represents a URL Map resource. Compute Engine has two URL Map resources: * [
38042
38269
  # Global](/compute/docs/reference/rest/v1/urlMaps) * [Regional](/compute/docs/
38043
38270
  # reference/rest/v1/regionUrlMaps) A URL map resource is a component of certain
@@ -38063,6 +38290,7 @@ module Google
38063
38290
 
38064
38291
  # Update properties of this object
38065
38292
  def update!(**args)
38293
+ @load_balancing_schemes = args[:load_balancing_schemes] if args.key?(:load_balancing_schemes)
38066
38294
  @resource = args[:resource] if args.key?(:resource)
38067
38295
  end
38068
38296
  end