google-apis-compute_v1 0.54.0 → 0.56.0

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