google-apis-compute_v1 0.21.0 → 0.25.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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