google-apis-compute_v1 0.55.0 → 0.56.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -2506,7 +2506,9 @@ module Google
2506
2506
  # group is completely drained, offering 0% of its available capacity. The valid
2507
2507
  # ranges are 0.0 and [0.1,1.0]. You cannot configure a setting larger than 0 and
2508
2508
  # smaller than 0.1. You cannot configure a setting of 0 when there is only one
2509
- # 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.
2510
2512
  # Corresponds to the JSON property `capacityScaler`
2511
2513
  # @return [Float]
2512
2514
  attr_accessor :capacity_scaler
@@ -7124,7 +7126,8 @@ module Google
7124
7126
 
7125
7127
  # The reason of the error. This is a constant value that identifies the
7126
7128
  # proximate cause of the error. Error reasons are unique within a particular
7127
- # 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.
7128
7131
  # Corresponds to the JSON property `reason`
7129
7132
  # @return [String]
7130
7133
  attr_accessor :reason
@@ -8122,8 +8125,8 @@ module Google
8122
8125
  attr_accessor :kind
8123
8126
 
8124
8127
  # Name of the resource. For Organization Firewall Policies it's a [Output Only]
8125
- # numeric ID allocated by GCP which uniquely identifies the Organization
8126
- # Firewall Policy.
8128
+ # numeric ID allocated by Google Cloud which uniquely identifies the
8129
+ # Organization Firewall Policy.
8127
8130
  # Corresponds to the JSON property `name`
8128
8131
  # @return [String]
8129
8132
  attr_accessor :name
@@ -8658,12 +8661,13 @@ module Google
8658
8661
  # @return [String]
8659
8662
  attr_accessor :ip_protocol
8660
8663
 
8661
- # This field is used along with the backend_service field for Internal TCP/UDP
8662
- # Load Balancing or Network Load Balancing, or with the target field for
8663
- # internal and external TargetInstance. You can only use one of ports and
8664
- # port_range, or allPorts. The three are mutually exclusive. For TCP, UDP and
8665
- # SCTP traffic, packets addressed to any ports will be forwarded to the target
8666
- # 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.
8667
8671
  # Corresponds to the JSON property `allPorts`
8668
8672
  # @return [Boolean]
8669
8673
  attr_accessor :all_ports
@@ -8819,27 +8823,35 @@ module Google
8819
8823
  attr_accessor :no_automate_dns_zone
8820
8824
  alias_method :no_automate_dns_zone?, :no_automate_dns_zone
8821
8825
 
8822
- # This field can be used only if: - Load balancing scheme is one of EXTERNAL,
8823
- # INTERNAL_SELF_MANAGED or INTERNAL_MANAGED - IPProtocol is one of TCP, UDP, or
8824
- # SCTP. Packets addressed to ports in the specified range will be forwarded to
8825
- # target or backend_service. You can only use one of ports, port_range, or
8826
- # allPorts. The three are mutually exclusive. Forwarding rules with the same [
8827
- # IPAddress, IPProtocol] pair must have disjoint ports. Some types of forwarding
8828
- # target have constraints on the acceptable ports. For more information, see [
8829
- # Port specifications](https://cloud.google.com/load-balancing/docs/forwarding-
8830
- # 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+)?
8831
8839
  # Corresponds to the JSON property `portRange`
8832
8840
  # @return [String]
8833
8841
  attr_accessor :port_range
8834
8842
 
8835
- # The ports field is only supported when the forwarding rule references a
8836
- # backend_service directly. Only packets addressed to the [specified list of
8837
- # ports]((https://cloud.google.com/load-balancing/docs/forwarding-rule-concepts#
8838
- # port_specifications)) are forwarded to backends. You can only use one of ports
8839
- # and port_range, or allPorts. The three are mutually exclusive. You can specify
8840
- # a list of up to five ports, which can be non-contiguous. Forwarding rules with
8841
- # the same [IPAddress, IPProtocol] pair must have disjoint ports. @pattern: \\d+(
8842
- # ?:-\\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+)?
8843
8855
  # Corresponds to the JSON property `ports`
8844
8856
  # @return [Array<String>]
8845
8857
  attr_accessor :ports
@@ -10304,13 +10316,18 @@ module Google
10304
10316
  attr_accessor :fingerprint
10305
10317
 
10306
10318
  # A list of URLs to the HealthCheck resources. Must have at least one
10307
- # 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
10308
10321
  # portSpecification=USE_SERVING_PORT or portSpecification=USE_FIXED_PORT. For
10309
10322
  # regional HealthCheckService, the HealthCheck must be regional and in the same
10310
10323
  # region. For global HealthCheckService, HealthCheck must be global. Mix of
10311
10324
  # regional and global HealthChecks is not supported. Multiple regional
10312
10325
  # HealthChecks must belong to the same region. Regional HealthChecks must belong
10313
- # 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.
10314
10331
  # Corresponds to the JSON property `healthChecks`
10315
10332
  # @return [Array<String>]
10316
10333
  attr_accessor :health_checks
@@ -10320,7 +10337,8 @@ module Google
10320
10337
  # NO_AGGREGATION. An EndpointHealth message is returned for each pair in the
10321
10338
  # health check service. - AND. If any health check of an endpoint reports
10322
10339
  # UNHEALTHY, then UNHEALTHY is the HealthState of the endpoint. If all health
10323
- # 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.
10324
10342
  # Corresponds to the JSON property `healthStatusAggregationPolicy`
10325
10343
  # @return [String]
10326
10344
  attr_accessor :health_status_aggregation_policy
@@ -10349,7 +10367,8 @@ module Google
10349
10367
 
10350
10368
  # A list of URLs to the NetworkEndpointGroup resources. Must not have more than
10351
10369
  # 100. For regional HealthCheckService, NEGs must be in zones in the region of
10352
- # the HealthCheckService.
10370
+ # the HealthCheckService. For global HealthCheckServices, the
10371
+ # NetworkEndpointGroups must be global INTERNET_IP_PORT.
10353
10372
  # Corresponds to the JSON property `networkEndpointGroups`
10354
10373
  # @return [Array<String>]
10355
10374
  attr_accessor :network_endpoint_groups
@@ -17217,6 +17236,16 @@ module Google
17217
17236
  # @return [Array<Google::Apis::ComputeV1::InterconnectDiagnosticsArpEntry>]
17218
17237
  attr_accessor :arp_caches
17219
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
+
17220
17249
  # A list of InterconnectDiagnostics.LinkStatus objects, describing the status
17221
17250
  # for each link on the Interconnect.
17222
17251
  # Corresponds to the JSON property `links`
@@ -17235,6 +17264,8 @@ module Google
17235
17264
  # Update properties of this object
17236
17265
  def update!(**args)
17237
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)
17238
17269
  @links = args[:links] if args.key?(:links)
17239
17270
  @mac_address = args[:mac_address] if args.key?(:mac_address)
17240
17271
  end
@@ -17358,6 +17389,11 @@ module Google
17358
17389
  # @return [Google::Apis::ComputeV1::InterconnectDiagnosticsLinkLacpStatus]
17359
17390
  attr_accessor :lacp_status
17360
17391
 
17392
+ # The operational status of the link.
17393
+ # Corresponds to the JSON property `operationalStatus`
17394
+ # @return [String]
17395
+ attr_accessor :operational_status
17396
+
17361
17397
  # An InterconnectDiagnostics.LinkOpticalPower object, describing the current
17362
17398
  # value and status of the received light level.
17363
17399
  # Corresponds to the JSON property `receivingOpticalPower`
@@ -17380,6 +17416,7 @@ module Google
17380
17416
  @circuit_id = args[:circuit_id] if args.key?(:circuit_id)
17381
17417
  @google_demarc = args[:google_demarc] if args.key?(:google_demarc)
17382
17418
  @lacp_status = args[:lacp_status] if args.key?(:lacp_status)
17419
+ @operational_status = args[:operational_status] if args.key?(:operational_status)
17383
17420
  @receiving_optical_power = args[:receiving_optical_power] if args.key?(:receiving_optical_power)
17384
17421
  @transmitting_optical_power = args[:transmitting_optical_power] if args.key?(:transmitting_optical_power)
17385
17422
  end
@@ -19843,6 +19880,496 @@ module Google
19843
19880
  end
19844
19881
  end
19845
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
+
19846
20373
  # Represents a Google Cloud Armor network edge security service resource.
19847
20374
  class NetworkEdgeSecurityService
19848
20375
  include Google::Apis::Core::Hashable
@@ -25518,6 +26045,11 @@ module Google
25518
26045
  # @return [Google::Apis::ComputeV1::UsageExportLocation]
25519
26046
  attr_accessor :usage_export_location
25520
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
+
25521
26053
  # [Output Only] The role this project has in a shared VPC configuration.
25522
26054
  # Currently, only projects with the host role, which is specified by the value
25523
26055
  # HOST, are differentiated.
@@ -25543,6 +26075,7 @@ module Google
25543
26075
  @quotas = args[:quotas] if args.key?(:quotas)
25544
26076
  @self_link = args[:self_link] if args.key?(:self_link)
25545
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)
25546
26079
  @xpn_project_status = args[:xpn_project_status] if args.key?(:xpn_project_status)
25547
26080
  end
25548
26081
  end
@@ -28156,6 +28689,13 @@ module Google
28156
28689
  # @return [String]
28157
28690
  attr_accessor :name
28158
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
+
28159
28699
  # [Output Only] Reserved for future use.
28160
28700
  # Corresponds to the JSON property `satisfiesPzs`
28161
28701
  # @return [Boolean]
@@ -28209,6 +28749,7 @@ module Google
28209
28749
  @id = args[:id] if args.key?(:id)
28210
28750
  @kind = args[:kind] if args.key?(:kind)
28211
28751
  @name = args[:name] if args.key?(:name)
28752
+ @resource_policies = args[:resource_policies] if args.key?(:resource_policies)
28212
28753
  @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
28213
28754
  @self_link = args[:self_link] if args.key?(:self_link)
28214
28755
  @share_settings = args[:share_settings] if args.key?(:share_settings)
@@ -28629,8 +29170,8 @@ module Google
28629
29170
  # @return [Fixnum]
28630
29171
  attr_accessor :amount
28631
29172
 
28632
- # Type of resource for which this commitment applies. Possible values are VCPU
28633
- # and MEMORY
29173
+ # Type of resource for which this commitment applies. Possible values are VCPU,
29174
+ # MEMORY, LOCAL_SSD, and ACCELERATOR.
28634
29175
  # Corresponds to the JSON property `type`
28635
29176
  # @return [String]
28636
29177
  attr_accessor :type
@@ -33323,6 +33864,11 @@ module Google
33323
33864
  # @return [Fixnum]
33324
33865
  attr_accessor :connection_limit
33325
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
+
33326
33872
  # The project id or number for the project to set the limit for.
33327
33873
  # Corresponds to the JSON property `projectIdOrNum`
33328
33874
  # @return [String]
@@ -33335,6 +33881,7 @@ module Google
33335
33881
  # Update properties of this object
33336
33882
  def update!(**args)
33337
33883
  @connection_limit = args[:connection_limit] if args.key?(:connection_limit)
33884
+ @network_url = args[:network_url] if args.key?(:network_url)
33338
33885
  @project_id_or_num = args[:project_id_or_num] if args.key?(:project_id_or_num)
33339
33886
  end
33340
33887
  end