google-apis-compute_v1 0.21.0 → 0.25.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.
@@ -464,15 +464,15 @@ module Google
464
464
  class AccessConfig
465
465
  include Google::Apis::Core::Hashable
466
466
 
467
- # [Output Only] The first IPv6 address of the external IPv6 range associated
468
- # with this instance, prefix length is stored in externalIpv6PrefixLength in
467
+ # The first IPv6 address of the external IPv6 range associated with this
468
+ # instance, prefix length is stored in externalIpv6PrefixLength in
469
469
  # ipv6AccessConfig. The field is output only, an IPv6 address from a subnetwork
470
470
  # associated with the instance will be allocated dynamically.
471
471
  # Corresponds to the JSON property `externalIpv6`
472
472
  # @return [String]
473
473
  attr_accessor :external_ipv6
474
474
 
475
- # [Output Only] The prefix length of the external IPv6 range.
475
+ # The prefix length of the external IPv6 range.
476
476
  # Corresponds to the JSON property `externalIpv6PrefixLength`
477
477
  # @return [Fixnum]
478
478
  attr_accessor :external_ipv6_prefix_length
@@ -1051,6 +1051,12 @@ module Google
1051
1051
  attr_accessor :enable_nested_virtualization
1052
1052
  alias_method :enable_nested_virtualization?, :enable_nested_virtualization
1053
1053
 
1054
+ # Whether to enable UEFI networking for instance creation.
1055
+ # Corresponds to the JSON property `enableUefiNetworking`
1056
+ # @return [Boolean]
1057
+ attr_accessor :enable_uefi_networking
1058
+ alias_method :enable_uefi_networking?, :enable_uefi_networking
1059
+
1054
1060
  # The number of threads per physical core. To disable simultaneous
1055
1061
  # multithreading (SMT) set this to 1. If unset, the maximum number of threads
1056
1062
  # supported per core by the underlying processor is assumed.
@@ -1065,6 +1071,7 @@ module Google
1065
1071
  # Update properties of this object
1066
1072
  def update!(**args)
1067
1073
  @enable_nested_virtualization = args[:enable_nested_virtualization] if args.key?(:enable_nested_virtualization)
1074
+ @enable_uefi_networking = args[:enable_uefi_networking] if args.key?(:enable_uefi_networking)
1068
1075
  @threads_per_core = args[:threads_per_core] if args.key?(:threads_per_core)
1069
1076
  end
1070
1077
  end
@@ -1399,6 +1406,11 @@ module Google
1399
1406
  # @return [Hash<String,String>]
1400
1407
  attr_accessor :labels
1401
1408
 
1409
+ # A list of publicly visible licenses. Reserved for Google's use.
1410
+ # Corresponds to the JSON property `licenses`
1411
+ # @return [Array<String>]
1412
+ attr_accessor :licenses
1413
+
1402
1414
  # Specifies which action to take on instance update with this disk. Default is
1403
1415
  # to use the existing disk.
1404
1416
  # Corresponds to the JSON property `onUpdateAction`
@@ -1471,6 +1483,7 @@ module Google
1471
1483
  @disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb)
1472
1484
  @disk_type = args[:disk_type] if args.key?(:disk_type)
1473
1485
  @labels = args[:labels] if args.key?(:labels)
1486
+ @licenses = args[:licenses] if args.key?(:licenses)
1474
1487
  @on_update_action = args[:on_update_action] if args.key?(:on_update_action)
1475
1488
  @provisioned_iops = args[:provisioned_iops] if args.key?(:provisioned_iops)
1476
1489
  @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
@@ -1504,11 +1517,6 @@ module Google
1504
1517
  # @return [Array<Google::Apis::ComputeV1::AuditLogConfig>]
1505
1518
  attr_accessor :audit_log_configs
1506
1519
 
1507
- # This is deprecated and has no effect. Do not use.
1508
- # Corresponds to the JSON property `exemptedMembers`
1509
- # @return [Array<String>]
1510
- attr_accessor :exempted_members
1511
-
1512
1520
  # Specifies a service that will be enabled for audit logging. For example, `
1513
1521
  # storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a special
1514
1522
  # value that covers all services.
@@ -1523,7 +1531,6 @@ module Google
1523
1531
  # Update properties of this object
1524
1532
  def update!(**args)
1525
1533
  @audit_log_configs = args[:audit_log_configs] if args.key?(:audit_log_configs)
1526
- @exempted_members = args[:exempted_members] if args.key?(:exempted_members)
1527
1534
  @service = args[:service] if args.key?(:service)
1528
1535
  end
1529
1536
  end
@@ -3256,9 +3263,13 @@ module Google
3256
3263
  # @return [Google::Apis::ComputeV1::Subsetting]
3257
3264
  attr_accessor :subsetting
3258
3265
 
3259
- # Not supported when the backend service is referenced by a URL map that is
3260
- # bound to target gRPC proxy that has validateForProxyless field set to true.
3261
- # Instead, use maxStreamDuration.
3266
+ # The backend service timeout has a different meaning depending on the type of
3267
+ # load balancer. For more information see, Backend service settings The default
3268
+ # is 30 seconds. The full range of timeout values allowed is 1 - 2,147,483,647
3269
+ # seconds. This value can be overridden in the PathMatcher configuration of the
3270
+ # UrlMap that references this backend service. Not supported when the backend
3271
+ # service is referenced by a URL map that is bound to target gRPC proxy that has
3272
+ # validateForProxyless field set to true. Instead, use maxStreamDuration.
3262
3273
  # Corresponds to the JSON property `timeoutSec`
3263
3274
  # @return [Fixnum]
3264
3275
  attr_accessor :timeout_sec
@@ -4613,14 +4624,18 @@ module Google
4613
4624
  class CircuitBreakers
4614
4625
  include Google::Apis::Core::Hashable
4615
4626
 
4616
- # Not supported when the backend service is referenced by a URL map that is
4617
- # bound to target gRPC proxy that has validateForProxyless field set to true.
4627
+ # The maximum number of connections to the backend service. If not specified,
4628
+ # there is no limit. Not supported when the backend service is referenced by a
4629
+ # URL map that is bound to target gRPC proxy that has validateForProxyless field
4630
+ # set to true.
4618
4631
  # Corresponds to the JSON property `maxConnections`
4619
4632
  # @return [Fixnum]
4620
4633
  attr_accessor :max_connections
4621
4634
 
4622
- # Not supported when the backend service is referenced by a URL map that is
4623
- # bound to target gRPC proxy that has validateForProxyless field set to true.
4635
+ # The maximum number of pending requests allowed to the backend service. If not
4636
+ # specified, there is no limit. Not supported when the backend service is
4637
+ # referenced by a URL map that is bound to target gRPC proxy that has
4638
+ # validateForProxyless field set to true.
4624
4639
  # Corresponds to the JSON property `maxPendingRequests`
4625
4640
  # @return [Fixnum]
4626
4641
  attr_accessor :max_pending_requests
@@ -4631,14 +4646,20 @@ module Google
4631
4646
  # @return [Fixnum]
4632
4647
  attr_accessor :max_requests
4633
4648
 
4634
- # Not supported when the backend service is referenced by a URL map that is
4635
- # bound to target gRPC proxy that has validateForProxyless field set to true.
4649
+ # Maximum requests for a single connection to the backend service. This
4650
+ # parameter is respected by both the HTTP/1.1 and HTTP/2 implementations. If not
4651
+ # specified, there is no limit. Setting this parameter to 1 will effectively
4652
+ # disable keep alive. Not supported when the backend service is referenced by a
4653
+ # URL map that is bound to target gRPC proxy that has validateForProxyless field
4654
+ # set to true.
4636
4655
  # Corresponds to the JSON property `maxRequestsPerConnection`
4637
4656
  # @return [Fixnum]
4638
4657
  attr_accessor :max_requests_per_connection
4639
4658
 
4640
- # Not supported when the backend service is referenced by a URL map that is
4641
- # bound to target gRPC proxy that has validateForProxyless field set to true.
4659
+ # The maximum number of parallel retries allowed to the backend cluster. If not
4660
+ # specified, the default is 1. Not supported when the backend service is
4661
+ # referenced by a URL map that is bound to target gRPC proxy that has
4662
+ # validateForProxyless field set to true.
4642
4663
  # Corresponds to the JSON property `maxRetries`
4643
4664
  # @return [Fixnum]
4644
4665
  attr_accessor :max_retries
@@ -7824,6 +7845,14 @@ module Google
7824
7845
  # @return [String]
7825
7846
  attr_accessor :parent
7826
7847
 
7848
+ # [Output Only] URL of the region where the regional firewall policy resides.
7849
+ # This field is not applicable to global firewall policies. You must specify
7850
+ # this field as part of the HTTP request URL. It is not settable as a field in
7851
+ # the request body.
7852
+ # Corresponds to the JSON property `region`
7853
+ # @return [String]
7854
+ attr_accessor :region
7855
+
7827
7856
  # [Output Only] Total count of all firewall policy rule tuples. A firewall
7828
7857
  # policy can not exceed a set number of tuples.
7829
7858
  # Corresponds to the JSON property `ruleTupleCount`
@@ -7875,6 +7904,7 @@ module Google
7875
7904
  @kind = args[:kind] if args.key?(:kind)
7876
7905
  @name = args[:name] if args.key?(:name)
7877
7906
  @parent = args[:parent] if args.key?(:parent)
7907
+ @region = args[:region] if args.key?(:region)
7878
7908
  @rule_tuple_count = args[:rule_tuple_count] if args.key?(:rule_tuple_count)
7879
7909
  @rules = args[:rules] if args.key?(:rules)
7880
7910
  @self_link = args[:self_link] if args.key?(:self_link)
@@ -8110,6 +8140,18 @@ module Google
8110
8140
  # @return [Array<String>]
8111
8141
  attr_accessor :target_resources
8112
8142
 
8143
+ # A list of secure tags that controls which instances the firewall rule applies
8144
+ # to. If targetSecureTag are specified, then the firewall rule applies only to
8145
+ # instances in the VPC network that have one of those EFFECTIVE secure tags, if
8146
+ # all the target_secure_tag are in INEFFECTIVE state, then this rule will be
8147
+ # ignored. targetSecureTag may not be set at the same time as
8148
+ # targetServiceAccounts. If neither targetServiceAccounts nor targetSecureTag
8149
+ # are specified, the firewall rule applies to all instances on the specified
8150
+ # network. Maximum number of target label tags allowed is 256.
8151
+ # Corresponds to the JSON property `targetSecureTags`
8152
+ # @return [Array<Google::Apis::ComputeV1::FirewallPolicyRuleSecureTag>]
8153
+ attr_accessor :target_secure_tags
8154
+
8113
8155
  # A list of service accounts indicating the sets of instances that are applied
8114
8156
  # with this rule.
8115
8157
  # Corresponds to the JSON property `targetServiceAccounts`
@@ -8132,6 +8174,7 @@ module Google
8132
8174
  @priority = args[:priority] if args.key?(:priority)
8133
8175
  @rule_tuple_count = args[:rule_tuple_count] if args.key?(:rule_tuple_count)
8134
8176
  @target_resources = args[:target_resources] if args.key?(:target_resources)
8177
+ @target_secure_tags = args[:target_secure_tags] if args.key?(:target_secure_tags)
8135
8178
  @target_service_accounts = args[:target_service_accounts] if args.key?(:target_service_accounts)
8136
8179
  end
8137
8180
  end
@@ -8157,6 +8200,14 @@ module Google
8157
8200
  # @return [Array<String>]
8158
8201
  attr_accessor :src_ip_ranges
8159
8202
 
8203
+ # List of secure tag values, which should be matched at the source of the
8204
+ # traffic. For INGRESS rule, if all the srcSecureTag are INEFFECTIVE, and there
8205
+ # is no srcIpRange, this rule will be ignored. Maximum number of source tag
8206
+ # values allowed is 256.
8207
+ # Corresponds to the JSON property `srcSecureTags`
8208
+ # @return [Array<Google::Apis::ComputeV1::FirewallPolicyRuleSecureTag>]
8209
+ attr_accessor :src_secure_tags
8210
+
8160
8211
  def initialize(**args)
8161
8212
  update!(**args)
8162
8213
  end
@@ -8166,6 +8217,7 @@ module Google
8166
8217
  @dest_ip_ranges = args[:dest_ip_ranges] if args.key?(:dest_ip_ranges)
8167
8218
  @layer4_configs = args[:layer4_configs] if args.key?(:layer4_configs)
8168
8219
  @src_ip_ranges = args[:src_ip_ranges] if args.key?(:src_ip_ranges)
8220
+ @src_secure_tags = args[:src_secure_tags] if args.key?(:src_secure_tags)
8169
8221
  end
8170
8222
  end
8171
8223
 
@@ -8200,6 +8252,32 @@ module Google
8200
8252
  end
8201
8253
  end
8202
8254
 
8255
+ #
8256
+ class FirewallPolicyRuleSecureTag
8257
+ include Google::Apis::Core::Hashable
8258
+
8259
+ # Name of the secure tag, created with TagManager's TagValue API.
8260
+ # Corresponds to the JSON property `name`
8261
+ # @return [String]
8262
+ attr_accessor :name
8263
+
8264
+ # [Output Only] State of the secure tag, either `EFFECTIVE` or `INEFFECTIVE`. A
8265
+ # secure tag is `INEFFECTIVE` when it is deleted or its network is deleted.
8266
+ # Corresponds to the JSON property `state`
8267
+ # @return [String]
8268
+ attr_accessor :state
8269
+
8270
+ def initialize(**args)
8271
+ update!(**args)
8272
+ end
8273
+
8274
+ # Update properties of this object
8275
+ def update!(**args)
8276
+ @name = args[:name] if args.key?(:name)
8277
+ @state = args[:state] if args.key?(:state)
8278
+ end
8279
+ end
8280
+
8203
8281
  # Encapsulates numeric value that can be either absolute or relative.
8204
8282
  class FixedOrPercent
8205
8283
  include Google::Apis::Core::Hashable
@@ -9297,8 +9375,8 @@ module Google
9297
9375
  # The ID of a supported feature. To add multiple values, use commas to separate
9298
9376
  # values. Set to one or more of the following values: - VIRTIO_SCSI_MULTIQUEUE -
9299
9377
  # WINDOWS - MULTI_IP_SUBNET - UEFI_COMPATIBLE - SECURE_BOOT - GVNIC -
9300
- # SEV_CAPABLE - SUSPEND_RESUME_COMPATIBLE For more information, see Enabling
9301
- # guest operating system features.
9378
+ # SEV_CAPABLE - SUSPEND_RESUME_COMPATIBLE - SEV_SNP_CAPABLE For more information,
9379
+ # see Enabling guest operating system features.
9302
9380
  # Corresponds to the JSON property `type`
9303
9381
  # @return [String]
9304
9382
  attr_accessor :type
@@ -12262,6 +12340,11 @@ module Google
12262
12340
  # @return [Google::Apis::ComputeV1::NetworkPerformanceConfig]
12263
12341
  attr_accessor :network_performance_config
12264
12342
 
12343
+ # Additional instance params.
12344
+ # Corresponds to the JSON property `params`
12345
+ # @return [Google::Apis::ComputeV1::InstanceParams]
12346
+ attr_accessor :params
12347
+
12265
12348
  # The private IPv6 google access type for the VM. If not specified, use
12266
12349
  # INHERIT_FROM_SUBNETWORK as default.
12267
12350
  # Corresponds to the JSON property `privateIpv6GoogleAccess`
@@ -12388,6 +12471,7 @@ module Google
12388
12471
  @name = args[:name] if args.key?(:name)
12389
12472
  @network_interfaces = args[:network_interfaces] if args.key?(:network_interfaces)
12390
12473
  @network_performance_config = args[:network_performance_config] if args.key?(:network_performance_config)
12474
+ @params = args[:params] if args.key?(:params)
12391
12475
  @private_ipv6_google_access = args[:private_ipv6_google_access] if args.key?(:private_ipv6_google_access)
12392
12476
  @reservation_affinity = args[:reservation_affinity] if args.key?(:reservation_affinity)
12393
12477
  @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
@@ -12582,8 +12666,8 @@ module Google
12582
12666
  # Assigns a name to a port number. For example: `name: "http", port: 80` This
12583
12667
  # allows the system to reference ports by the assigned name instead of a port
12584
12668
  # number. Named ports can also contain multiple ports. For example: [`name: "
12585
- # http", port: 80`,`name: "http", port: 8080`] Named ports apply to all
12586
- # instances in this instance group.
12669
+ # app1", port: 8080`, `name: "app1", port: 8081`, `name: "app2", port: 8082`]
12670
+ # Named ports apply to all instances in this instance group.
12587
12671
  # Corresponds to the JSON property `namedPorts`
12588
12672
  # @return [Array<Google::Apis::ComputeV1::NamedPort>]
12589
12673
  attr_accessor :named_ports
@@ -13133,6 +13217,30 @@ module Google
13133
13217
  # @return [Fixnum]
13134
13218
  attr_accessor :restarting
13135
13219
 
13220
+ # [Output Only] The number of instances in the managed instance group that are
13221
+ # scheduled to be resumed or are currently being resumed.
13222
+ # Corresponds to the JSON property `resuming`
13223
+ # @return [Fixnum]
13224
+ attr_accessor :resuming
13225
+
13226
+ # [Output Only] The number of instances in the managed instance group that are
13227
+ # scheduled to be started or are currently being started.
13228
+ # Corresponds to the JSON property `starting`
13229
+ # @return [Fixnum]
13230
+ attr_accessor :starting
13231
+
13232
+ # [Output Only] The number of instances in the managed instance group that are
13233
+ # scheduled to be stopped or are currently being stopped.
13234
+ # Corresponds to the JSON property `stopping`
13235
+ # @return [Fixnum]
13236
+ attr_accessor :stopping
13237
+
13238
+ # [Output Only] The number of instances in the managed instance group that are
13239
+ # scheduled to be suspended or are currently being suspended.
13240
+ # Corresponds to the JSON property `suspending`
13241
+ # @return [Fixnum]
13242
+ attr_accessor :suspending
13243
+
13136
13244
  # [Output Only] The number of instances in the managed instance group that are
13137
13245
  # being verified. See the managedInstances[].currentAction property in the
13138
13246
  # listManagedInstances method documentation.
@@ -13154,6 +13262,10 @@ module Google
13154
13262
  @recreating = args[:recreating] if args.key?(:recreating)
13155
13263
  @refreshing = args[:refreshing] if args.key?(:refreshing)
13156
13264
  @restarting = args[:restarting] if args.key?(:restarting)
13265
+ @resuming = args[:resuming] if args.key?(:resuming)
13266
+ @starting = args[:starting] if args.key?(:starting)
13267
+ @stopping = args[:stopping] if args.key?(:stopping)
13268
+ @suspending = args[:suspending] if args.key?(:suspending)
13157
13269
  @verifying = args[:verifying] if args.key?(:verifying)
13158
13270
  end
13159
13271
  end
@@ -14833,6 +14945,28 @@ module Google
14833
14945
  end
14834
14946
  end
14835
14947
 
14948
+ # Additional instance params.
14949
+ class InstanceParams
14950
+ include Google::Apis::Core::Hashable
14951
+
14952
+ # Resource manager tags to be bound to the instance. Tag keys and values have
14953
+ # the same definition as resource manager tags. Keys must be in the format `
14954
+ # tagKeys/`tag_key_id``, and values are in the format `tagValues/456`. The field
14955
+ # is ignored (both PUT & PATCH) when empty.
14956
+ # Corresponds to the JSON property `resourceManagerTags`
14957
+ # @return [Hash<String,String>]
14958
+ attr_accessor :resource_manager_tags
14959
+
14960
+ def initialize(**args)
14961
+ update!(**args)
14962
+ end
14963
+
14964
+ # Update properties of this object
14965
+ def update!(**args)
14966
+ @resource_manager_tags = args[:resource_manager_tags] if args.key?(:resource_manager_tags)
14967
+ end
14968
+ end
14969
+
14836
14970
  #
14837
14971
  class InstanceProperties
14838
14972
  include Google::Apis::Core::Hashable
@@ -14926,7 +15060,15 @@ module Google
14926
15060
  # @return [Google::Apis::ComputeV1::ReservationAffinity]
14927
15061
  attr_accessor :reservation_affinity
14928
15062
 
14929
- # Resource policies (names, not ULRs) applied to instances created from these
15063
+ # Resource manager tags to be bound to the instance. Tag keys and values have
15064
+ # the same definition as resource manager tags. Keys must be in the format `
15065
+ # tagKeys/`tag_key_id``, and values are in the format `tagValues/456`. The field
15066
+ # is ignored (both PUT & PATCH) when empty.
15067
+ # Corresponds to the JSON property `resourceManagerTags`
15068
+ # @return [Hash<String,String>]
15069
+ attr_accessor :resource_manager_tags
15070
+
15071
+ # Resource policies (names, not URLs) applied to instances created from these
14930
15072
  # properties. Note that for MachineImage, this is not supported yet.
14931
15073
  # Corresponds to the JSON property `resourcePolicies`
14932
15074
  # @return [Array<String>]
@@ -14975,6 +15117,7 @@ module Google
14975
15117
  @network_performance_config = args[:network_performance_config] if args.key?(:network_performance_config)
14976
15118
  @private_ipv6_google_access = args[:private_ipv6_google_access] if args.key?(:private_ipv6_google_access)
14977
15119
  @reservation_affinity = args[:reservation_affinity] if args.key?(:reservation_affinity)
15120
+ @resource_manager_tags = args[:resource_manager_tags] if args.key?(:resource_manager_tags)
14978
15121
  @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
14979
15122
  @scheduling = args[:scheduling] if args.key?(:scheduling)
14980
15123
  @service_accounts = args[:service_accounts] if args.key?(:service_accounts)
@@ -15303,7 +15446,8 @@ module Google
15303
15446
  # @return [String]
15304
15447
  attr_accessor :short_name
15305
15448
 
15306
- # [Output Only] The type of the firewall policy.
15449
+ # [Output Only] The type of the firewall policy. Can be one of HIERARCHY,
15450
+ # NETWORK, NETWORK_REGIONAL.
15307
15451
  # Corresponds to the JSON property `type`
15308
15452
  # @return [String]
15309
15453
  attr_accessor :type
@@ -15818,6 +15962,17 @@ module Google
15818
15962
  # @return [String]
15819
15963
  attr_accessor :bandwidth
15820
15964
 
15965
+ # Up to 16 candidate prefixes that control the allocation of
15966
+ # cloudRouterIpv6Address and customerRouterIpv6Address for this attachment. Each
15967
+ # prefix must be in the Global Unique Address (GUA) space. It is highly
15968
+ # recommended that it be in a range owned by the requestor. A GUA in a range
15969
+ # owned by Google will cause the request to fail. Google will select an
15970
+ # available prefix from the supplied candidates or fail the request. If not
15971
+ # supplied, a /125 from a Google-owned GUA block will be selected.
15972
+ # Corresponds to the JSON property `candidateIpv6Subnets`
15973
+ # @return [Array<String>]
15974
+ attr_accessor :candidate_ipv6_subnets
15975
+
15821
15976
  # Up to 16 candidate prefixes that can be used to restrict the allocation of
15822
15977
  # cloudRouterIpAddress and customerRouterIpAddress for this attachment. All
15823
15978
  # prefixes must be within link-local address space (169.254.0.0/16) and must be /
@@ -15835,6 +15990,20 @@ module Google
15835
15990
  # @return [String]
15836
15991
  attr_accessor :cloud_router_ip_address
15837
15992
 
15993
+ # [Output Only] IPv6 address + prefix length to be configured on Cloud Router
15994
+ # Interface for this interconnect attachment.
15995
+ # Corresponds to the JSON property `cloudRouterIpv6Address`
15996
+ # @return [String]
15997
+ attr_accessor :cloud_router_ipv6_address
15998
+
15999
+ # If supplied, the interface id (index within the subnet) to be used for the
16000
+ # cloud router address. The id must be in the range of 1 to 6. If a subnet mask
16001
+ # is supplied, it must be /125, and the subnet should either be 0 or match the
16002
+ # selected subnet.
16003
+ # Corresponds to the JSON property `cloudRouterIpv6InterfaceId`
16004
+ # @return [String]
16005
+ attr_accessor :cloud_router_ipv6_interface_id
16006
+
15838
16007
  # [Output Only] Creation timestamp in RFC3339 text format.
15839
16008
  # Corresponds to the JSON property `creationTimestamp`
15840
16009
  # @return [String]
@@ -15846,10 +16015,23 @@ module Google
15846
16015
  # @return [String]
15847
16016
  attr_accessor :customer_router_ip_address
15848
16017
 
15849
- # [Output only for types PARTNER and DEDICATED. Not present for PARTNER_PROVIDER.
15850
- # ] Dataplane version for this InterconnectAttachment. This field is only
15851
- # present for Dataplane version 2 and higher. Absence of this field in the API
15852
- # output indicates that the Dataplane is version 1.
16018
+ # [Output Only] IPv6 address + prefix length to be configured on the customer
16019
+ # router subinterface for this interconnect attachment.
16020
+ # Corresponds to the JSON property `customerRouterIpv6Address`
16021
+ # @return [String]
16022
+ attr_accessor :customer_router_ipv6_address
16023
+
16024
+ # If supplied, the interface id (index within the subnet) to be used for the
16025
+ # customer router address. The id must be in the range of 1 to 6. If a subnet
16026
+ # mask is supplied, it must be /125, and the subnet should either be 0 or match
16027
+ # the selected subnet.
16028
+ # Corresponds to the JSON property `customerRouterIpv6InterfaceId`
16029
+ # @return [String]
16030
+ attr_accessor :customer_router_ipv6_interface_id
16031
+
16032
+ # [Output Only] Dataplane version for this InterconnectAttachment. This field is
16033
+ # only present for Dataplane version 2 and higher. Absence of this field in the
16034
+ # API output indicates that the Dataplane is version 1.
15853
16035
  # Corresponds to the JSON property `dataplaneVersion`
15854
16036
  # @return [Fixnum]
15855
16037
  attr_accessor :dataplane_version
@@ -16008,6 +16190,14 @@ module Google
16008
16190
  # @return [String]
16009
16191
  attr_accessor :self_link
16010
16192
 
16193
+ # The stack type for this interconnect attachment to identify whether the IPv6
16194
+ # feature is enabled or not. If not specified, IPV4_ONLY will be used. This
16195
+ # field can be both set at interconnect attachments creation and update
16196
+ # interconnect attachment operations.
16197
+ # Corresponds to the JSON property `stackType`
16198
+ # @return [String]
16199
+ attr_accessor :stack_type
16200
+
16011
16201
  # [Output Only] The current state of this attachment's functionality. Enum
16012
16202
  # values ACTIVE and UNPROVISIONED are shared by DEDICATED/PRIVATE, PARTNER, and
16013
16203
  # PARTNER_PROVIDER interconnect attachments, while enum values PENDING_PARTNER,
@@ -16050,10 +16240,15 @@ module Google
16050
16240
  def update!(**args)
16051
16241
  @admin_enabled = args[:admin_enabled] if args.key?(:admin_enabled)
16052
16242
  @bandwidth = args[:bandwidth] if args.key?(:bandwidth)
16243
+ @candidate_ipv6_subnets = args[:candidate_ipv6_subnets] if args.key?(:candidate_ipv6_subnets)
16053
16244
  @candidate_subnets = args[:candidate_subnets] if args.key?(:candidate_subnets)
16054
16245
  @cloud_router_ip_address = args[:cloud_router_ip_address] if args.key?(:cloud_router_ip_address)
16246
+ @cloud_router_ipv6_address = args[:cloud_router_ipv6_address] if args.key?(:cloud_router_ipv6_address)
16247
+ @cloud_router_ipv6_interface_id = args[:cloud_router_ipv6_interface_id] if args.key?(:cloud_router_ipv6_interface_id)
16055
16248
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
16056
16249
  @customer_router_ip_address = args[:customer_router_ip_address] if args.key?(:customer_router_ip_address)
16250
+ @customer_router_ipv6_address = args[:customer_router_ipv6_address] if args.key?(:customer_router_ipv6_address)
16251
+ @customer_router_ipv6_interface_id = args[:customer_router_ipv6_interface_id] if args.key?(:customer_router_ipv6_interface_id)
16057
16252
  @dataplane_version = args[:dataplane_version] if args.key?(:dataplane_version)
16058
16253
  @description = args[:description] if args.key?(:description)
16059
16254
  @edge_availability_domain = args[:edge_availability_domain] if args.key?(:edge_availability_domain)
@@ -16074,6 +16269,7 @@ module Google
16074
16269
  @router = args[:router] if args.key?(:router)
16075
16270
  @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
16076
16271
  @self_link = args[:self_link] if args.key?(:self_link)
16272
+ @stack_type = args[:stack_type] if args.key?(:stack_type)
16077
16273
  @state = args[:state] if args.key?(:state)
16078
16274
  @type = args[:type] if args.key?(:type)
16079
16275
  @vlan_tag8021q = args[:vlan_tag8021q] if args.key?(:vlan_tag8021q)
@@ -17589,7 +17785,7 @@ module Google
17589
17785
  class LocationPolicyLocation
17590
17786
  include Google::Apis::Core::Hashable
17591
17787
 
17592
- # Preference for a given location: ALLOW or DENY.
17788
+ # Preference for a given location.
17593
17789
  # Corresponds to the JSON property `preference`
17594
17790
  # @return [String]
17595
17791
  attr_accessor :preference
@@ -18910,6 +19106,13 @@ module Google
18910
19106
  # @return [String]
18911
19107
  attr_accessor :description
18912
19108
 
19109
+ # Enable ULA internal ipv6 on this network. Enabling this feature will assign a /
19110
+ # 48 from google defined ULA prefix fd20::/20. .
19111
+ # Corresponds to the JSON property `enableUlaInternalIpv6`
19112
+ # @return [Boolean]
19113
+ attr_accessor :enable_ula_internal_ipv6
19114
+ alias_method :enable_ula_internal_ipv6?, :enable_ula_internal_ipv6
19115
+
18913
19116
  # [Output Only] The gateway address for default routing out of the network,
18914
19117
  # selected by GCP.
18915
19118
  # Corresponds to the JSON property `gatewayIPv4`
@@ -18922,6 +19125,16 @@ module Google
18922
19125
  # @return [Fixnum]
18923
19126
  attr_accessor :id
18924
19127
 
19128
+ # When enabling ula internal ipv6, caller optionally can specify the /48 range
19129
+ # they want from the google defined ULA prefix fd20::/20. The input must be a
19130
+ # valid /48 ULA IPv6 address and must be within the fd20::/20. Operation will
19131
+ # fail if the speficied /48 is already in used by another resource. If the field
19132
+ # is not speficied, then a /48 range will be randomly allocated from fd20::/20
19133
+ # and returned via this field. .
19134
+ # Corresponds to the JSON property `internalIpv6Range`
19135
+ # @return [String]
19136
+ attr_accessor :internal_ipv6_range
19137
+
18925
19138
  # [Output Only] Type of the resource. Always compute#network for networks.
18926
19139
  # Corresponds to the JSON property `kind`
18927
19140
  # @return [String]
@@ -18943,6 +19156,13 @@ module Google
18943
19156
  # @return [String]
18944
19157
  attr_accessor :name
18945
19158
 
19159
+ # The network firewall policy enforcement order. Can be either
19160
+ # AFTER_CLASSIC_FIREWALL or BEFORE_CLASSIC_FIREWALL. Defaults to
19161
+ # AFTER_CLASSIC_FIREWALL if the field is not specified.
19162
+ # Corresponds to the JSON property `networkFirewallPolicyEnforcementOrder`
19163
+ # @return [String]
19164
+ attr_accessor :network_firewall_policy_enforcement_order
19165
+
18946
19166
  # [Output Only] A list of network peerings for the resource.
18947
19167
  # Corresponds to the JSON property `peerings`
18948
19168
  # @return [Array<Google::Apis::ComputeV1::NetworkPeering>]
@@ -18960,6 +19180,11 @@ module Google
18960
19180
  # @return [String]
18961
19181
  attr_accessor :self_link
18962
19182
 
19183
+ # [Output Only] Server-defined URL for this resource with the resource id.
19184
+ # Corresponds to the JSON property `selfLinkWithId`
19185
+ # @return [String]
19186
+ attr_accessor :self_link_with_id
19187
+
18963
19188
  # [Output Only] Server-defined fully-qualified URLs for all subnetworks in this
18964
19189
  # VPC network.
18965
19190
  # Corresponds to the JSON property `subnetworks`
@@ -18976,14 +19201,18 @@ module Google
18976
19201
  @auto_create_subnetworks = args[:auto_create_subnetworks] if args.key?(:auto_create_subnetworks)
18977
19202
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
18978
19203
  @description = args[:description] if args.key?(:description)
19204
+ @enable_ula_internal_ipv6 = args[:enable_ula_internal_ipv6] if args.key?(:enable_ula_internal_ipv6)
18979
19205
  @gateway_i_pv4 = args[:gateway_i_pv4] if args.key?(:gateway_i_pv4)
18980
19206
  @id = args[:id] if args.key?(:id)
19207
+ @internal_ipv6_range = args[:internal_ipv6_range] if args.key?(:internal_ipv6_range)
18981
19208
  @kind = args[:kind] if args.key?(:kind)
18982
19209
  @mtu = args[:mtu] if args.key?(:mtu)
18983
19210
  @name = args[:name] if args.key?(:name)
19211
+ @network_firewall_policy_enforcement_order = args[:network_firewall_policy_enforcement_order] if args.key?(:network_firewall_policy_enforcement_order)
18984
19212
  @peerings = args[:peerings] if args.key?(:peerings)
18985
19213
  @routing_config = args[:routing_config] if args.key?(:routing_config)
18986
19214
  @self_link = args[:self_link] if args.key?(:self_link)
19215
+ @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
18987
19216
  @subnetworks = args[:subnetworks] if args.key?(:subnetworks)
18988
19217
  end
18989
19218
  end
@@ -19123,12 +19352,18 @@ module Google
19123
19352
  attr_accessor :network
19124
19353
 
19125
19354
  # Type of network endpoints in this network endpoint group. Can be one of
19126
- # GCE_VM_IP_PORT, NON_GCP_PRIVATE_IP_PORT, INTERNET_FQDN_PORT, INTERNET_IP_PORT,
19127
- # SERVERLESS, PRIVATE_SERVICE_CONNECT.
19355
+ # GCE_VM_IP, GCE_VM_IP_PORT, NON_GCP_PRIVATE_IP_PORT, INTERNET_FQDN_PORT,
19356
+ # INTERNET_IP_PORT, SERVERLESS, PRIVATE_SERVICE_CONNECT.
19128
19357
  # Corresponds to the JSON property `networkEndpointType`
19129
19358
  # @return [String]
19130
19359
  attr_accessor :network_endpoint_type
19131
19360
 
19361
+ # The target service url used to set up private service connection to a Google
19362
+ # API. An example value is: "asia-northeast3-cloudkms.googleapis.com"
19363
+ # Corresponds to the JSON property `pscTargetService`
19364
+ # @return [String]
19365
+ attr_accessor :psc_target_service
19366
+
19132
19367
  # [Output Only] The URL of the region where the network endpoint group is
19133
19368
  # located.
19134
19369
  # Corresponds to the JSON property `region`
@@ -19174,6 +19409,7 @@ module Google
19174
19409
  @name = args[:name] if args.key?(:name)
19175
19410
  @network = args[:network] if args.key?(:network)
19176
19411
  @network_endpoint_type = args[:network_endpoint_type] if args.key?(:network_endpoint_type)
19412
+ @psc_target_service = args[:psc_target_service] if args.key?(:psc_target_service)
19177
19413
  @region = args[:region] if args.key?(:region)
19178
19414
  @self_link = args[:self_link] if args.key?(:self_link)
19179
19415
  @size = args[:size] if args.key?(:size)
@@ -19403,13 +19639,13 @@ module Google
19403
19639
  # @return [String]
19404
19640
  attr_accessor :tag
19405
19641
 
19406
- # A template to parse service and tag fields from a request URL. URL mask allows
19407
- # for routing to multiple Run services without having to create multiple network
19408
- # endpoint groups and backend services. For example, request URLs "foo1.domain.
19409
- # com/bar1" and "foo1.domain.com/bar2" can be backed by the same Serverless
19410
- # Network Endpoint Group (NEG) with URL mask ".domain.com/". The URL mask will
19411
- # parse them to ` service="bar1", tag="foo1" ` and ` service="bar2", tag="foo2" `
19412
- # respectively.
19642
+ # A template to parse <service> and <tag> fields from a request URL. URL mask
19643
+ # allows for routing to multiple Run services without having to create multiple
19644
+ # network endpoint groups and backend services. For example, request URLs "foo1.
19645
+ # domain.com/bar1" and "foo1.domain.com/bar2" can be backed by the same
19646
+ # Serverless Network Endpoint Group (NEG) with URL mask "<tag>.domain.com/<
19647
+ # service>". The URL mask will parse them to ` service="bar1", tag="foo1" ` and `
19648
+ # service="bar2", tag="foo2" ` respectively.
19413
19649
  # Corresponds to the JSON property `urlMask`
19414
19650
  # @return [String]
19415
19651
  attr_accessor :url_mask
@@ -19860,6 +20096,11 @@ module Google
19860
20096
  # @return [String]
19861
20097
  attr_accessor :fingerprint
19862
20098
 
20099
+ # The prefix length of the primary internal IPv6 range.
20100
+ # Corresponds to the JSON property `internalIpv6PrefixLength`
20101
+ # @return [Fixnum]
20102
+ attr_accessor :internal_ipv6_prefix_length
20103
+
19863
20104
  # An array of IPv6 access configurations for this interface. Currently, only one
19864
20105
  # IPv6 access config, DIRECT_IPV6, is supported. If there is no ipv6AccessConfig
19865
20106
  # specified, then this instance will have no external IPv6 Internet access.
@@ -19874,7 +20115,7 @@ module Google
19874
20115
  # @return [String]
19875
20116
  attr_accessor :ipv6_access_type
19876
20117
 
19877
- # [Output Only] An IPv6 internal network address for this network interface.
20118
+ # An IPv6 internal network address for this network interface.
19878
20119
  # Corresponds to the JSON property `ipv6Address`
19879
20120
  # @return [String]
19880
20121
  attr_accessor :ipv6_address
@@ -19951,6 +20192,7 @@ module Google
19951
20192
  @access_configs = args[:access_configs] if args.key?(:access_configs)
19952
20193
  @alias_ip_ranges = args[:alias_ip_ranges] if args.key?(:alias_ip_ranges)
19953
20194
  @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
20195
+ @internal_ipv6_prefix_length = args[:internal_ipv6_prefix_length] if args.key?(:internal_ipv6_prefix_length)
19954
20196
  @ipv6_access_configs = args[:ipv6_access_configs] if args.key?(:ipv6_access_configs)
19955
20197
  @ipv6_access_type = args[:ipv6_access_type] if args.key?(:ipv6_access_type)
19956
20198
  @ipv6_address = args[:ipv6_address] if args.key?(:ipv6_address)
@@ -26520,6 +26762,69 @@ module Google
26520
26762
  end
26521
26763
  end
26522
26764
 
26765
+ #
26766
+ class RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponse
26767
+ include Google::Apis::Core::Hashable
26768
+
26769
+ # Effective firewalls from firewall policy.
26770
+ # Corresponds to the JSON property `firewallPolicys`
26771
+ # @return [Array<Google::Apis::ComputeV1::RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponseEffectiveFirewallPolicy>]
26772
+ attr_accessor :firewall_policys
26773
+
26774
+ # Effective firewalls on the network.
26775
+ # Corresponds to the JSON property `firewalls`
26776
+ # @return [Array<Google::Apis::ComputeV1::Firewall>]
26777
+ attr_accessor :firewalls
26778
+
26779
+ def initialize(**args)
26780
+ update!(**args)
26781
+ end
26782
+
26783
+ # Update properties of this object
26784
+ def update!(**args)
26785
+ @firewall_policys = args[:firewall_policys] if args.key?(:firewall_policys)
26786
+ @firewalls = args[:firewalls] if args.key?(:firewalls)
26787
+ end
26788
+ end
26789
+
26790
+ #
26791
+ class RegionNetworkFirewallPoliciesGetEffectiveFirewallsResponseEffectiveFirewallPolicy
26792
+ include Google::Apis::Core::Hashable
26793
+
26794
+ # [Output Only] The display name of the firewall policy.
26795
+ # Corresponds to the JSON property `displayName`
26796
+ # @return [String]
26797
+ attr_accessor :display_name
26798
+
26799
+ # [Output Only] The name of the firewall policy.
26800
+ # Corresponds to the JSON property `name`
26801
+ # @return [String]
26802
+ attr_accessor :name
26803
+
26804
+ # The rules that apply to the network.
26805
+ # Corresponds to the JSON property `rules`
26806
+ # @return [Array<Google::Apis::ComputeV1::FirewallPolicyRule>]
26807
+ attr_accessor :rules
26808
+
26809
+ # [Output Only] The type of the firewall policy. Can be one of HIERARCHY,
26810
+ # NETWORK, NETWORK_REGIONAL.
26811
+ # Corresponds to the JSON property `type`
26812
+ # @return [String]
26813
+ attr_accessor :type
26814
+
26815
+ def initialize(**args)
26816
+ update!(**args)
26817
+ end
26818
+
26819
+ # Update properties of this object
26820
+ def update!(**args)
26821
+ @display_name = args[:display_name] if args.key?(:display_name)
26822
+ @name = args[:name] if args.key?(:name)
26823
+ @rules = args[:rules] if args.key?(:rules)
26824
+ @type = args[:type] if args.key?(:type)
26825
+ end
26826
+ end
26827
+
26523
26828
  #
26524
26829
  class RegionSetLabelsRequest
26525
26830
  include Google::Apis::Core::Hashable
@@ -27567,8 +27872,8 @@ module Google
27567
27872
  class ResourcePolicyDailyCycle
27568
27873
  include Google::Apis::Core::Hashable
27569
27874
 
27570
- # Defines a schedule with units measured in months. The value determines how
27571
- # many months pass between the start of each cycle.
27875
+ # Defines a schedule with units measured in days. The value determines how many
27876
+ # days pass between the start of each cycle.
27572
27877
  # Corresponds to the JSON property `daysInCycle`
27573
27878
  # @return [Fixnum]
27574
27879
  attr_accessor :days_in_cycle
@@ -29564,7 +29869,8 @@ module Google
29564
29869
  # @return [String]
29565
29870
  attr_accessor :router_appliance_instance
29566
29871
 
29567
- # BGP state as specified in RFC1771.
29872
+ # The state of the BGP session. For a list of possible values for this field,
29873
+ # see BGP session states.
29568
29874
  # Corresponds to the JSON property `state`
29569
29875
  # @return [String]
29570
29876
  attr_accessor :state
@@ -30217,8 +30523,8 @@ module Google
30217
30523
 
30218
30524
  # Defines the maintenance behavior for this instance. For standard instances,
30219
30525
  # the default behavior is MIGRATE. For preemptible instances, the default and
30220
- # only possible behavior is TERMINATE. For more information, see Setting
30221
- # Instance Scheduling Options.
30526
+ # only possible behavior is TERMINATE. For more information, see Set VM
30527
+ # availability policies.
30222
30528
  # Corresponds to the JSON property `onHostMaintenance`
30223
30529
  # @return [String]
30224
30530
  attr_accessor :on_host_maintenance
@@ -30430,10 +30736,10 @@ module Google
30430
30736
  # @return [String]
30431
30737
  attr_accessor :self_link
30432
30738
 
30433
- # The type indicates the intended use of the security policy. CLOUD_ARMOR -
30739
+ # The type indicates the intended use of the security policy. - CLOUD_ARMOR:
30434
30740
  # Cloud Armor backend security policies can be configured to filter incoming
30435
30741
  # HTTP requests targeting backend services. They filter requests before they hit
30436
- # the origin servers. CLOUD_ARMOR_EDGE - Cloud Armor edge security policies can
30742
+ # the origin servers. - CLOUD_ARMOR_EDGE: Cloud Armor edge security policies can
30437
30743
  # be configured to filter incoming HTTP requests targeting backend services (
30438
30744
  # including Cloud CDN-enabled) as well as backend buckets (Cloud Storage). They
30439
30745
  # filter requests before the request is served from Google's cache.
@@ -30923,10 +31229,11 @@ module Google
30923
31229
  # present in the request, the key type defaults to ALL. - XFF_IP: The first IP
30924
31230
  # address (i.e. the originating client IP address) specified in the list of IPs
30925
31231
  # under X-Forwarded-For HTTP header. If no such header is present or the value
30926
- # is not a valid IP, the key type defaults to ALL. - HTTP_COOKIE: The value of
30927
- # the HTTP cookie whose name is configured under "enforce_on_key_name". The key
30928
- # value is truncated to the first 128 bytes of the cookie value. If no such
30929
- # cookie is present in the request, the key type defaults to ALL.
31232
+ # is not a valid IP, the key defaults to the source IP address of the request i.
31233
+ # e. key type IP. - HTTP_COOKIE: The value of the HTTP cookie whose name is
31234
+ # configured under "enforce_on_key_name". The key value is truncated to the
31235
+ # first 128 bytes of the cookie value. If no such cookie is present in the
31236
+ # request, the key type defaults to ALL.
30930
31237
  # Corresponds to the JSON property `enforceOnKey`
30931
31238
  # @return [String]
30932
31239
  attr_accessor :enforce_on_key
@@ -30940,9 +31247,9 @@ module Google
30940
31247
 
30941
31248
  # Action to take for requests that are above the configured rate limit threshold,
30942
31249
  # to either deny with a specified HTTP response code, or redirect to a
30943
- # different endpoint. Valid options are "deny()" where valid values for status
30944
- # are 403, 404, 429, and 502, and "redirect" where the redirect parameters come
30945
- # from exceed_redirect_options below.
31250
+ # different endpoint. Valid options are "deny(status)", where valid values for
31251
+ # status are 403, 404, 429, and 502, and "redirect" where the redirect
31252
+ # parameters come from exceedRedirectOptions below.
30946
31253
  # Corresponds to the JSON property `exceedAction`
30947
31254
  # @return [String]
30948
31255
  attr_accessor :exceed_action
@@ -31203,6 +31510,13 @@ module Google
31203
31510
  # @return [String]
31204
31511
  attr_accessor :description
31205
31512
 
31513
+ # If specified, the domain name will be used during the integration between the
31514
+ # PSC connected endpoints and the Cloud DNS. For example, this is a valid domain
31515
+ # name: "p.mycompany.com.". Current max number of domain names supported is 1.
31516
+ # Corresponds to the JSON property `domainNames`
31517
+ # @return [Array<String>]
31518
+ attr_accessor :domain_names
31519
+
31206
31520
  # If true, enable the proxy protocol which is for supplying client TCP/IP
31207
31521
  # address data in TCP connections that traverse proxies on their way to
31208
31522
  # destination servers.
@@ -31291,6 +31605,7 @@ module Google
31291
31605
  @consumer_reject_lists = args[:consumer_reject_lists] if args.key?(:consumer_reject_lists)
31292
31606
  @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
31293
31607
  @description = args[:description] if args.key?(:description)
31608
+ @domain_names = args[:domain_names] if args.key?(:domain_names)
31294
31609
  @enable_proxy_protocol = args[:enable_proxy_protocol] if args.key?(:enable_proxy_protocol)
31295
31610
  @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
31296
31611
  @id = args[:id] if args.key?(:id)
@@ -33331,6 +33646,13 @@ module Google
33331
33646
  # @return [Fixnum]
33332
33647
  attr_accessor :id
33333
33648
 
33649
+ # [Output Only] The range of internal IPv6 addresses that are owned by this
33650
+ # subnetwork. Note this is for general VM to VM communication, not to be
33651
+ # confused with the ipv6_cidr_range field.
33652
+ # Corresponds to the JSON property `internalIpv6Prefix`
33653
+ # @return [String]
33654
+ attr_accessor :internal_ipv6_prefix
33655
+
33334
33656
  # The range of internal addresses that are owned by this subnetwork. Provide
33335
33657
  # this property when you create the subnetwork. For example, 10.0.0.0/8 or 100.
33336
33658
  # 64.0.0/10. Ranges must be unique and non-overlapping within a network. Only
@@ -33350,7 +33672,7 @@ module Google
33350
33672
  attr_accessor :ipv6_access_type
33351
33673
 
33352
33674
  # [Output Only] The range of internal IPv6 addresses that are owned by this
33353
- # subnetwork.
33675
+ # subnetwork. Note this will be for private google access only eventually.
33354
33676
  # Corresponds to the JSON property `ipv6CidrRange`
33355
33677
  # @return [String]
33356
33678
  attr_accessor :ipv6_cidr_range
@@ -33468,6 +33790,7 @@ module Google
33468
33790
  @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
33469
33791
  @gateway_address = args[:gateway_address] if args.key?(:gateway_address)
33470
33792
  @id = args[:id] if args.key?(:id)
33793
+ @internal_ipv6_prefix = args[:internal_ipv6_prefix] if args.key?(:internal_ipv6_prefix)
33471
33794
  @ip_cidr_range = args[:ip_cidr_range] if args.key?(:ip_cidr_range)
33472
33795
  @ipv6_access_type = args[:ipv6_access_type] if args.key?(:ipv6_access_type)
33473
33796
  @ipv6_cidr_range = args[:ipv6_cidr_range] if args.key?(:ipv6_cidr_range)
@@ -33750,8 +34073,9 @@ module Google
33750
34073
  attr_accessor :enable
33751
34074
  alias_method :enable?, :enable
33752
34075
 
33753
- # Can only be specified if VPC flow logs for this subnetwork is enabled. Export
33754
- # filter used to define which VPC flow logs should be logged.
34076
+ # Can only be specified if VPC flow logs for this subnetwork is enabled. The
34077
+ # filter expression is used to define which VPC flow logs should be exported to
34078
+ # Cloud Logging.
33755
34079
  # Corresponds to the JSON property `filterExpr`
33756
34080
  # @return [String]
33757
34081
  attr_accessor :filter_expr
@@ -37920,6 +38244,21 @@ module Google
37920
38244
  class ValidateUrlMapsRequest
37921
38245
  include Google::Apis::Core::Hashable
37922
38246
 
38247
+ # Specifies the load balancer type(s) this validation request is for. Use
38248
+ # EXTERNAL_MANAGED for HTTP/HTTPS External Global Load Balancer with Advanced
38249
+ # Traffic Management. Use EXTERNAL for Classic HTTP/HTTPS External Global Load
38250
+ # Balancer. Other load balancer types are not supported. For more information,
38251
+ # refer to Choosing a load balancer. If unspecified, the load balancing scheme
38252
+ # will be inferred from the backend service resources this URL map references.
38253
+ # If that can not be inferred (for example, this URL map only references backend
38254
+ # buckets, or this Url map is for rewrites and redirects only and doesn't
38255
+ # reference any backends), EXTERNAL will be used as the default type. If
38256
+ # specified, the scheme(s) must not conflict with the load balancing scheme of
38257
+ # the backend service resources this Url map references.
38258
+ # Corresponds to the JSON property `loadBalancingSchemes`
38259
+ # @return [Array<String>]
38260
+ attr_accessor :load_balancing_schemes
38261
+
37923
38262
  # Represents a URL Map resource. Compute Engine has two URL Map resources: * [
37924
38263
  # Global](/compute/docs/reference/rest/v1/urlMaps) * [Regional](/compute/docs/
37925
38264
  # reference/rest/v1/regionUrlMaps) A URL map resource is a component of certain
@@ -37945,6 +38284,7 @@ module Google
37945
38284
 
37946
38285
  # Update properties of this object
37947
38286
  def update!(**args)
38287
+ @load_balancing_schemes = args[:load_balancing_schemes] if args.key?(:load_balancing_schemes)
37948
38288
  @resource = args[:resource] if args.key?(:resource)
37949
38289
  end
37950
38290
  end