google-apis-compute_v1 0.54.0 → 0.56.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.
@@ -1435,12 +1435,14 @@ module Google
1435
1435
  # Specifies the disk type to use to create the instance. If not specified, the
1436
1436
  # default is pd-standard, specified using the full URL. For example: https://www.
1437
1437
  # googleapis.com/compute/v1/projects/project/zones/zone /diskTypes/pd-standard
1438
- # For a full list of acceptable values, see Persistent disk types. If you define
1439
- # this field, you can provide either the full or partial URL. For example, the
1440
- # following are valid values: - https://www.googleapis.com/compute/v1/projects/
1441
- # project/zones/zone /diskTypes/diskType - projects/project/zones/zone/diskTypes/
1442
- # diskType - zones/zone/diskTypes/diskType Note that for InstanceTemplate, this
1443
- # is the name of the disk type, not URL.
1438
+ # For a full list of acceptable values, see Persistent disk types. If you
1439
+ # specify this field when creating a VM, you can provide either the full or
1440
+ # partial URL. For example, the following values are valid: - https://www.
1441
+ # googleapis.com/compute/v1/projects/project/zones/zone /diskTypes/diskType -
1442
+ # projects/project/zones/zone/diskTypes/diskType - zones/zone/diskTypes/diskType
1443
+ # If you specify this field when creating or updating an instance template or
1444
+ # all-instances configuration, specify the type of the disk, not the URL. For
1445
+ # example: pd-standard.
1444
1446
  # Corresponds to the JSON property `diskType`
1445
1447
  # @return [String]
1446
1448
  attr_accessor :disk_type
@@ -1502,10 +1504,10 @@ module Google
1502
1504
  attr_accessor :source_image
1503
1505
 
1504
1506
  # The customer-supplied encryption key of the source image. Required if the
1505
- # source image is protected by a customer-supplied encryption key. Instance
1506
- # templates do not store customer-supplied encryption keys, so you cannot create
1507
- # disks for instances in a managed instance group if the source images are
1508
- # encrypted with your own keys.
1507
+ # source image is protected by a customer-supplied encryption key.
1508
+ # InstanceTemplate and InstancePropertiesPatch do not store customer-supplied
1509
+ # encryption keys, so you cannot create disks for instances in a managed
1510
+ # instance group if the source images are encrypted with your own keys.
1509
1511
  # Corresponds to the JSON property `sourceImageEncryptionKey`
1510
1512
  # @return [Google::Apis::ComputeV1::CustomerEncryptionKey]
1511
1513
  attr_accessor :source_image_encryption_key
@@ -2504,7 +2506,9 @@ module Google
2504
2506
  # group is completely drained, offering 0% of its available capacity. The valid
2505
2507
  # ranges are 0.0 and [0.1,1.0]. You cannot configure a setting larger than 0 and
2506
2508
  # smaller than 0.1. You cannot configure a setting of 0 when there is only one
2507
- # backend attached to the backend service.
2509
+ # backend attached to the backend service. Not available with backends that don'
2510
+ # t support using a balancingMode. This includes backends such as global
2511
+ # internet NEGs, regional serverless NEGs, and PSC NEGs.
2508
2512
  # Corresponds to the JSON property `capacityScaler`
2509
2513
  # @return [Float]
2510
2514
  attr_accessor :capacity_scaler
@@ -7122,7 +7126,8 @@ module Google
7122
7126
 
7123
7127
  # The reason of the error. This is a constant value that identifies the
7124
7128
  # proximate cause of the error. Error reasons are unique within a particular
7125
- # domain of errors. This should be at most 63 characters and match /[A-Z0-9_]+/.
7129
+ # domain of errors. This should be at most 63 characters and match a regular
7130
+ # expression of `A-Z+[A-Z0-9]`, which represents UPPER_SNAKE_CASE.
7126
7131
  # Corresponds to the JSON property `reason`
7127
7132
  # @return [String]
7128
7133
  attr_accessor :reason
@@ -8120,8 +8125,8 @@ module Google
8120
8125
  attr_accessor :kind
8121
8126
 
8122
8127
  # Name of the resource. For Organization Firewall Policies it's a [Output Only]
8123
- # numeric ID allocated by GCP which uniquely identifies the Organization
8124
- # Firewall Policy.
8128
+ # numeric ID allocated by Google Cloud which uniquely identifies the
8129
+ # Organization Firewall Policy.
8125
8130
  # Corresponds to the JSON property `name`
8126
8131
  # @return [String]
8127
8132
  attr_accessor :name
@@ -8632,16 +8637,17 @@ module Google
8632
8637
  # optionally specify an IP address that references an existing static (reserved)
8633
8638
  # IP address resource. When omitted, Google Cloud assigns an ephemeral IP
8634
8639
  # address. Use one of the following formats to specify an IP address while
8635
- # creating a forwarding rule: * IP address number, as in `100.1.2.3` * Full
8636
- # resource URL, as in https://www.googleapis.com/compute/v1/projects/project_id/
8637
- # regions/region /addresses/address-name * Partial URL or by name, as in: -
8638
- # projects/project_id/regions/region/addresses/address-name - regions/region/
8639
- # addresses/address-name - global/addresses/address-name - address-name The
8640
- # forwarding rule's target or backendService, and in most cases, also the
8641
- # loadBalancingScheme, determine the type of IP address that you can use. For
8642
- # detailed information, see [IP address specifications](https://cloud.google.com/
8643
- # load-balancing/docs/forwarding-rule-concepts#ip_address_specifications). When
8644
- # reading an IPAddress, the API always returns the IP address number.
8640
+ # creating a forwarding rule: * IP address number, as in `100.1.2.3` * IPv6
8641
+ # address range, as in `2600:1234::/96` * Full resource URL, as in https://www.
8642
+ # googleapis.com/compute/v1/projects/ project_id/regions/region/addresses/
8643
+ # address-name * Partial URL or by name, as in: - projects/project_id/regions/
8644
+ # region/addresses/address-name - regions/region/addresses/address-name - global/
8645
+ # addresses/address-name - address-name The forwarding rule's target or
8646
+ # backendService, and in most cases, also the loadBalancingScheme, determine the
8647
+ # type of IP address that you can use. For detailed information, see [IP address
8648
+ # specifications](https://cloud.google.com/load-balancing/docs/forwarding-rule-
8649
+ # concepts#ip_address_specifications). When reading an IPAddress, the API always
8650
+ # returns the IP address number.
8645
8651
  # Corresponds to the JSON property `IPAddress`
8646
8652
  # @return [String]
8647
8653
  attr_accessor :ip_address
@@ -8655,12 +8661,13 @@ module Google
8655
8661
  # @return [String]
8656
8662
  attr_accessor :ip_protocol
8657
8663
 
8658
- # This field is used along with the backend_service field for Internal TCP/UDP
8659
- # Load Balancing or Network Load Balancing, or with the target field for
8660
- # internal and external TargetInstance. You can only use one of ports and
8661
- # port_range, or allPorts. The three are mutually exclusive. For TCP, UDP and
8662
- # SCTP traffic, packets addressed to any ports will be forwarded to the target
8663
- # or backendService.
8664
+ # This field can only be used: - If IPProtocol is one of TCP, UDP, or SCTP. - By
8665
+ # internal TCP/UDP load balancers, backend service-based network load balancers,
8666
+ # and internal and external protocol forwarding. Set this field to true to allow
8667
+ # packets addressed to any port or packets lacking destination port information (
8668
+ # for example, UDP fragments after the first fragment) to be forwarded to the
8669
+ # backends configured with this forwarding rule. The ports, port_range, and
8670
+ # allPorts fields are mutually exclusive.
8664
8671
  # Corresponds to the JSON property `allPorts`
8665
8672
  # @return [Boolean]
8666
8673
  attr_accessor :all_ports
@@ -8816,27 +8823,35 @@ module Google
8816
8823
  attr_accessor :no_automate_dns_zone
8817
8824
  alias_method :no_automate_dns_zone?, :no_automate_dns_zone
8818
8825
 
8819
- # This field can be used only if: - Load balancing scheme is one of EXTERNAL,
8820
- # INTERNAL_SELF_MANAGED or INTERNAL_MANAGED - IPProtocol is one of TCP, UDP, or
8821
- # SCTP. Packets addressed to ports in the specified range will be forwarded to
8822
- # target or backend_service. You can only use one of ports, port_range, or
8823
- # allPorts. The three are mutually exclusive. Forwarding rules with the same [
8824
- # IPAddress, IPProtocol] pair must have disjoint ports. Some types of forwarding
8825
- # target have constraints on the acceptable ports. For more information, see [
8826
- # Port specifications](https://cloud.google.com/load-balancing/docs/forwarding-
8827
- # rule-concepts#port_specifications). @pattern: \\d+(?:-\\d+)?
8826
+ # This field can only be used: - If IPProtocol is one of TCP, UDP, or SCTP. - By
8827
+ # backend service-based network load balancers, target pool-based network load
8828
+ # balancers, internal proxy load balancers, external proxy load balancers,
8829
+ # Traffic Director, external protocol forwarding, and Classic VPN. Some products
8830
+ # have restrictions on what ports can be used. See port specifications for
8831
+ # details. Only packets addressed to ports in the specified range will be
8832
+ # forwarded to the backends configured with this forwarding rule. The ports,
8833
+ # port_range, and allPorts fields are mutually exclusive. For external
8834
+ # forwarding rules, two or more forwarding rules cannot use the same [IPAddress,
8835
+ # IPProtocol] pair, and cannot have overlapping portRanges. For internal
8836
+ # forwarding rules within the same VPC network, two or more forwarding rules
8837
+ # cannot use the same [IPAddress, IPProtocol] pair, and cannot have overlapping
8838
+ # portRanges. @pattern: \\d+(?:-\\d+)?
8828
8839
  # Corresponds to the JSON property `portRange`
8829
8840
  # @return [String]
8830
8841
  attr_accessor :port_range
8831
8842
 
8832
- # The ports field is only supported when the forwarding rule references a
8833
- # backend_service directly. Only packets addressed to the [specified list of
8834
- # ports]((https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts#
8835
- # port_specifications)) are forwarded to backends. You can only use one of ports
8836
- # and port_range, or allPorts. The three are mutually exclusive. You can specify
8837
- # a list of up to five ports, which can be non-contiguous. Forwarding rules with
8838
- # the same [IPAddress, IPProtocol] pair must have disjoint ports. @pattern: \\d+(
8839
- # ?:-\\d+)?
8843
+ # This field can only be used: - If IPProtocol is one of TCP, UDP, or SCTP. - By
8844
+ # internal TCP/UDP load balancers, backend service-based network load balancers,
8845
+ # and internal protocol forwarding. You can specify a list of up to five ports
8846
+ # by number, separated by commas. The ports can be contiguous or discontiguous.
8847
+ # Only packets addressed to these ports will be forwarded to the backends
8848
+ # configured with this forwarding rule. For external forwarding rules, two or
8849
+ # more forwarding rules cannot use the same [IPAddress, IPProtocol] pair, and
8850
+ # cannot share any values defined in ports. For internal forwarding rules within
8851
+ # the same VPC network, two or more forwarding rules cannot use the same [
8852
+ # IPAddress, IPProtocol] pair, and cannot share any values defined in ports. The
8853
+ # ports, port_range, and allPorts fields are mutually exclusive. @pattern: \\d+(?
8854
+ # :-\\d+)?
8840
8855
  # Corresponds to the JSON property `ports`
8841
8856
  # @return [Array<String>]
8842
8857
  attr_accessor :ports
@@ -10301,13 +10316,18 @@ module Google
10301
10316
  attr_accessor :fingerprint
10302
10317
 
10303
10318
  # A list of URLs to the HealthCheck resources. Must have at least one
10304
- # HealthCheck, and not more than 10. HealthCheck resources must have
10319
+ # HealthCheck, and not more than 10 for regional HealthCheckService, and not
10320
+ # more than 1 for global HealthCheckService. HealthCheck resources must have
10305
10321
  # portSpecification=USE_SERVING_PORT or portSpecification=USE_FIXED_PORT. For
10306
10322
  # regional HealthCheckService, the HealthCheck must be regional and in the same
10307
10323
  # region. For global HealthCheckService, HealthCheck must be global. Mix of
10308
10324
  # regional and global HealthChecks is not supported. Multiple regional
10309
10325
  # HealthChecks must belong to the same region. Regional HealthChecks must belong
10310
- # to the same region as zones of NEGs.
10326
+ # to the same region as zones of NetworkEndpointGroups. For global
10327
+ # HealthCheckService using global INTERNET_IP_PORT NetworkEndpointGroups, the
10328
+ # global HealthChecks must specify sourceRegions, and HealthChecks that specify
10329
+ # sourceRegions can only be used with global INTERNET_IP_PORT
10330
+ # NetworkEndpointGroups.
10311
10331
  # Corresponds to the JSON property `healthChecks`
10312
10332
  # @return [Array<String>]
10313
10333
  attr_accessor :health_checks
@@ -10317,7 +10337,8 @@ module Google
10317
10337
  # NO_AGGREGATION. An EndpointHealth message is returned for each pair in the
10318
10338
  # health check service. - AND. If any health check of an endpoint reports
10319
10339
  # UNHEALTHY, then UNHEALTHY is the HealthState of the endpoint. If all health
10320
- # checks report HEALTHY, the HealthState of the endpoint is HEALTHY. .
10340
+ # checks report HEALTHY, the HealthState of the endpoint is HEALTHY. . This is
10341
+ # only allowed with regional HealthCheckService.
10321
10342
  # Corresponds to the JSON property `healthStatusAggregationPolicy`
10322
10343
  # @return [String]
10323
10344
  attr_accessor :health_status_aggregation_policy
@@ -10346,7 +10367,8 @@ module Google
10346
10367
 
10347
10368
  # A list of URLs to the NetworkEndpointGroup resources. Must not have more than
10348
10369
  # 100. For regional HealthCheckService, NEGs must be in zones in the region of
10349
- # the HealthCheckService.
10370
+ # the HealthCheckService. For global HealthCheckServices, the
10371
+ # NetworkEndpointGroups must be global INTERNET_IP_PORT.
10350
10372
  # Corresponds to the JSON property `networkEndpointGroups`
10351
10373
  # @return [Array<String>]
10352
10374
  attr_accessor :network_endpoint_groups
@@ -17214,6 +17236,16 @@ module Google
17214
17236
  # @return [Array<Google::Apis::ComputeV1::InterconnectDiagnosticsArpEntry>]
17215
17237
  attr_accessor :arp_caches
17216
17238
 
17239
+ # The aggregation type of the bundle interface.
17240
+ # Corresponds to the JSON property `bundleAggregationType`
17241
+ # @return [String]
17242
+ attr_accessor :bundle_aggregation_type
17243
+
17244
+ # The operational status of the bundle interface.
17245
+ # Corresponds to the JSON property `bundleOperationalStatus`
17246
+ # @return [String]
17247
+ attr_accessor :bundle_operational_status
17248
+
17217
17249
  # A list of InterconnectDiagnostics.LinkStatus objects, describing the status
17218
17250
  # for each link on the Interconnect.
17219
17251
  # Corresponds to the JSON property `links`
@@ -17232,6 +17264,8 @@ module Google
17232
17264
  # Update properties of this object
17233
17265
  def update!(**args)
17234
17266
  @arp_caches = args[:arp_caches] if args.key?(:arp_caches)
17267
+ @bundle_aggregation_type = args[:bundle_aggregation_type] if args.key?(:bundle_aggregation_type)
17268
+ @bundle_operational_status = args[:bundle_operational_status] if args.key?(:bundle_operational_status)
17235
17269
  @links = args[:links] if args.key?(:links)
17236
17270
  @mac_address = args[:mac_address] if args.key?(:mac_address)
17237
17271
  end
@@ -17355,6 +17389,11 @@ module Google
17355
17389
  # @return [Google::Apis::ComputeV1::InterconnectDiagnosticsLinkLacpStatus]
17356
17390
  attr_accessor :lacp_status
17357
17391
 
17392
+ # The operational status of the link.
17393
+ # Corresponds to the JSON property `operationalStatus`
17394
+ # @return [String]
17395
+ attr_accessor :operational_status
17396
+
17358
17397
  # An InterconnectDiagnostics.LinkOpticalPower object, describing the current
17359
17398
  # value and status of the received light level.
17360
17399
  # Corresponds to the JSON property `receivingOpticalPower`
@@ -17377,6 +17416,7 @@ module Google
17377
17416
  @circuit_id = args[:circuit_id] if args.key?(:circuit_id)
17378
17417
  @google_demarc = args[:google_demarc] if args.key?(:google_demarc)
17379
17418
  @lacp_status = args[:lacp_status] if args.key?(:lacp_status)
17419
+ @operational_status = args[:operational_status] if args.key?(:operational_status)
17380
17420
  @receiving_optical_power = args[:receiving_optical_power] if args.key?(:receiving_optical_power)
17381
17421
  @transmitting_optical_power = args[:transmitting_optical_power] if args.key?(:transmitting_optical_power)
17382
17422
  end
@@ -19840,6 +19880,496 @@ module Google
19840
19880
  end
19841
19881
  end
19842
19882
 
19883
+ # NetworkAttachments A network attachment resource ...
19884
+ class NetworkAttachment
19885
+ include Google::Apis::Core::Hashable
19886
+
19887
+ # [Output Only] An array of connections for all the producers connected to this
19888
+ # network attachment.
19889
+ # Corresponds to the JSON property `connectionEndpoints`
19890
+ # @return [Array<Google::Apis::ComputeV1::NetworkAttachmentConnectedEndpoint>]
19891
+ attr_accessor :connection_endpoints
19892
+
19893
+ #
19894
+ # Corresponds to the JSON property `connectionPreference`
19895
+ # @return [String]
19896
+ attr_accessor :connection_preference
19897
+
19898
+ # [Output Only] Creation timestamp in RFC3339 text format.
19899
+ # Corresponds to the JSON property `creationTimestamp`
19900
+ # @return [String]
19901
+ attr_accessor :creation_timestamp
19902
+
19903
+ # An optional description of this resource. Provide this property when you
19904
+ # create the resource.
19905
+ # Corresponds to the JSON property `description`
19906
+ # @return [String]
19907
+ attr_accessor :description
19908
+
19909
+ # [Output Only] Fingerprint of this resource. A hash of the contents stored in
19910
+ # this object. This field is used in optimistic locking. An up-to-date
19911
+ # fingerprint must be provided in order to patch.
19912
+ # Corresponds to the JSON property `fingerprint`
19913
+ # NOTE: Values are automatically base64 encoded/decoded in the client library.
19914
+ # @return [String]
19915
+ attr_accessor :fingerprint
19916
+
19917
+ # [Output Only] The unique identifier for the resource type. The server
19918
+ # generates this identifier.
19919
+ # Corresponds to the JSON property `id`
19920
+ # @return [Fixnum]
19921
+ attr_accessor :id
19922
+
19923
+ # [Output Only] Type of the resource.
19924
+ # Corresponds to the JSON property `kind`
19925
+ # @return [String]
19926
+ attr_accessor :kind
19927
+
19928
+ # Name of the resource. Provided by the client when the resource is created. The
19929
+ # name must be 1-63 characters long, and comply with RFC1035. Specifically, the
19930
+ # name must be 1-63 characters long and match the regular expression `[a-z]([-a-
19931
+ # z0-9]*[a-z0-9])?` which means the first character must be a lowercase letter,
19932
+ # and all following characters must be a dash, lowercase letter, or digit,
19933
+ # except the last character, which cannot be a dash.
19934
+ # Corresponds to the JSON property `name`
19935
+ # @return [String]
19936
+ attr_accessor :name
19937
+
19938
+ # [Output Only] The URL of the network which the Network Attachment belongs to.
19939
+ # Corresponds to the JSON property `network`
19940
+ # @return [String]
19941
+ attr_accessor :network
19942
+
19943
+ # Projects that are allowed to connect to this network attachment. The project
19944
+ # can be specified using its id or number.
19945
+ # Corresponds to the JSON property `producerAcceptLists`
19946
+ # @return [Array<String>]
19947
+ attr_accessor :producer_accept_lists
19948
+
19949
+ # Projects that are not allowed to connect to this network attachment. The
19950
+ # project can be specified using its id or number.
19951
+ # Corresponds to the JSON property `producerRejectLists`
19952
+ # @return [Array<String>]
19953
+ attr_accessor :producer_reject_lists
19954
+
19955
+ # [Output Only] URL of the region where the network attachment resides. This
19956
+ # field applies only to the region resource. You must specify this field as part
19957
+ # of the HTTP request URL. It is not settable as a field in the request body.
19958
+ # Corresponds to the JSON property `region`
19959
+ # @return [String]
19960
+ attr_accessor :region
19961
+
19962
+ # [Output Only] Server-defined URL for the resource.
19963
+ # Corresponds to the JSON property `selfLink`
19964
+ # @return [String]
19965
+ attr_accessor :self_link
19966
+
19967
+ # [Output Only] Server-defined URL for this resource's resource id.
19968
+ # Corresponds to the JSON property `selfLinkWithId`
19969
+ # @return [String]
19970
+ attr_accessor :self_link_with_id
19971
+
19972
+ # An array of URLs where each entry is the URL of a subnet provided by the
19973
+ # service consumer to use for endpoints in the producers that connect to this
19974
+ # network attachment.
19975
+ # Corresponds to the JSON property `subnetworks`
19976
+ # @return [Array<String>]
19977
+ attr_accessor :subnetworks
19978
+
19979
+ def initialize(**args)
19980
+ update!(**args)
19981
+ end
19982
+
19983
+ # Update properties of this object
19984
+ def update!(**args)
19985
+ @connection_endpoints = args[:connection_endpoints] if args.key?(:connection_endpoints)
19986
+ @connection_preference = args[:connection_preference] if args.key?(:connection_preference)
19987
+ @creation_timestamp = args[:creation_timestamp] if args.key?(:creation_timestamp)
19988
+ @description = args[:description] if args.key?(:description)
19989
+ @fingerprint = args[:fingerprint] if args.key?(:fingerprint)
19990
+ @id = args[:id] if args.key?(:id)
19991
+ @kind = args[:kind] if args.key?(:kind)
19992
+ @name = args[:name] if args.key?(:name)
19993
+ @network = args[:network] if args.key?(:network)
19994
+ @producer_accept_lists = args[:producer_accept_lists] if args.key?(:producer_accept_lists)
19995
+ @producer_reject_lists = args[:producer_reject_lists] if args.key?(:producer_reject_lists)
19996
+ @region = args[:region] if args.key?(:region)
19997
+ @self_link = args[:self_link] if args.key?(:self_link)
19998
+ @self_link_with_id = args[:self_link_with_id] if args.key?(:self_link_with_id)
19999
+ @subnetworks = args[:subnetworks] if args.key?(:subnetworks)
20000
+ end
20001
+ end
20002
+
20003
+ # Contains a list of NetworkAttachmentsScopedList.
20004
+ class NetworkAttachmentAggregatedList
20005
+ include Google::Apis::Core::Hashable
20006
+
20007
+ # [Output Only] Unique identifier for the resource; defined by the server.
20008
+ # Corresponds to the JSON property `id`
20009
+ # @return [String]
20010
+ attr_accessor :id
20011
+
20012
+ # A list of NetworkAttachmentsScopedList resources.
20013
+ # Corresponds to the JSON property `items`
20014
+ # @return [Hash<String,Google::Apis::ComputeV1::NetworkAttachmentsScopedList>]
20015
+ attr_accessor :items
20016
+
20017
+ #
20018
+ # Corresponds to the JSON property `kind`
20019
+ # @return [String]
20020
+ attr_accessor :kind
20021
+
20022
+ # [Output Only] This token allows you to get the next page of results for list
20023
+ # requests. If the number of results is larger than maxResults, use the
20024
+ # nextPageToken as a value for the query parameter pageToken in the next list
20025
+ # request. Subsequent list requests will have their own nextPageToken to
20026
+ # continue paging through the results.
20027
+ # Corresponds to the JSON property `nextPageToken`
20028
+ # @return [String]
20029
+ attr_accessor :next_page_token
20030
+
20031
+ # [Output Only] Server-defined URL for this resource.
20032
+ # Corresponds to the JSON property `selfLink`
20033
+ # @return [String]
20034
+ attr_accessor :self_link
20035
+
20036
+ # [Output Only] Informational warning message.
20037
+ # Corresponds to the JSON property `warning`
20038
+ # @return [Google::Apis::ComputeV1::NetworkAttachmentAggregatedList::Warning]
20039
+ attr_accessor :warning
20040
+
20041
+ def initialize(**args)
20042
+ update!(**args)
20043
+ end
20044
+
20045
+ # Update properties of this object
20046
+ def update!(**args)
20047
+ @id = args[:id] if args.key?(:id)
20048
+ @items = args[:items] if args.key?(:items)
20049
+ @kind = args[:kind] if args.key?(:kind)
20050
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
20051
+ @self_link = args[:self_link] if args.key?(:self_link)
20052
+ @warning = args[:warning] if args.key?(:warning)
20053
+ end
20054
+
20055
+ # [Output Only] Informational warning message.
20056
+ class Warning
20057
+ include Google::Apis::Core::Hashable
20058
+
20059
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
20060
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
20061
+ # Corresponds to the JSON property `code`
20062
+ # @return [String]
20063
+ attr_accessor :code
20064
+
20065
+ # [Output Only] Metadata about this warning in key: value format. For example: "
20066
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
20067
+ # Corresponds to the JSON property `data`
20068
+ # @return [Array<Google::Apis::ComputeV1::NetworkAttachmentAggregatedList::Warning::Datum>]
20069
+ attr_accessor :data
20070
+
20071
+ # [Output Only] A human-readable description of the warning code.
20072
+ # Corresponds to the JSON property `message`
20073
+ # @return [String]
20074
+ attr_accessor :message
20075
+
20076
+ def initialize(**args)
20077
+ update!(**args)
20078
+ end
20079
+
20080
+ # Update properties of this object
20081
+ def update!(**args)
20082
+ @code = args[:code] if args.key?(:code)
20083
+ @data = args[:data] if args.key?(:data)
20084
+ @message = args[:message] if args.key?(:message)
20085
+ end
20086
+
20087
+ #
20088
+ class Datum
20089
+ include Google::Apis::Core::Hashable
20090
+
20091
+ # [Output Only] A key that provides more detail on the warning being returned.
20092
+ # For example, for warnings where there are no results in a list request for a
20093
+ # particular zone, this key might be scope and the key value might be the zone
20094
+ # name. Other examples might be a key indicating a deprecated resource and a
20095
+ # suggested replacement, or a warning about invalid network settings (for
20096
+ # example, if an instance attempts to perform IP forwarding but is not enabled
20097
+ # for IP forwarding).
20098
+ # Corresponds to the JSON property `key`
20099
+ # @return [String]
20100
+ attr_accessor :key
20101
+
20102
+ # [Output Only] A warning data value corresponding to the key.
20103
+ # Corresponds to the JSON property `value`
20104
+ # @return [String]
20105
+ attr_accessor :value
20106
+
20107
+ def initialize(**args)
20108
+ update!(**args)
20109
+ end
20110
+
20111
+ # Update properties of this object
20112
+ def update!(**args)
20113
+ @key = args[:key] if args.key?(:key)
20114
+ @value = args[:value] if args.key?(:value)
20115
+ end
20116
+ end
20117
+ end
20118
+ end
20119
+
20120
+ # [Output Only] A connection connected to this network attachment.
20121
+ class NetworkAttachmentConnectedEndpoint
20122
+ include Google::Apis::Core::Hashable
20123
+
20124
+ # The IP address assigned to the producer instance network interface. This value
20125
+ # will be a range in case of Serverless.
20126
+ # Corresponds to the JSON property `ipAddress`
20127
+ # @return [String]
20128
+ attr_accessor :ip_address
20129
+
20130
+ # The project id or number of the interface to which the IP was assigned.
20131
+ # Corresponds to the JSON property `projectIdOrNum`
20132
+ # @return [String]
20133
+ attr_accessor :project_id_or_num
20134
+
20135
+ # Alias IP ranges from the same subnetwork
20136
+ # Corresponds to the JSON property `secondaryIpCidrRanges`
20137
+ # @return [Array<String>]
20138
+ attr_accessor :secondary_ip_cidr_ranges
20139
+
20140
+ # The status of a connected endpoint to this network attachment.
20141
+ # Corresponds to the JSON property `status`
20142
+ # @return [String]
20143
+ attr_accessor :status
20144
+
20145
+ # The subnetwork used to assign the IP to the producer instance network
20146
+ # interface.
20147
+ # Corresponds to the JSON property `subnetwork`
20148
+ # @return [String]
20149
+ attr_accessor :subnetwork
20150
+
20151
+ def initialize(**args)
20152
+ update!(**args)
20153
+ end
20154
+
20155
+ # Update properties of this object
20156
+ def update!(**args)
20157
+ @ip_address = args[:ip_address] if args.key?(:ip_address)
20158
+ @project_id_or_num = args[:project_id_or_num] if args.key?(:project_id_or_num)
20159
+ @secondary_ip_cidr_ranges = args[:secondary_ip_cidr_ranges] if args.key?(:secondary_ip_cidr_ranges)
20160
+ @status = args[:status] if args.key?(:status)
20161
+ @subnetwork = args[:subnetwork] if args.key?(:subnetwork)
20162
+ end
20163
+ end
20164
+
20165
+ #
20166
+ class NetworkAttachmentList
20167
+ include Google::Apis::Core::Hashable
20168
+
20169
+ # [Output Only] Unique identifier for the resource; defined by the server.
20170
+ # Corresponds to the JSON property `id`
20171
+ # @return [String]
20172
+ attr_accessor :id
20173
+
20174
+ # A list of NetworkAttachment resources.
20175
+ # Corresponds to the JSON property `items`
20176
+ # @return [Array<Google::Apis::ComputeV1::NetworkAttachment>]
20177
+ attr_accessor :items
20178
+
20179
+ #
20180
+ # Corresponds to the JSON property `kind`
20181
+ # @return [String]
20182
+ attr_accessor :kind
20183
+
20184
+ # [Output Only] This token allows you to get the next page of results for list
20185
+ # requests. If the number of results is larger than maxResults, use the
20186
+ # nextPageToken as a value for the query parameter pageToken in the next list
20187
+ # request. Subsequent list requests will have their own nextPageToken to
20188
+ # continue paging through the results.
20189
+ # Corresponds to the JSON property `nextPageToken`
20190
+ # @return [String]
20191
+ attr_accessor :next_page_token
20192
+
20193
+ # [Output Only] Server-defined URL for this resource.
20194
+ # Corresponds to the JSON property `selfLink`
20195
+ # @return [String]
20196
+ attr_accessor :self_link
20197
+
20198
+ # [Output Only] Informational warning message.
20199
+ # Corresponds to the JSON property `warning`
20200
+ # @return [Google::Apis::ComputeV1::NetworkAttachmentList::Warning]
20201
+ attr_accessor :warning
20202
+
20203
+ def initialize(**args)
20204
+ update!(**args)
20205
+ end
20206
+
20207
+ # Update properties of this object
20208
+ def update!(**args)
20209
+ @id = args[:id] if args.key?(:id)
20210
+ @items = args[:items] if args.key?(:items)
20211
+ @kind = args[:kind] if args.key?(:kind)
20212
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
20213
+ @self_link = args[:self_link] if args.key?(:self_link)
20214
+ @warning = args[:warning] if args.key?(:warning)
20215
+ end
20216
+
20217
+ # [Output Only] Informational warning message.
20218
+ class Warning
20219
+ include Google::Apis::Core::Hashable
20220
+
20221
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
20222
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
20223
+ # Corresponds to the JSON property `code`
20224
+ # @return [String]
20225
+ attr_accessor :code
20226
+
20227
+ # [Output Only] Metadata about this warning in key: value format. For example: "
20228
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
20229
+ # Corresponds to the JSON property `data`
20230
+ # @return [Array<Google::Apis::ComputeV1::NetworkAttachmentList::Warning::Datum>]
20231
+ attr_accessor :data
20232
+
20233
+ # [Output Only] A human-readable description of the warning code.
20234
+ # Corresponds to the JSON property `message`
20235
+ # @return [String]
20236
+ attr_accessor :message
20237
+
20238
+ def initialize(**args)
20239
+ update!(**args)
20240
+ end
20241
+
20242
+ # Update properties of this object
20243
+ def update!(**args)
20244
+ @code = args[:code] if args.key?(:code)
20245
+ @data = args[:data] if args.key?(:data)
20246
+ @message = args[:message] if args.key?(:message)
20247
+ end
20248
+
20249
+ #
20250
+ class Datum
20251
+ include Google::Apis::Core::Hashable
20252
+
20253
+ # [Output Only] A key that provides more detail on the warning being returned.
20254
+ # For example, for warnings where there are no results in a list request for a
20255
+ # particular zone, this key might be scope and the key value might be the zone
20256
+ # name. Other examples might be a key indicating a deprecated resource and a
20257
+ # suggested replacement, or a warning about invalid network settings (for
20258
+ # example, if an instance attempts to perform IP forwarding but is not enabled
20259
+ # for IP forwarding).
20260
+ # Corresponds to the JSON property `key`
20261
+ # @return [String]
20262
+ attr_accessor :key
20263
+
20264
+ # [Output Only] A warning data value corresponding to the key.
20265
+ # Corresponds to the JSON property `value`
20266
+ # @return [String]
20267
+ attr_accessor :value
20268
+
20269
+ def initialize(**args)
20270
+ update!(**args)
20271
+ end
20272
+
20273
+ # Update properties of this object
20274
+ def update!(**args)
20275
+ @key = args[:key] if args.key?(:key)
20276
+ @value = args[:value] if args.key?(:value)
20277
+ end
20278
+ end
20279
+ end
20280
+ end
20281
+
20282
+ #
20283
+ class NetworkAttachmentsScopedList
20284
+ include Google::Apis::Core::Hashable
20285
+
20286
+ # A list of NetworkAttachments contained in this scope.
20287
+ # Corresponds to the JSON property `networkAttachments`
20288
+ # @return [Array<Google::Apis::ComputeV1::NetworkAttachment>]
20289
+ attr_accessor :network_attachments
20290
+
20291
+ # Informational warning which replaces the list of network attachments when the
20292
+ # list is empty.
20293
+ # Corresponds to the JSON property `warning`
20294
+ # @return [Google::Apis::ComputeV1::NetworkAttachmentsScopedList::Warning]
20295
+ attr_accessor :warning
20296
+
20297
+ def initialize(**args)
20298
+ update!(**args)
20299
+ end
20300
+
20301
+ # Update properties of this object
20302
+ def update!(**args)
20303
+ @network_attachments = args[:network_attachments] if args.key?(:network_attachments)
20304
+ @warning = args[:warning] if args.key?(:warning)
20305
+ end
20306
+
20307
+ # Informational warning which replaces the list of network attachments when the
20308
+ # list is empty.
20309
+ class Warning
20310
+ include Google::Apis::Core::Hashable
20311
+
20312
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
20313
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
20314
+ # Corresponds to the JSON property `code`
20315
+ # @return [String]
20316
+ attr_accessor :code
20317
+
20318
+ # [Output Only] Metadata about this warning in key: value format. For example: "
20319
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
20320
+ # Corresponds to the JSON property `data`
20321
+ # @return [Array<Google::Apis::ComputeV1::NetworkAttachmentsScopedList::Warning::Datum>]
20322
+ attr_accessor :data
20323
+
20324
+ # [Output Only] A human-readable description of the warning code.
20325
+ # Corresponds to the JSON property `message`
20326
+ # @return [String]
20327
+ attr_accessor :message
20328
+
20329
+ def initialize(**args)
20330
+ update!(**args)
20331
+ end
20332
+
20333
+ # Update properties of this object
20334
+ def update!(**args)
20335
+ @code = args[:code] if args.key?(:code)
20336
+ @data = args[:data] if args.key?(:data)
20337
+ @message = args[:message] if args.key?(:message)
20338
+ end
20339
+
20340
+ #
20341
+ class Datum
20342
+ include Google::Apis::Core::Hashable
20343
+
20344
+ # [Output Only] A key that provides more detail on the warning being returned.
20345
+ # For example, for warnings where there are no results in a list request for a
20346
+ # particular zone, this key might be scope and the key value might be the zone
20347
+ # name. Other examples might be a key indicating a deprecated resource and a
20348
+ # suggested replacement, or a warning about invalid network settings (for
20349
+ # example, if an instance attempts to perform IP forwarding but is not enabled
20350
+ # for IP forwarding).
20351
+ # Corresponds to the JSON property `key`
20352
+ # @return [String]
20353
+ attr_accessor :key
20354
+
20355
+ # [Output Only] A warning data value corresponding to the key.
20356
+ # Corresponds to the JSON property `value`
20357
+ # @return [String]
20358
+ attr_accessor :value
20359
+
20360
+ def initialize(**args)
20361
+ update!(**args)
20362
+ end
20363
+
20364
+ # Update properties of this object
20365
+ def update!(**args)
20366
+ @key = args[:key] if args.key?(:key)
20367
+ @value = args[:value] if args.key?(:value)
20368
+ end
20369
+ end
20370
+ end
20371
+ end
20372
+
19843
20373
  # Represents a Google Cloud Armor network edge security service resource.
19844
20374
  class NetworkEdgeSecurityService
19845
20375
  include Google::Apis::Core::Hashable
@@ -25515,6 +26045,11 @@ module Google
25515
26045
  # @return [Google::Apis::ComputeV1::UsageExportLocation]
25516
26046
  attr_accessor :usage_export_location
25517
26047
 
26048
+ # [Output Only] Default internal DNS setting used by VMs running in this project.
26049
+ # Corresponds to the JSON property `vmDnsSetting`
26050
+ # @return [String]
26051
+ attr_accessor :vm_dns_setting
26052
+
25518
26053
  # [Output Only] The role this project has in a shared VPC configuration.
25519
26054
  # Currently, only projects with the host role, which is specified by the value
25520
26055
  # HOST, are differentiated.
@@ -25540,6 +26075,7 @@ module Google
25540
26075
  @quotas = args[:quotas] if args.key?(:quotas)
25541
26076
  @self_link = args[:self_link] if args.key?(:self_link)
25542
26077
  @usage_export_location = args[:usage_export_location] if args.key?(:usage_export_location)
26078
+ @vm_dns_setting = args[:vm_dns_setting] if args.key?(:vm_dns_setting)
25543
26079
  @xpn_project_status = args[:xpn_project_status] if args.key?(:xpn_project_status)
25544
26080
  end
25545
26081
  end
@@ -28153,6 +28689,13 @@ module Google
28153
28689
  # @return [String]
28154
28690
  attr_accessor :name
28155
28691
 
28692
+ # Resource policies to be added to this reservation. The key is defined by user,
28693
+ # and the value is resource policy url. This is to define placement policy with
28694
+ # reservation.
28695
+ # Corresponds to the JSON property `resourcePolicies`
28696
+ # @return [Hash<String,String>]
28697
+ attr_accessor :resource_policies
28698
+
28156
28699
  # [Output Only] Reserved for future use.
28157
28700
  # Corresponds to the JSON property `satisfiesPzs`
28158
28701
  # @return [Boolean]
@@ -28206,6 +28749,7 @@ module Google
28206
28749
  @id = args[:id] if args.key?(:id)
28207
28750
  @kind = args[:kind] if args.key?(:kind)
28208
28751
  @name = args[:name] if args.key?(:name)
28752
+ @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
28209
28753
  @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
28210
28754
  @self_link = args[:self_link] if args.key?(:self_link)
28211
28755
  @share_settings = args[:share_settings] if args.key?(:share_settings)
@@ -28626,8 +29170,8 @@ module Google
28626
29170
  # @return [Fixnum]
28627
29171
  attr_accessor :amount
28628
29172
 
28629
- # Type of resource for which this commitment applies. Possible values are VCPU
28630
- # and MEMORY
29173
+ # Type of resource for which this commitment applies. Possible values are VCPU,
29174
+ # MEMORY, LOCAL_SSD, and ACCELERATOR.
28631
29175
  # Corresponds to the JSON property `type`
28632
29176
  # @return [String]
28633
29177
  attr_accessor :type
@@ -32754,23 +33298,23 @@ module Google
32754
33298
 
32755
33299
  # Determines the key to enforce the rate_limit_threshold on. Possible values are:
32756
33300
  # - ALL: A single rate limit threshold is applied to all the requests matching
32757
- # this rule. This is the default value if this field 'enforce_on_key' is not
32758
- # configured. - IP: The source IP address of the request is the key. Each IP has
32759
- # this limit enforced separately. - HTTP_HEADER: The value of the HTTP header
32760
- # whose name is configured under "enforce_on_key_name". The key value is
32761
- # truncated to the first 128 bytes of the header value. If no such header is
32762
- # present in the request, the key type defaults to ALL. - XFF_IP: The first IP
32763
- # address (i.e. the originating client IP address) specified in the list of IPs
32764
- # under X-Forwarded-For HTTP header. If no such header is present or the value
32765
- # is not a valid IP, the key defaults to the source IP address of the request i.
32766
- # e. key type IP. - HTTP_COOKIE: The value of the HTTP cookie whose name is
32767
- # configured under "enforce_on_key_name". The key value is truncated to the
32768
- # first 128 bytes of the cookie value. If no such cookie is present in the
32769
- # request, the key type defaults to ALL. - HTTP_PATH: The URL path of the HTTP
32770
- # request. The key value is truncated to the first 128 bytes. - SNI: Server name
32771
- # indication in the TLS session of the HTTPS request. The key value is truncated
32772
- # to the first 128 bytes. The key type defaults to ALL on a HTTP session. -
32773
- # REGION_CODE: The country/region from which the request originates.
33301
+ # this rule. This is the default value if "enforceOnKey" is not configured. - IP:
33302
+ # The source IP address of the request is the key. Each IP has this limit
33303
+ # enforced separately. - HTTP_HEADER: The value of the HTTP header whose name is
33304
+ # configured under "enforceOnKeyName". The key value is truncated to the first
33305
+ # 128 bytes of the header value. If no such header is present in the request,
33306
+ # the key type defaults to ALL. - XFF_IP: The first IP address (i.e. the
33307
+ # originating client IP address) specified in the list of IPs under X-Forwarded-
33308
+ # For HTTP header. If no such header is present or the value is not a valid IP,
33309
+ # the key defaults to the source IP address of the request i.e. key type IP. -
33310
+ # HTTP_COOKIE: The value of the HTTP cookie whose name is configured under "
33311
+ # enforceOnKeyName". The key value is truncated to the first 128 bytes of the
33312
+ # cookie value. If no such cookie is present in the request, the key type
33313
+ # defaults to ALL. - HTTP_PATH: The URL path of the HTTP request. The key value
33314
+ # is truncated to the first 128 bytes. - SNI: Server name indication in the TLS
33315
+ # session of the HTTPS request. The key value is truncated to the first 128
33316
+ # bytes. The key type defaults to ALL on a HTTP session. - REGION_CODE: The
33317
+ # country/region from which the request originates.
32774
33318
  # Corresponds to the JSON property `enforceOnKey`
32775
33319
  # @return [String]
32776
33320
  attr_accessor :enforce_on_key
@@ -33320,6 +33864,11 @@ module Google
33320
33864
  # @return [Fixnum]
33321
33865
  attr_accessor :connection_limit
33322
33866
 
33867
+ # The network URL for the network to set the limit for.
33868
+ # Corresponds to the JSON property `networkUrl`
33869
+ # @return [String]
33870
+ attr_accessor :network_url
33871
+
33323
33872
  # The project id or number for the project to set the limit for.
33324
33873
  # Corresponds to the JSON property `projectIdOrNum`
33325
33874
  # @return [String]
@@ -33332,6 +33881,7 @@ module Google
33332
33881
  # Update properties of this object
33333
33882
  def update!(**args)
33334
33883
  @connection_limit = args[:connection_limit] if args.key?(:connection_limit)
33884
+ @network_url = args[:network_url] if args.key?(:network_url)
33335
33885
  @project_id_or_num = args[:project_id_or_num] if args.key?(:project_id_or_num)
33336
33886
  end
33337
33887
  end
@@ -35420,8 +35970,7 @@ module Google
35420
35970
  attr_accessor :enable_flow_logs
35421
35971
  alias_method :enable_flow_logs?, :enable_flow_logs
35422
35972
 
35423
- # [Output Only] The external IPv6 address range that is assigned to this
35424
- # subnetwork.
35973
+ # The external IPv6 address range that is owned by this subnetwork.
35425
35974
  # Corresponds to the JSON property `externalIpv6Prefix`
35426
35975
  # @return [String]
35427
35976
  attr_accessor :external_ipv6_prefix
@@ -38654,6 +39203,97 @@ module Google
38654
39203
  end
38655
39204
  end
38656
39205
 
39206
+ #
39207
+ class TargetTcpProxiesScopedList
39208
+ include Google::Apis::Core::Hashable
39209
+
39210
+ # A list of TargetTcpProxies contained in this scope.
39211
+ # Corresponds to the JSON property `targetTcpProxies`
39212
+ # @return [Array<Google::Apis::ComputeV1::TargetTcpProxy>]
39213
+ attr_accessor :target_tcp_proxies
39214
+
39215
+ # Informational warning which replaces the list of backend services when the
39216
+ # list is empty.
39217
+ # Corresponds to the JSON property `warning`
39218
+ # @return [Google::Apis::ComputeV1::TargetTcpProxiesScopedList::Warning]
39219
+ attr_accessor :warning
39220
+
39221
+ def initialize(**args)
39222
+ update!(**args)
39223
+ end
39224
+
39225
+ # Update properties of this object
39226
+ def update!(**args)
39227
+ @target_tcp_proxies = args[:target_tcp_proxies] if args.key?(:target_tcp_proxies)
39228
+ @warning = args[:warning] if args.key?(:warning)
39229
+ end
39230
+
39231
+ # Informational warning which replaces the list of backend services when the
39232
+ # list is empty.
39233
+ class Warning
39234
+ include Google::Apis::Core::Hashable
39235
+
39236
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
39237
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
39238
+ # Corresponds to the JSON property `code`
39239
+ # @return [String]
39240
+ attr_accessor :code
39241
+
39242
+ # [Output Only] Metadata about this warning in key: value format. For example: "
39243
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
39244
+ # Corresponds to the JSON property `data`
39245
+ # @return [Array<Google::Apis::ComputeV1::TargetTcpProxiesScopedList::Warning::Datum>]
39246
+ attr_accessor :data
39247
+
39248
+ # [Output Only] A human-readable description of the warning code.
39249
+ # Corresponds to the JSON property `message`
39250
+ # @return [String]
39251
+ attr_accessor :message
39252
+
39253
+ def initialize(**args)
39254
+ update!(**args)
39255
+ end
39256
+
39257
+ # Update properties of this object
39258
+ def update!(**args)
39259
+ @code = args[:code] if args.key?(:code)
39260
+ @data = args[:data] if args.key?(:data)
39261
+ @message = args[:message] if args.key?(:message)
39262
+ end
39263
+
39264
+ #
39265
+ class Datum
39266
+ include Google::Apis::Core::Hashable
39267
+
39268
+ # [Output Only] A key that provides more detail on the warning being returned.
39269
+ # For example, for warnings where there are no results in a list request for a
39270
+ # particular zone, this key might be scope and the key value might be the zone
39271
+ # name. Other examples might be a key indicating a deprecated resource and a
39272
+ # suggested replacement, or a warning about invalid network settings (for
39273
+ # example, if an instance attempts to perform IP forwarding but is not enabled
39274
+ # for IP forwarding).
39275
+ # Corresponds to the JSON property `key`
39276
+ # @return [String]
39277
+ attr_accessor :key
39278
+
39279
+ # [Output Only] A warning data value corresponding to the key.
39280
+ # Corresponds to the JSON property `value`
39281
+ # @return [String]
39282
+ attr_accessor :value
39283
+
39284
+ def initialize(**args)
39285
+ update!(**args)
39286
+ end
39287
+
39288
+ # Update properties of this object
39289
+ def update!(**args)
39290
+ @key = args[:key] if args.key?(:key)
39291
+ @value = args[:value] if args.key?(:value)
39292
+ end
39293
+ end
39294
+ end
39295
+ end
39296
+
38657
39297
  #
38658
39298
  class TargetTcpProxiesSetBackendServiceRequest
38659
39299
  include Google::Apis::Core::Hashable
@@ -38787,6 +39427,130 @@ module Google
38787
39427
  end
38788
39428
  end
38789
39429
 
39430
+ #
39431
+ class TargetTcpProxyAggregatedList
39432
+ include Google::Apis::Core::Hashable
39433
+
39434
+ # [Output Only] Unique identifier for the resource; defined by the server.
39435
+ # Corresponds to the JSON property `id`
39436
+ # @return [String]
39437
+ attr_accessor :id
39438
+
39439
+ # A list of TargetTcpProxiesScopedList resources.
39440
+ # Corresponds to the JSON property `items`
39441
+ # @return [Hash<String,Google::Apis::ComputeV1::TargetTcpProxiesScopedList>]
39442
+ attr_accessor :items
39443
+
39444
+ # [Output Only] Type of resource. Always compute#targetTcpProxyAggregatedList
39445
+ # for lists of Target TCP Proxies.
39446
+ # Corresponds to the JSON property `kind`
39447
+ # @return [String]
39448
+ attr_accessor :kind
39449
+
39450
+ # [Output Only] This token allows you to get the next page of results for list
39451
+ # requests. If the number of results is larger than maxResults, use the
39452
+ # nextPageToken as a value for the query parameter pageToken in the next list
39453
+ # request. Subsequent list requests will have their own nextPageToken to
39454
+ # continue paging through the results.
39455
+ # Corresponds to the JSON property `nextPageToken`
39456
+ # @return [String]
39457
+ attr_accessor :next_page_token
39458
+
39459
+ # [Output Only] Server-defined URL for this resource.
39460
+ # Corresponds to the JSON property `selfLink`
39461
+ # @return [String]
39462
+ attr_accessor :self_link
39463
+
39464
+ # [Output Only] Unreachable resources.
39465
+ # Corresponds to the JSON property `unreachables`
39466
+ # @return [Array<String>]
39467
+ attr_accessor :unreachables
39468
+
39469
+ # [Output Only] Informational warning message.
39470
+ # Corresponds to the JSON property `warning`
39471
+ # @return [Google::Apis::ComputeV1::TargetTcpProxyAggregatedList::Warning]
39472
+ attr_accessor :warning
39473
+
39474
+ def initialize(**args)
39475
+ update!(**args)
39476
+ end
39477
+
39478
+ # Update properties of this object
39479
+ def update!(**args)
39480
+ @id = args[:id] if args.key?(:id)
39481
+ @items = args[:items] if args.key?(:items)
39482
+ @kind = args[:kind] if args.key?(:kind)
39483
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
39484
+ @self_link = args[:self_link] if args.key?(:self_link)
39485
+ @unreachables = args[:unreachables] if args.key?(:unreachables)
39486
+ @warning = args[:warning] if args.key?(:warning)
39487
+ end
39488
+
39489
+ # [Output Only] Informational warning message.
39490
+ class Warning
39491
+ include Google::Apis::Core::Hashable
39492
+
39493
+ # [Output Only] A warning code, if applicable. For example, Compute Engine
39494
+ # returns NO_RESULTS_ON_PAGE if there are no results in the response.
39495
+ # Corresponds to the JSON property `code`
39496
+ # @return [String]
39497
+ attr_accessor :code
39498
+
39499
+ # [Output Only] Metadata about this warning in key: value format. For example: "
39500
+ # data": [ ` "key": "scope", "value": "zones/us-east1-d" `
39501
+ # Corresponds to the JSON property `data`
39502
+ # @return [Array<Google::Apis::ComputeV1::TargetTcpProxyAggregatedList::Warning::Datum>]
39503
+ attr_accessor :data
39504
+
39505
+ # [Output Only] A human-readable description of the warning code.
39506
+ # Corresponds to the JSON property `message`
39507
+ # @return [String]
39508
+ attr_accessor :message
39509
+
39510
+ def initialize(**args)
39511
+ update!(**args)
39512
+ end
39513
+
39514
+ # Update properties of this object
39515
+ def update!(**args)
39516
+ @code = args[:code] if args.key?(:code)
39517
+ @data = args[:data] if args.key?(:data)
39518
+ @message = args[:message] if args.key?(:message)
39519
+ end
39520
+
39521
+ #
39522
+ class Datum
39523
+ include Google::Apis::Core::Hashable
39524
+
39525
+ # [Output Only] A key that provides more detail on the warning being returned.
39526
+ # For example, for warnings where there are no results in a list request for a
39527
+ # particular zone, this key might be scope and the key value might be the zone
39528
+ # name. Other examples might be a key indicating a deprecated resource and a
39529
+ # suggested replacement, or a warning about invalid network settings (for
39530
+ # example, if an instance attempts to perform IP forwarding but is not enabled
39531
+ # for IP forwarding).
39532
+ # Corresponds to the JSON property `key`
39533
+ # @return [String]
39534
+ attr_accessor :key
39535
+
39536
+ # [Output Only] A warning data value corresponding to the key.
39537
+ # Corresponds to the JSON property `value`
39538
+ # @return [String]
39539
+ attr_accessor :value
39540
+
39541
+ def initialize(**args)
39542
+ update!(**args)
39543
+ end
39544
+
39545
+ # Update properties of this object
39546
+ def update!(**args)
39547
+ @key = args[:key] if args.key?(:key)
39548
+ @value = args[:value] if args.key?(:value)
39549
+ end
39550
+ end
39551
+ end
39552
+ end
39553
+
38790
39554
  # Contains a list of TargetTcpProxy resources.
38791
39555
  class TargetTcpProxyList
38792
39556
  include Google::Apis::Core::Hashable